Commit Graph

47 Commits

Author SHA1 Message Date
Mateusz Jablonski
54f65c0243 Move headers to core
- hw_info
- hw_cmds
- kmd_notify_properties
- completion_stamp
- bxml_generator_glue

Related-To: NEO-3982
Change-Id: I3ed3ef81f42596f381e60c19250f6eb1296d47a4
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-02 14:20:45 +01:00
Pawel Wilma
472a75912d Return error code from submit() to application.
Related-To: NEO-3741

Change-Id: I0e0ff6606eb6a8a77673949955c8e799689017b6
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-11-26 12:42:47 +01:00
Mateusz Jablonski
3e1b15c31d Move initialization of AubCenter to RootDeviceEnvironment
make RootDeviceEnvironments vector of unique_ptr

Related-To: NEO-3857

Change-Id: I23998502198307c8535cdd5c9c4af5223a5d69a5
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-11-19 11:30:16 +01:00
Zbigniew Zdanowicz
b31e25dbb6 Move PreemptionHelper class to core
Change-Id: I172c4beb8ea2576505d6192585d45cfa3d00da34
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2019-11-18 23:59:28 +01:00
Mateusz Jablonski
5a8f455a84 Remove csrsContainer from root device environment
improve mocking:
- add method to create RootDevice in Platform
- add method to create SubDevice in RootDevice
- add method to create CommandStreamReceiver in Device

Related-To: NEO-3691

Change-Id: Ie9fe3de260492604333c8ca93796bfbffae518c4
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-11-13 10:05:09 +01:00
Jobczyk, Lukasz
e784ba39fb [2/N] Make the execution environment adapter agnostic
-add rootDeviceId to the command stream receiver

Related-To: NEO-3857

Change-Id: I6c7f334ebe3d19cf0c58a4db65d013b7a8b7f982
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-10-29 17:15:01 +01:00
Mateusz Jablonski
d408b82a19 Move aub center and command stream receivers to root device environment
resize root device environments to 1 by default

Related-To: NEO-3691, NEO-3857

Change-Id: Idf3d61e84f8265f30381c18216632d0ffb2a16de
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-10-28 14:40:43 +01:00
Mateusz Jablonski
f7f420b066 Pass os context to ScratchSpaceController::setRequiredScratchSpace
Related-To: NEO-3691

Change-Id: I3c040b9dd8e31dc798d70c7d0b12e2a89d22fa80
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-09-16 17:56:03 +02:00
Filip Hazubski
552a1268eb Refactor blit buffer call
Resolves: NEO-3241

Change-Id: I726135ae55d1e0fcbacd80620e827ee5c7c0c8dc
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-08-09 16:43:40 +02:00
Milczarek, Slawomir
ee2e93c505 Add missing locks to functions operating on AUB file stream
Related-To: NEO-2747

Change-Id: I9efacbaf6d7894943f3abb6ebe2634ac34fc3d04
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-04-19 13:15:42 +02:00
Milczarek, Slawomir
17493426c1 AUB CSR with a capability to add AUB comment
Change-Id: Ia7e85468c3f1e937d34b67b0e279c013e8e3c190
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-04-01 14:14:58 +02:00
Maciej Plewka
9e52684f5b Change namespace from OCLRT to NEO
Change-Id: If965c79d70392db26597aea4c2f3b7ae2820fe96
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2019-03-26 15:48:19 +01:00
Jobczyk, Lukasz
9ecb3193af Reverse logic of creating Memory Manager - part 3
-Move a Device::getEnabled64kbPages method's logic
 to the Memory Manager constructor

Change-Id: Ide88898000e5817a79f9a6ad5dfc9d680bec0533
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-03-25 14:42:16 +01:00
Stefanowski, Adam
16aee8cc46 [2/n] Move Hardware Info to Execution Environment
- remove hwInfo from the csr functions where it was passed as a parameter,
now csr functions have access to hwInfo by Execution Environment

