Commit Graph

323 Commits

Author SHA1 Message Date
Bartosz Dunajski 2e97aeccfd Revert TSP changes
This commit reverts:
a1d2bdc76666059653c79fe39a26113ce47c632a,
71a115129c1698ff15305fd0ea3828cba861be47,
e1a9087a466bfba54d84a64247e6596092034a91.

Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-06-21 12:44:12 +02:00
Filip Hazubski 99c0f02e12 Update StateComputeModeProperties
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-06-18 12:25:16 +02:00
Mateusz Jablonski e027178c37 Correct semaphore wait programming for cross device dependencies
when event is blocked by blocked user event then program semaphore wait during
unblocking user event

Related-To: NEO-3691

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-06-18 09:06:53 +02:00
Zbigniew Zdanowicz 0e5ca243e2 Add notify enable parameter to post sync commands
Related-To: NEO-5845

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-06-17 19:22:51 +02:00
Zbigniew Zdanowicz ad18099ed8 Enable KMD fallback for User Fence wait call
Related-To: NEO-5845

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-06-17 12:12:43 +02:00
Bartosz Dunajski 5af793ddc6 Remove TSP implicit dependency tracking logic
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-06-16 08:47:00 +02:00
Maciej Plewka e1bcad51f0 Fix makeNonResident for csr residency allocations
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-06-10 20:57:15 +02:00
Filip Hazubski 573d01f085 Update StreamProperties
Update ThreadArbitrationPolicy enum.
Remove adjustThreadArbitionPolicy from CommandStreamReceiverHw.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-06-08 10:05:05 +02:00
Filip Hazubski b25c0e4fc0 Update StreamProperties
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-06-08 08:57:55 +02:00
Dominik Dabek 39f0387ecc Move tbx stream, tbx csr to shared
Related-To: NEO-5161

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>i
2021-05-31 14:35:32 +02:00
Jaroslaw Chodor 3b4ec5b3fa Refactor of global factories
Signed-off-by: Jaroslaw Chodor <jaroslaw.chodor@intel.com>
2021-05-28 19:09:24 +02:00
Filip Hazubski 7eb81e9d85 Unify StreamProperties structs
Introduce functions allowing to copy values from one struct to another,
while correctly setting values of isDirty field.

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-05-27 15:37:14 +02:00
Lukasz Jobczyk 79903d6fce Ensure tag address will be null before freeing tag allocation
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-05-27 13:50:29 +02:00
Lukasz Jobczyk 341e6bbc3a Fix flush small task task counts
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-05-26 10:17:36 +02:00
Mateusz Hoppe 0f32231fc8 Use correct INTERNAL heap base address for ISA in system memory
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-05-25 10:22:28 +02:00
Filip Hazubski d693d24f27 Add StateComputeModeProperties to StreamProperties
Related-To: NEO-4940, NEO-4574


Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-05-21 16:39:39 +02:00
Zbigniew Zdanowicz a692f1ecc5 Move flag setup after initialization
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-05-20 13:39:18 +02:00
Maciej Plewka 159404f38e Revert "Program border color once per dsh"
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-05-18 12:26:58 +02:00
lgotszal 3bd4bca911 Copyright header update
Dates corrected in copyright headers to reflect original publication date
(2018 for OpenCL, 2020 for Level Zero).

Signed-off-by: lgotszal <lukasz.gotszald@intel.com>
2021-05-17 20:38:19 +02:00
Bartosz Dunajski 9c5dee54dc Fix root device residency for TagNode
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-05-17 14:51:23 +02:00
Bartosz Dunajski a6c6290c09 Move TSP creation to HwHelper
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-05-14 15:08:53 +02:00
Bartosz Dunajski e53202e96b TagAllocator to accept multiple root devices
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-05-14 09:27:16 +02:00
Vinod Tipparaju ed9290e650 Fix to make globalFenceAllocation resident before submission via flushSmallTask
Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2021-05-13 18:47:37 +02:00
Lukasz Jobczyk 6b1d3e275a Null tag address before freeing multi tag allocation
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-05-12 09:08:16 +02:00
Zbigniew Zdanowicz 544890c066 Change default placement of preemption allocation
Related-To: NEO-5800

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-05-11 15:26:24 +02:00
Lukasz Jobczyk 8e1e213bcf Disable GEM_WAIT when new residency model available
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-05-10 14:59:21 +02:00
Vinod Tipparaju f879c05bda Fix to flush HW context during L0 non-kernel operation via flushTask
Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2021-05-07 21:25:53 +02:00
Maciej Plewka 171a614f18 Fix reset border color offset when replacing heap buffer
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-05-05 13:38:02 +02:00
Vinod Tipparaju 9799f15286 Fix to program HW context once during L0 non-kernel operation via flushTask
This resolves regression on Simulation, L0 CTS using events & immediate cmdlist

Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2021-04-30 13:34:59 +02:00
Filip Hazubski 3a2281bf77 Program additional VFE_STATE instructions when needed
Additonal VFE_STATEs may be programmed when appending kernels to a
command list and when the command list is executed.