Change-Id: I756ae63d9728c9c963571147bab97f9e1c15797b
Signed-off-by: Adam Stefanowski <adam.stefanowski@intel.com>
2019-03-22 10:08:26 +01:00
Piotr Fusik
429487fad0 Add constructor parameter to select low priority context.
Change-Id: Ieb3fa008a2f1b54052e393516038c88f00944fa0
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-03-18 15:09:59 +01:00
Milczarek, Slawomir
49c428d1ff AUB allocation dumps with pollForCompletion
Change-Id: I610a56d7b8d1b6f1f0d6029ce6d2e62742885698
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-03-15 16:13:31 +01:00
Jobczyk, Lukasz
878fd43a1a Reverse logic of creating Memory Manager - part 1
-remove CSR::createMemoryManager method
-create MM from platform before creating devices

Change-Id: I0e7f091c53b0e60ae7101e82a305253af626330e
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-03-08 09:47:29 +01:00
Filip Hazubski
8b57d28116 clang-format: enable sorting includes
Include files are now grouped and sorted in following order:
1. Header file of the class the current file implements
2. Project files
3. Third party files
4. Standard library

Change-Id: If31af05652184169f7fee1d7ad08f1b2ed602cf0
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-02-27 11:50:07 +01:00
Milczarek, Slawomir
278bb83c56 Enable AUB sub-capture in AubStream captures (1/n)
Change-Id: I6bd0605d06cf4dc3937e2dbeba7ed7037ae91476
2019-02-21 22:40:40 +01:00
Dunajski, Bartosz
64fbfb21bf Improve iterating over existing CommandStreamReceivers
Change-Id: I12a10852d43c625ec5521ae91918fcb12e1a6aec
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-02-19 11:48:56 +01:00
Jablonski, Mateusz
05d02a6fe7 Change DevicesBitfield type to struct
Change-Id: I7a005b07737cdd21efc174a2ee2be0f6b7f9068d
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com>
2019-02-18 13:57:50 +01:00
Dunajski, Bartosz
958d931cd9 Allow to create HardwareContextController for multiple Devices
Change-Id: Ib066c937809536196182ca87359c487570cc2e89
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-02-14 16:00:00 +01:00
Jablonski, Mateusz
db8c2bc57e Unify write memory in simulated csr when aub manager is available
Change-Id: I28d0496b1b1fb973af4869e5626082142b5818dd
Signed-off-by: Jablonski, Mateusz <mateusz.jablonski@intel.com>
2019-02-12 14:43:26 +01:00
Maciej Dziuban
ea8aa29e12 Change pollForCompletion() insertion locations
Poll is done on:
- Aub CSR destruction
- expectMemory
- blocking calls

Poll is not done on flush

Change-Id: I1a776a932cb608c01f0de249e7cef26b00147f31
Signed-off-by: Maciej Dziuban <maciej.dziuban@intel.com>
2019-02-05 14:33:42 +01:00
Dunajski, Bartosz
783f408f9f Dont pass EngineType or Index as parameter in Aub/Tbx CSR
Change-Id: I4583a09a9fa5dd5b0508132c86156c91aaf24c28
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-01-31 10:30:05 +01:00
Dunajski, Bartosz
c878590162 Remove EngineInstance parameter from pollForCompletion call
Change-Id: I07652db2de656032cdb3452239b671edbe876b75
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-01-28 16:49:25 +01:00
Mateusz Jablonski
06600f169b Define GPGPU engines per gen
Change-Id: Ie0e565d11184c5355b5bf09f5b10a567deb5c106
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-01-15 12:05:19 +01:00
Dunajski, Bartosz
8ae7de7b0e Create HardwareContext only when osContext is available
Change-Id: I8bcf2cb20f0e1e6b9da98b477f5be206407a7a57
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-01-13 15:12:07 +01:00
Mateusz Jablonski
8ec072d39c Simplify Memory Manager API [3/4]
- remove method allocateGraphicsMemory(size_t size)
- pass allocation type in allocation properties
- set allocation type in allocateGraphicsMemoryInPreferredPool

Change-Id: Ia9296d0ab2f711b7d78aff615cb56b3a246b60ec
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-12-17 10:42:16 +01:00
Hoppe, Mateusz
82078074bc Add createAubManager function
- unit tests are using mocked version of createAubManager
- dynamic library, aub and tbx tests are using functional
version using aub_stream