Related-To: NEO-4940, NEO-4574

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-04-28 16:07:55 +02:00
Bartosz Dunajski 9b12dc4390 Debug flag to override TimestampPacket size
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-04-28 13:27:27 +02:00
Zbigniew Zdanowicz 902cce597a Add new functionality to load SIP from file
Related-To: NEO-5718

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-04-23 13:48:26 +02:00
Zbigniew Zdanowicz 8da0838ba4 Add debug key to override CSR allocation size
Related-To: NEO-5718

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-04-20 14:40:59 +02:00
Vinod Tipparaju b5d2d7fc52 Use flushTask() for non-kernel opertaions. Enabled for following APIs
appendSignalEvent, appendWaitOnEvent, appendResetEvent and appendBarrier
except for TimeStamp events.

Related-To: LOCI-1987

Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2021-04-19 22:24:47 +02:00
Maciej Dziuban 5318ff1872 Defer OsContext initialization
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5610
2021-04-19 11:54:34 +02:00
Krzysztof Gibala b01b8ba5ac Use MI_SEMAPHORE_WAIT command for event synchronization
Related-To: NEO-5508
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-04-19 11:34:52 +02:00
Filip Hazubski 77b39ea3df Introduce StreamProperties
Split programVfeState function.

Related-To: NEO-4940, NEO-4574


Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-04-15 16:00:44 +02:00
Filip Hazubski 31b7fcf653 Update programVFEState function
Related-To: NEO-4940, NEO-4574

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-04-07 09:45:13 +02:00
Bartosz Dunajski ce9337290c Move profiling mmio read programming to new method
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-04-01 16:42:23 +02:00
Mateusz Jablonski 298df1582b Add flag to determine if csr can allocate in internal heaps
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-04-01 15:37:41 +02:00
Bartosz Dunajski da9d039dd6 New method to return TimestampPacket alignment
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-04-01 11:55:11 +02:00
Bartosz Dunajski 47c2a3011a Remove not used MemorySynchronizationCommands argument
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-03-31 17:58:43 +02:00
Igor Venevtsev bd32518d31 Add extra parameters to EncodeComputeMode::adjustComputeMode() method
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2021-03-31 16:51:55 +02:00
Bartosz Dunajski b6e3817f31 Dont program dcFlush when not allowed
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-03-31 16:13:19 +02:00
Zbigniew Zdanowicz b9ed7de40a Parametrize wait operation
Related-To: NEO-4759


Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-03-31 15:12:59 +02:00
Mateusz Jablonski 8215395401 Simplify Context method
return if context has multiple sub devices related to a given root device

Related-To: NEO-3691
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-30 10:22:15 +02:00
Bartosz Dunajski 4a2a14fd41 Refactor getTimestampPacketAllocator method
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-03-29 18:18:56 +02:00
Igor Venevtsev 21aa14e497 Reprogram atomics in SBA if context has several devices
Related-To: NEO-5459

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2021-03-29 12:42:31 +02:00
Bartosz Dunajski 85f93cd51b Remove redundant reset calls
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-03-27 11:42:49 +01:00
Bartosz Dunajski 5a50ad098c Refactor TagAllocator
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-03-26 15:16:56 +01:00
Igor Venevtsev cb4db7767e Do not reprogram SBA if CSR is not multi os context capable
Related-To: NEO-5459

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2021-03-26 13:49:04 +01:00
Mateusz Jablonski 7098e9c5f2 Store single KernelInfo in Kernel
remove root device index from Kernel's methods

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-03-22 21:30:03 +01:00
Bartosz Dunajski 3dc3ad36f8 Refactor TimestampPacket class
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-03-22 17:42:41 +01:00
Lukasz Jobczyk 129357410c Update task count while waiting
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-03-17 15:09:25 +01:00
Maciej Dziuban eb34c42e02 Enable static partitioning by default
Related-To: NEO-5546
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-03-16 12:48:11 +01:00
Igor Venevtsev 52e118fe49 Add extra parameters to Buffer::setSurfaceState() method
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2021-03-16 10:17:59 +01:00
Krzysztof Gibala 19355ca088 createTagsMultiAllocation function cleanup
Related-To: NEO-5508
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-03-11 15:11:06 +01:00
Krzysztof Gibala 4abe4a96b8 Add multiGraphicsAllocation to CSR
Related-To: NEO-5508
Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-03-10 12:42:01 +01:00
Maciej Dziuban c361570fab Make work partition allocation resident
Related-To: NEO-5546

Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-03-08 10:32:42 +01:00
Maciej Dziuban b11f367db4 Add missing getter methods
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-02-25 12:02:05 +01:00
Mateusz Jablonski df1e7792c6 Restore GPU breakpoint improvement
handle user confirmations in gpu modes: always, only before, only after
handle multiple confirmations when pausing on each enqueue
move tests to mt_tests


Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-02-17 22:56:31 +01:00
Maciej Dziuban f7d105f2e2 Create work partition allocation
Related-To: NEO-5546
Resolves: NEO-5561
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2021-02-17 15:28:42 +01:00
Lukasz Jobczyk 1844875b9d Disable timeout while waiting when direct submission active
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-02-17 14:46:19 +01:00
Mateusz Jablonski 1494205e28 Revert "Improve GPU breakpoint support"
This reverts commit a6d898a026.

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-02-12 14:11:50 +01:00
Lukasz Jobczyk 7c99739b89 Check if direct submission enable in OsContext
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-02-11 09:05:50 +01:00
Vinod Tipparaju bb138e87c1 Fix to optimize SBA dispatch during submissions.
Move the SBA dirty flag inside csr so it is common across command queues.

Related-To: LOCI-1982

Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2021-02-08 12:13:09 +01:00
Mateusz Jablonski a6d898a026 Improve GPU breakpoint support
handle user confirmations in gpu modes: always, only before, only after
handle multiple confirmations when pausing on each enqueue

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-02-06 16:31:05 +01:00
Igor Venevtsev 3df6110a17 Add extra parameters to setArgStateful()
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2021-02-05 12:24:27 +01:00
Mateusz Hoppe 0ca1cdc565 Add State Sip end WA
Related-To: NEO-5479

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2021-02-01 19:15:57 +01:00
Igor Venevtsev bb72beac6b Add extra parameters to programStateBaseAddress()
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2021-01-28 16:03:17 +01:00
Vinod Tipparaju 494a59c7df Fix to dispatch MEDIA_VFE_STATE with updated scratchSpacePointer & Size
Minor fix to reset scratch space size and indirect params during cmdList reset

Signed-off-by: Vinod Tipparaju <vinod.tipparaju@intel.com>
2021-01-21 14:29:34 +01:00
Slawomir Milczarek d19d8e0829 Use last compression memory state for non-applicable cases
Related-To: NEO-5107

Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2021-01-21 11:09:17 +01:00
Maciej Plewka 24a88d22aa Fix scratch in bindless mode
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-01-18 15:46:18 +01:00
Maciej Plewka 3ca77a6cbe Program sba for global bindless heaps
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-01-04 14:23:47 +01:00
Slawomir Milczarek 6986d5de0b Add helper functions for memory compression to CSR
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2020-12-21 17:43:03 +01:00
Daria Hinz 1ef9a1c35f Add extended functionality for timestamps at Event
Related-To: NEO-4584
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2020-12-17 10:53:16 +01:00
Krystian Chmielewski 4948c39d39 Remove executionEnvironment from KernelInfo
Related-To: NEO-3739
2020-12-16 14:56:57 +01:00
Pawel Wilma d94e2bf149 Refactoring of per-DSS backed buffer programming
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2020-12-14 22:22:47 +01:00
Pawel Wilma 9bd0c69913 Add ClearColor allocation support for blitter
Related-To: NEO-5175

Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2020-12-14 18:22:05 +01:00
Maciej Plewka 830bcd6987 Scratch using bindless heaps
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-12-11 09:38:44 +01:00
Mateusz Jablonski c8d1e082dd Update getKernelInfo method
add root device index parameter to return proper kernel info