Change-Id: I12d69d84d00645009b026df266b8b64adebb86d4
2018-12-12 08:23:18 +01:00
Piotr Fusik
0b839722f4 Don't store preemption mode in Wddm.
Change-Id: I6088e5fec65b6910fefb42ec9735181867c44a1b
2018-12-10 14:48:52 +01:00
Mrozek, Michal
3719c7a767 Limit AUB SSH size to 64KB.
Change-Id: I1a23aa2a253a93ed9633ab7fda0a6180050add83
2018-12-06 17:36:49 +01:00
Milczarek, Slawomir
1bf98c7f80 Added support for expectMemory call from aub stream
Change-Id: I8acf27eff8b2f38dcb8d9873e03c35bfab6f3298
2018-12-04 12:03:36 -08:00
Milczarek, Slawomir
42ba6c10fc AUB CSR with an option to create and operate on hardware context
Change-Id: If8e060ef184d6c077e09741144ef870c96360645
2018-11-28 09:24:18 -08:00
Dunajski, Bartosz
b0de2a11d2 Set OsContext as reference
Change-Id: I3b682fabde9c2ddb2c33a95aef77bf6ce400a21f
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-27 15:32:14 +01:00
Dunajski, Bartosz
2d77b86e70 Allow Device creating multiple CSRs [5/n]
- Move Engine type to OsContext
- Move OsContext to CSR
- Improve EngineMapper logic
- CompletionStamp cleanup

Change-Id: I935cb7169c8c48cd09837e20e3da06f6dd3437b9
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-27 14:25:04 +01:00
Milczarek, Slawomir
3b8ff44d55 AUB CSR with a separate function to write memory
Move common code related to writing memory to dedicated function

Change-Id: I4ac8ec779cb40146bd27b8e40728d81d3b5b4276
2018-11-26 20:21:19 -08:00
Dunajski, Bartosz
7781089740 Allow Device creating multiple CSRs [4/n]
- Introduce additional RCS engine
- Set fixed size for Engines array

Change-Id: I06533a425684b64214f956783b07877e6157935b
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-26 09:40:44 +01:00
Milczarek, Slawomir
cd5f85052e AUB CSR with a separate function to submit batch buffer
Move code related to batch buffer submission from flush to dedicated function
Add parameter to pass aub file name from AubCenter to AubManager

Change-Id: I20abb3c8bd92114b3bc9caa2a6291dc1bbddad2a
2018-11-25 18:02:25 -08:00
Dunajski, Bartosz
af46d88fc1 Allow Device creating multiple CSRs [1/n]
Change-Id: Ie5d8d89aa388c608d5464919059c28a054ac9b1e
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-11-21 12:37:25 +01:00
Zdanowicz, Zbigniew
ce75767ca3 Add AUB registry key to override MMIO offset value
Change-Id: Iac3bf9074e544a03e38fc437d7b21ea478d9cc5d
2018-11-03 00:33:50 +01:00
Milczarek, Slawomir
b051528258 Add getter for handle to AUB dump allocations
Change-Id: I30251145775e9d81e307c983236bd2cc0568a74d
2018-10-30 12:06:17 -07:00
Milczarek, Slawomir
cd8f08b94b AUB CSR functions to operate on engine instance
Change-Id: I928cf5f7c25980fdfb2da825cbe062b5497c328a
2018-10-24 16:33:11 -07:00
Milczarek, Slawomir
3614b2acf8 Add mock for AUB file stream to test MMIO writes
Change-Id: I939d94e1fd50e22a2a8b278449ab1a93492bf83c
2018-10-23 20:12:30 +02:00
Mateusz Jablonski
4f028d13a1 Command stream receiver: use memory manager from execution environment
Change-Id: I236218a73bd7dac6e5744e3596f146b77b5ca1c8
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2018-10-16 12:14:55 +02:00
Milczarek, Slawomir
61000c0dd4 CSR AUB + HW mode - flush to poll MMIO for completion
Ensures that each submit of LRCA be serialized through the simulator
like it is for AUBs captured in the standalone mode.

Change-Id: I1e3ad500012dce960d0e64b56af1cb60142772da
2018-10-04 10:32:08 +02:00
Milczarek, Slawomir
ec48ccecdb AUB CSRs to use a shared address mapper (CPU VA to GTT VA)
This commit moves address mapper from CSR to execution environment
in order to generate unique GTT VA for LRCA, HWSP and ring buffer
between different CSRs.
Additionally, moved the rest of AUB file stream tests to separate module.

Change-Id: I02ae44202c0255277a7ac17532485419e0c403ab
2018-10-03 12:50:25 +02:00