Related-To: NEO-5001
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-12-08 09:14:44 +01:00
Jobczyk, Lukasz 343fd602fa Add method to submit kernel on single subdevice
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2020-12-01 22:15:05 +01:00
Igor Venevtsev cff80e38b8 Do not program MiFlushDw command as a timestamp operation for blitter
Resolves: NEO-4906

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2020-11-26 13:26:13 +01:00
Sebastian Luzynski 556b6cd457 Add concurrent kernel execution type
Related-To: NEO-4940
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2020-11-20 16:12:42 +01:00
Mateusz Hoppe 0f42ef1ed7 Differentiate between users ISA and internal ISA allocation
Related-To: NEO-5240

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-11-16 13:16:30 +01:00
Mateusz Hoppe a2d2bd629a Fix release build issue with debugPauseStateAddress
Restore volatile for debugPauseStateAddress csr member

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-11-13 15:51:00 +01:00
Mateusz Hoppe e4c70fb6d3 Fix threading issue with debugPauseState
Related-To: NEO-5277

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-11-12 23:24:33 +01:00
Michal Mrozek ad747a5cbf Make comment more verbose.
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-11-05 13:03:41 +01:00
Zbigniew Zdanowicz c678f3d9b0 Make DeviceBitfield argument constant
Related-To: NEO-5225

Change-Id: I14a5a4cc3394cd2b58a74bda183c734a0d17ac25
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-10-30 13:45:32 +01:00
Mateusz Hoppe ac3b65ba82 Refactor isDebuggerActive
- use it for SourceLevelDebugger only

Change-Id: I130219a13d6baa1f72c5b35295afd6efa4bf37fa
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-10-29 12:21:18 +01:00
Zbigniew Zdanowicz 30a67618f8 Add DeviceBitfield argument to CSR constructor
Related-To: NEO-5225

Change-Id: I8cf0aef3ec16314cfb1a787852b6c20ce0f65955
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-10-28 17:10:31 +01:00
Zbigniew Zdanowicz 27c281a044 Fix start and dispatch blitter commands in direct mode
Related-To: NEO-5010

Change-Id: I3d03ef39325adb2beba26a989906381f5eccc4ff
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-10-20 14:12:22 +02:00
Michal Mrozek 7e45c396a2 Fix profiling in copy engine scenarios.
- We need to wait till completion prior to obtaining timestamps.

Change-Id: I1320c9d44e8c1a2c2125cbd332296de1df28491b
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-10-20 10:25:40 +02:00
Pawel Wilma 7f8b0c5b3f Global l3 invaldate for blitter engine
Related-To: NEO-5175

Change-Id: I88b3c9333398c91a7dd799f5e52cfd9182316960
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2020-10-19 16:40:03 +02:00
Lukasz Jobczyk c2c2bc3f82 Reset tag allocators in CSR destructor
Change-Id: I178ece2b5d79c2bd38b8ba5b1c715bd3730b715e
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-10-19 11:57:25 +02:00
Lukasz Jobczyk 574cd634b9 Refactor bo pinning
Change-Id: I451fa5225096829ea7131d159eb59f906817b2cd
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-10-16 12:55:57 +02:00
Michal Mrozek 324150dd37 Do not track Kernel ISA as new resources.
Change-Id: Ib112952071b76ba471d046c13c556422c415ba96
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-10-13 13:34:35 +02:00
Kamil Diedrich 9e463ab45f Track all ssh in cmdList
Change-Id: Ibffb7b7b406e5e17d4ffb971fd0789557c879367
2020-10-12 12:12:12 +02:00
Maciej Dziuban 8fcd51c2c8 Do not obtain command stream if it will not be needed
Change-Id: Id7fa1c6b78e71a085084f8fcb66a7b8e873ad2bc
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
Related-To: NEO-5120
2020-10-08 12:24:03 +02:00
Kamil Diedrich 67e2853857 Add missing mockable_virtual in code
Change-Id: Ia8d041b68163a99cf4e9e399e825d39798425544
2020-10-07 14:25:04 +02:00
Kamil Diedrich ce7e293a99 Extend scratch implementation
Change-Id: I1bbc0c9be287b1411276b1e61a7ec1c8db238f3f
2020-10-07 11:39:04 +02:00
Jaime Arteaga 9f9bf38d64 Copy user buffers when not accepted by Kernel
When performing copy operations to or from buffers allocated by the
user, it could happen that the buffer address is not accepted by
kernel, even though the buffer is valid. In those ocassions, then
allocate a new graphics allocation and copy the user buffer.

Change-Id: I6b1b6f2ef5fea0acf32c868bc87eafe8746f9a79
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-10-02 10:03:18 +02:00
Sebastian Luzynski 8093400baf Change default state of CSR.
Change-Id: I1124ff538de37736996d4cae3e827950b1022a8f
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2020-09-29 12:57:32 +02:00
Bartosz Dunajski 1b0983d7db Debug logs: print tag allocation address.
Change-Id: Ia5d8cf16fa42f7b1f567e4ac79fae61bbcb6f13a
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-28 16:38:46 +02:00
Bartosz Dunajski 55bd544402 Lazy evaluate arguments of printDebugStrings(...) function
Change-Id: Ie44e109fd9235c5df32fb90b9e6fc6058e558a99
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-25 18:38:58 +02:00
Sebastian Luzynski d24850cff3 Alter API with additional kernel exec info.
Related-To: NEO-4875
Change-Id: I10a5e3bfc32be520c3554c992dc36591fc1ff599
Signed-off-by: Sebastian Luzynski <sebastian.jozef.luzynski@intel.com>
2020-09-25 13:00:24 +02:00
Bartosz Dunajski f92f01e190 Enhance GPU breakpoint capabilities
Change-Id: Id28afb7ab584eeb5063c7311fed41d7a31edbec7
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-24 16:03:19 +02:00
Bartosz Dunajski 2a69b1ed78 Select correct heap base address for ISA
Change-Id: I400f965faa4615519729756daa78350a46c46ff2
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-09-23 14:21:22 +02:00
Lukasz Jobczyk 1d4568e548 Set bb end pointer correctly in batched submission
Related-To: NEO-5112

Change-Id: Ideff314e4aee501a02f07142b99307b8d6c08fa1
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-09-23 10:43:00 +02:00
Zbigniew Zdanowicz 3b6f9b7cb6 Add implicit flush for new resources and idling gpu
Related-To: NEO-5100

Change-Id: I57fdb8eecd88124c4c9171014950554c35dbecd1
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-09-22 21:50:02 +02:00
Michal Mrozek 9981cdd9e2 Add new debug key for implicit flushes
Change-Id: Ifbf8903c383d16f62754655a5bc949f27d290c42
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-09-17 10:41:32 +02:00
Jim Snow 9f21418c4f Disable gemCloseWorker for internal DrmCommandStreamReceivers
Change-Id: I71abdcb417342110ddc64cc9b1dacecc24c78aac
Signed-off-by: Jim Snow <jim.m.snow@intel.com>
2020-09-09 12:31:24 +02:00
Zbigniew Zdanowicz e910e28819 Add start override to Direct Submission debug flags
Related-To: NEO-5010

Change-Id: I6d690d3f1aef9ad377ad44db0f3be753ad831f63
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-09-07 21:21:31 +02:00
Zbigniew Zdanowicz 1afc985577 Add blitter support to direct submission
Related-To: NEO-5010

Change-Id: I084cec54a233e920b2868d2a61c60d1d87d0a91e
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-08-31 20:23:02 +02:00
Kamil Kopryk e066e13d69 Optimize copying rect buffers by blitter
Change-Id: I847bf2c31cd3c080c85a488bf6f2a92671351f3f
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-4864
2020-08-26 10:00:39 +02:00
Bartosz Dunajski 3012388815 Revert "Optimize copying buffers by blitter"
This reverts commit b09872f595.

Change-Id: I571de1024416b2e1cbf47aadbfe6e15566dd8dd9
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-08-21 16:24:13 +02:00
Bartosz Dunajski c672c2cd91 Dont reload GRF config if not applicable
Change-Id: I37388b3d43251d930136fde154b7861072a5abec
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-08-21 14:29:13 +02:00
Kamil Kopryk b09872f595 Optimize copying buffers by blitter
Change-Id: Ib2ef0350beac25b9352db7a2e26863b6079cc667
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-4864
2020-08-21 11:59:01 +02:00
Bartosz Dunajski b3fea30b11 Fix debug message
Change-Id: Ia80264e3e5447d250ca18be4adf80a80c349701d
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-08-21 10:28:51 +02:00
Bartosz Dunajski 6fcb9583be Dont reload L3CachingSettings if not applicable
Change-Id: I352e3781822894680c32f3274f22712ac00d74bc
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-08-20 12:11:00 +02:00
Pawel Cieslak fb821f21f5 Cmake format script
Related-To: NEO-1157

Change-Id: Ie1b907e838cfb9ad0d75cc8971d415f7c77103c9
Signed-off-by: Pawel Cieslak <pawel.cieslak@intel.com>
2020-08-19 16:36:30 +02:00
Bartosz Dunajski 8c64d65867 Print waiting for completion status
Change-Id: Id1f6894149079f6e3f36336971fc2e44f0c82d9b
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-08-17 13:36:42 +02:00
Jaime Arteaga 398ad44404 Correct values in queue synchronize
Change-Id: I645d1ae50d6e17d2d330ba9d21ef1a8cf7b955b8
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-08-06 00:26:50 +02:00
Artur Harasimiuk fa6b181120 do not use absolute path when including hw_cmds.h
Change-Id: I59a825f25d6572f7dfb0c80211a6e3652e2827c5
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2020-08-04 13:27:29 +02:00
Filip Hazubski 76328b8247 Always initialize Kernel::threadArbitrationPolicy
Resolves: NEO-4824

Change-Id: I2ba24bec1a4cc2d1573ca7283a68ea0d94c73ff0
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-08-04 13:07:39 +02:00
Mateusz Hoppe c3a128f9f4 Refactor StateBaseAddressHelper
Change-Id: I5071a1a4a067b8f0e880a4f7e1d65e79eeb77c47
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-08-04 11:09:41 +02:00
Vinod Tipparaju bf57f2d696 Lock csr inside executeCommandLists() to make submissions thread safe
Change-Id: I9326ee5bb835f01015668e66d2582df9ed02d66f
2020-08-03 21:59:15 +02:00
Kamil Kopryk 9a05ad26b0 Revert "Optimize copying buffers by blitter"
This reverts commit 7dfe4be225.

Change-Id: Ifc59102a6b30ce1baf3ae86bda629996c878b6ce
2020-07-30 20:12:35 +02:00
Kamil Kopryk 7dfe4be225 Optimize copying buffers by blitter
Change-Id: I27beae3e81a32adb4b26a5d75e2e8ff8e34dad81
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-4864
2020-07-30 10:59:07 +02:00
Lukasz Jobczyk 21e16ff2c5 Add initial implementation of Linux direct submission
Change-Id: I9ee0434897bc3e980b240a8373190f0803e6c102
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-07-30 10:45:58 +02:00
Mateusz Hoppe ca39301ed8 Reserve SSH space for bindless mode
Related-To: NEO-4767

Change-Id: Id7876ea5a5a4fc12ab0b3192548b006fc1eea75c
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-07-17 13:26:28 +02:00
Sebastian Luzynski 49a7fb4b19 Add flag to emit pipe control prior to walker.
Change-Id: Ief410664b09d758394744ebdf011923556864035
2020-07-15 10:33:20 +02:00
Andrzej Swierczynski 77f50e5444 Always pass device bitfield to AllocationProperties in constructor
Related-To: NEO-4722

Change-Id: Ie2475bf92a3189bcb9073bec5bf5af709e597c5d
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-07-13 09:00:10 +02:00
Maciej Plewka 04ff7218e3 Use one blit command for copy region
Change-Id: I8a335b3ec58bf4b767d93435691acb036b5b2ce7
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-07-07 12:22:40 +02:00
Bartosz Dunajski 6dd07bd3bc Use correct Heap32 index for local memory allocations
Change-Id: I068f712ab2b05ee3d5a9716b21de685a7fee3a02
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-07-01 17:31:43 +02:00
Filip Hazubski 4076d3e294 Update BlitCommandsHelper
Add getMaxBlitWidthOverride and getMaxBlitHeightOverride functions.

Change-Id: Idf23725f5d3336118979c2b5731b023d934374d6
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-07-01 16:27:57 +02:00
Katarzyna Cencelewska 2807dfeae8 Add posibility to modify semaphore delay between waits
Change-Id: Ia44c8ea67ef0bd16436c708d83bda15b4bb77b6e
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2020-06-25 13:16:05 +02:00
Mateusz Hoppe 15b91c4d45 Program debug commands for DebuggerL0
Related-To: NEO-4547, NEO-4549

Change-Id: Idf9139190a85aae7ec52de7a1899a46123809e63
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-24 15:48:38 +02:00
Bartosz Dunajski 2500357ad5 Debug flag to force implicit flush
Change-Id: I40f1ecb323a61242cbf230e02ba14fce510dbabf
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-06-19 11:34:37 +02:00
Bartosz Dunajski 39828fb71d Add new debug variable to pause on blit copy
Change-Id: I150eea40fa77b80387eda33fd6afd1582b517b5c
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-06-17 17:23:27 +02:00
Maciej Dziuban 7ef2e4304c Rename levelNotReady to notReady
Change-Id: Id482c6edd36d1bdd63558aa35f13dbb57e0efbad
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2020-06-17 15:47:00 +02:00
Bartosz Dunajski d42f872d07 Change DebugBreak thread implementation to NEO::Thread
Change-Id: Icbb659cf7c86bbd74e6375266d9ec2ee84278597
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-06-17 13:10:14 +02:00
Lukasz Jobczyk 02f2f22045 Add profiling support for blitter
Resolves: NEO-4121

Change-Id: I29dfcf07d48100c578cbc432fee4d87dfa18e8f4
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-05-29 13:43:14 +02:00
Mateusz Hoppe f4ef256900 Program hardware context in L0 command queue
Related-To: NEO-4577

Change-Id: I204a5e86ad3b23b71071bbbfd58c23a408f6865f
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-05-29 13:07:38 +02:00
Mateusz Hoppe 23ad10731b Refactor hardware context programming
- expose programHardwareContext in CSR

Change-Id: I05caa352e3b7268c3e07edd6043316ecbb24f815
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-05-28 10:34:24 +02:00
Michal Mrozek ef5f83d0a0 Increase the preferred tag pool size.
Change-Id: I171d91571aec787f36a7a9d85b12aa8cf341ec7a
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2020-05-26 18:04:02 +02:00
Piotr Zdunowski 5a2bff7706 Debug functionality to pause before and after specified GPGPU_WALKER.
Resolves: NEO-3961

Change-Id: If797858c0f6a9758f9c1bc5472841dcfff93884b
Signed-off-by: Piotr Zdunowski <piotr.zdunowski@intel.com>
2020-05-20 11:54:54 +02:00
Bartosz Dunajski e36d95e039 Add helpers to avoid offsetof usage
Change-Id: I8f0ec5240b2ec2bd99b712271d87b88ffed2c5b3
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-05-19 17:45:53 +02:00
Bartosz Dunajski cb09e50e61 Fix CPU dependency handling for TimestampPacket
Change-Id: Ia75f4ea7eea10ca84ffa4b3d92d98942804be8d0
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-05-14 17:08:25 +02:00
Mateusz Hoppe ac426b5108 TBX csr downloads allocations on queryStatus calls
Change-Id: I57fd98f4227b6d03430db6b96cfd21dd726919a3
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-05-13 16:28:19 +02:00
Andrzej Swierczynski 29c657046d Print device and engine info
Related-To: NEO-4640

Change-Id: I244af3d3407479d17aab603c9c5c3dc60888f7e5
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-05-08 09:17:41 +02:00
Mateusz Hoppe ef4fae3903 Enable TBX mode in level zero
RelatedTo: NEO-4644

Change-Id: I76913d6b7c7d978a5a90a7a574778c67283497c1
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-05-06 16:33:15 +02:00
Bartosz Dunajski 78d5704c51 Update TimestampPacket alignment
Change-Id: Iaf30c2cca8a32cc17b838d96366ebe25491afc42
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-05-06 15:00:04 +02:00
Zbigniew Zdanowicz 701542e046 Add debug flag to override kernel preemption level
Change-Id: I22a813c5ce1811317b0425d391f30b290fc03ec9
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-05-04 15:41:12 +02:00
Zbigniew Zdanowicz 1bb0134a6c Refactor LriHelper class
Related-To: NEO-4338

Change-Id: Ie6387ff5f35df569fe1d9492b35e2acbc93e0393
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-04-29 14:15:43 +02:00
Zbigniew Zdanowicz 048c90e3b1 Remove RMW access patterns from gfx memory
Related-To: NEO-4338

Change-Id: I8dcfca9a11f499fde44ca9754dec67fe5a5e3d46
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-04-28 15:26:22 +02:00
Zbigniew Zdanowicz b2210fa5bb Refactor MemorySynchronizationCommands class
Related-To: NEO-4338

Change-Id: Id0ae9c73293fd99f53fccc11a69ca14fa9a6d119
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-04-27 17:33:31 +02:00
Lukasz Jobczyk eabed40e3e Re-use temporary allocations
Resolves: NEO-4123

Change-Id: I44e9de4f1bf576adbbe8d69d1ec2c6ae1bbca35f
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-04-20 10:07:52 +02:00
Mateusz Jablonski 86a5946b7b Pass device bitfield to TagAllocator
Related-To: NEO-4484
Change-Id: I56602a15d18ff577a97d573eeda51e7866525aa7
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-04-17 10:41:18 +02:00
Mateusz Jablonski 0c404bc880 Pass device bitfield to allocation properties when creating mem obj
Related-To: NEO-4484
Change-Id: I961e9122591dc7293e37d5c1ca58cbcd649ee653
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-04-16 15:01:37 +02:00
Zbigniew Zdanowicz 5e98368dad Remove RMW access patterns from functions programming on gfx memory
Related-To: NEO-4338

Change-Id: I8fe555525f937e75c5439702b328c734af9af1f9
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-04-09 18:49:30 +02:00
Maciej Plewka 691a4ea823 Add blit copy implementation for L0
Change-Id: I327a4cf977e166cb648ee9f3a79374f7cefa7b1b
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-04-09 13:36:09 +02:00
Filip Hazubski d0527e1049 Rename memory_constants.h to constants.h
Change-Id: I05b5d20bac12935dc6625b94adc3a03c98c19b49
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-04-02 14:19:39 +02:00
Zbigniew Zdanowicz 49d3c39fae Refactor direct submission
Related-To: NEO-4338

Change-Id: Ic858a9324e5f892532d39c98a4029df9d2a64e46
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-03-27 12:43:05 +01:00
Maciej Plewka 5de8f3ac3d Unify setting compute mode
Change-Id: I8fd5a0cf1a121498efbbf1edb332920578d91598
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-03-26 16:08:29 +01:00
Lukasz Jobczyk 49d54cf45d Program selected commands on 3D pipeline
Related-To: NEO-4447

Change-Id: I6bf3d7edd9d8085c37995b75989b8d412a17bdd9
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2020-03-24 12:23:14 +01:00
Mateusz Jablonski bd3931a9fb Change signature of CommandStreamReceiver::expectMemory
return bool value

Change-Id: Ia3471199c5fc4449ce13f92705080a4db96f88dd
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-03-19 15:59:18 +01:00
Konstanty Misiak 7ada522fa2 Move CSR to shared [1/n]
Related-To: NEO-4344

Change-Id: I356b46bdfac7c943b95ee6dc41d3416bd880f9cb
Signed-off-by: Konstanty Misiak <konstanty.misiak@intel.com>
2020-03-10 12:41:34 +01:00
Bartosz Dunajski 91a5e98209 Request dcFlush for barrier with TimestampPacket write
Change-Id: Ieab115ba651b10d8da0998ec21f2c498ae0fe371
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-03-09 17:21:52 +01:00
Maciej Plewka 357fdc2e65 Move built ins to share directory
Change-Id: I740a349a0f15229cd356fffe996932029bf0f98b
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-02-24 15:46:44 +01:00
Mateusz Jablonski 9dbeeea18f Clang-format: restore sorting includes
Change-Id: I34eb993b562c77f56d8fbd51a02ee266c1f76678
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-24 10:22:30 +01:00
Mateusz Jablonski 7df9945ebe Add absolute include paths
Change-Id: I67a6919bbbff1d30c7d6cdb257b41c87bad51e7f
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-02-23 23:49:12 +01:00
kamdiedrich e072275ae6 Reorganization directory structure [3/n]
Change-Id: If3dfa3f6007f8810a6a1ae1a4f0c7da38544648d
2020-02-23 23:48:28 +01:00