Commit Graph

189 Commits

Author SHA1 Message Date
Daria Hinz de74becdb8 Base hwInfo values setup for AOT
In most cases, there was code redundancy, which was minimized in this change.
The setupHardwareInfoBase extraction will also be used for ocloc.

Signed-off-by: Daria Hinz <daria.hinz@intel.com>
Related-To: NEO-6910
2022-05-13 09:40:37 +02:00
Krzysztof Gibala 2fcda0a528 Refactor: Change decanonize method accessing point
Accessing decanonize method as a member of GmmHelper class object

Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2022-05-11 12:57:02 +02:00
Daria Hinz 5ba56690f5 Revert "Set only base values in GT_SYSTEM_INFO for AOT"
This reverts commit b1f622d700.

Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2022-05-09 12:42:09 +02:00
Daria Hinz b1f622d700 Set only base values in GT_SYSTEM_INFO for AOT
In most cases, there was code redundancy, which was minimized in this change.
The setupHardwareInfoBase extraction will also be used in ocloc.

Signed-off-by: Daria Hinz <daria.hinz@intel.com>
Related-To: NEO-6910
2022-05-04 10:36:26 +02:00
Mateusz Hoppe 5911515ed0 Refactor debugger code
- helper sets all SbaAddresses for debugger in
EncodeStateBaseAddress<GfxFamily>::setSbaAddressesForDebugger()
- change DebuggerL0::captureStateBaseAddress() to take
LinearStream
- move getSbaTrackingCommandsSize() to Debugger class

Related-To: NEO-6845

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-04-21 13:04:34 +02:00
Brandon Yates d70b1a2e2a Filter L0 Debugger support by platfom
Related-To: NEO-6678
Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2022-04-13 13:03:40 +02:00
Daria Hinz ce645f13b7 Encode PRODUCT_CONFIG value into fatbinary
Change modifies the encoding entry in fatbinary for platforms.
If numbering in -device is used, the value PRODUCT_CONFIG will be encoded.
The functionality that returns the correct product config values has
also been added.

Related-To: NEO-6744
Signed-off-by: Daria Hinz <daria.hinz@intel.com>
2022-04-11 15:09:17 +02:00
Bartosz Dunajski db9c0d1103 Refactor and enable MI_MEM_FENCE programming for DirectSubmission dispatch
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-07 12:53:56 +02:00
Bartosz Dunajski 08e3853982 Debug flag to add extra MI_MEM_FENCE for DirectSubmission
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-03-30 16:07:25 +02:00
Filip Hazubski 586e8510de Remove unneeded include
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-26 09:55:25 +01:00
Filip Hazubski cd95572443 Reuse common logic of programming SCM fields for gen 9 and gen 11
Logic related to programming non coherent and thread arbitration policy for
gens 9 and 11 has been moved to EncodeComputeMode object, where similar
logic for gens gen12lp and newer is located.

Functions PreambleHelper::programThreadArbitration and
PreambleHelper::getThreadArbitrationCommandsSize have been removed.

Redundant setForceNonCoherent call has been removed from XE HPG

Related-To: NEO-6728

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-16 10:04:32 +01:00
Filip Hazubski 32b0f7b014 Remove redundant value CsrSizeRequestFlags::numGrfRequiredChanged
Related-To: NEO-5995

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-15 15:08:15 +01:00
Filip Hazubski 3eab7009ac Move SCM related WAs logic from CSR to EncodeComputeMode
This will help with unifying the logic between APIs and GENs.

Related-To: NEO-6728

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2022-03-11 14:00:53 +01:00
Jaime Arteaga 4aef9925b0 Add support for zeDeviceGetP2PProperties
Related-to: LOCI-2784

Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2022-02-01 17:06:43 +01:00
Kamil Kopryk 40483acd17 Improve blitter programming
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-01-18 10:36:05 +01:00
Mateusz Jablonski e5a18177c5 Add unit test helper function to set pipe control hdc flush
Separate unit test helper definitions bdw_and_later / xe_hp_and_later

Related-To: NEO-6466

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-01-17 15:45:29 +01:00
Mateusz Jablonski ff79c84115 Correct INTERFACE_DESCRIPTOR_DATA definitions for XeHp and later
Related-To: NEO-6466
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-01-14 19:06:55 +01:00
Zbigniew Zdanowicz 6ab4b566aa Shift csr factory initialization to shared library
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-12-21 18:43:31 +01:00
Filip Hazubski 0fd685541d Add isDcFlushAllowed function to HwInfoConfig
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-12-21 18:29:43 +01:00
Filip Hazubski 6d439f88bb Explicitly set dcFlushEnable value
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-12-21 12:21:11 +01:00
Zbigniew Zdanowicz 82096a5472 Add new KMD delay parameter for direct submission
Related-To: NEO-5845

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-12-17 21:09:37 +01:00
Zbigniew Zdanowicz 47dbe359bf Add command encoder for store data command
Related-To: NEO-6262

Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-12-02 20:56:07 +01:00
Bartosz Dunajski 995cb88bfa Improve ftr/wa flags packing
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-11-25 16:05:57 +01:00
Zbigniew Zdanowicz 7ea0a11c0a Unify programming of partition registers
Related-To: NEO-6262


Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-11-18 16:52:51 +01:00
Zbigniew Zdanowicz 76b8f6296f Move noop programming to dedicated encoder
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-11-18 10:28:56 +01:00
Kamil Kopryk 7bbb43a563 Move sharedSystemMemCapabilities to hwInfo
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6075
2021-11-17 14:42:05 +01:00
Maciej Plewka bdf5a1c39c Disable deviceEnqueue for BDW
Related-To: NEO-6378

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-11-15 12:49:59 +01:00
Kamil Kopryk 03540d5301 Refactor per platform extra settings in ocloc
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6382
2021-10-28 16:24:12 +02:00
Bartosz Dunajski 4555d2dc34 Remove not used flag
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-10-22 17:40:38 +02:00
Krzysztof Gibala ca0138da2e Disable PC WA on specific engine type
Related-To: NEO-6056

Signed-off-by: Krzysztof Gibala <krzysztof.gibala@intel.com>
2021-10-18 14:04:27 +02:00
Mateusz Jablonski b1df167632 Move enable_product.inl to shared
extract api agnostic validators to shared
remove not needed opencl includes from neo shared


Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-10-12 22:02:16 +02:00
Bartosz Dunajski 5856c283c5 Remove HardwareCapabilities struct
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-10-12 07:25:06 +02:00
Kamil Kopryk cfc673b77c Add compilerHwInfoConfig
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-6237
2021-10-06 21:27:34 +02:00
Artur Harasimiuk fe93ce83c8 move experimental_command_buffer to shared
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2021-09-29 23:20:19 +02:00
Artur Harasimiuk 470b22e8a0 move aub_mem_dump to shared/
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2021-09-27 15:23:29 +02:00
Artur Harasimiuk 7549fd8d21 cmake refactor
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2021-09-23 23:36:22 +02:00
Mateusz Jablonski bdd1a2be8f Move gmm callbacks to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-09-23 22:25:25 +02:00
Mateusz Jablonski fae50eb64a Move hw_info files to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-09-23 22:16:59 +02:00
Mateusz Jablonski 8b36473a9a Move command stream receiver files to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2021-09-23 12:47:21 +02:00
Compute-Runtime-Validation 946ae7cba3 Revert "Add HwHelper::getExtraExtensions"
This reverts commit a9226a9113.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2021-08-27 02:31:19 +02:00
Filip Hazubski a9226a9113 Add HwHelper::getExtraExtensions
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-08-26 14:06:35 +02:00
Lukasz Jobczyk 4d2764eb0d Refactor direct submission per product files
Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
2021-08-23 19:13:30 +02:00
Szymon Morek aa5e1780a2 Rename plus in filenames to and_later
Related-To: NEO-5920

Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-08-17 11:26:27 +02:00
Zbigniew Zdanowicz 0574e65fc1 Organize product configuration files
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2021-08-06 13:21:02 +02:00
Szymon Morek 1a7c9e63fa Add method to set force non coherent
Signed-off-by: Szymon Morek <szymon.morek@intel.com>
2021-07-23 11:18:04 +02:00
Jim Snow 2acc0fb3f6 Add memory backed buffer allocation for L0 ray tracing.
This allocates the buffer on a per-device basis and enables ray
tracing on devices that support it when given a kernel with ray
tracing calls.

Signed-off-by: Jim Snow <jim.m.snow@intel.com>
2021-07-02 11:56:18 +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
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
Maciej Plewka b943ad078f Program border color once per dsh
Related-To: NEO-4928

Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-04-30 13:31:58 +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 47c2a3011a Remove not used MemorySynchronizationCommands argument
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-03-31 17:58:43 +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
Filip Hazubski dca33e10ec Move hw_info_config files to shared
Related-To: NEO-5161

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2021-03-10 12:49:06 +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
Bartosz Dunajski c2e333fe38 Update compression encoding interface + test traits
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-01-29 13:57:15 +01:00
Bartosz Dunajski b57c1b9650 Improve Image surface state encoding for compression
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2021-01-28 16:39:42 +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
Maciej Plewka 9290637a8e Don't override global bindless heap base
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2021-01-26 12:26:36 +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
Filip Hazubski edbda8e8b2 Pass HwInfo to computeSlmValues function
Resolves: NEO-5215, NEO-5216

Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-12-07 20:23:28 +01:00
Bartosz Dunajski 60d0d4d67f Move remaining SBA files to shared
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-11-26 17:11:57 +01:00
Kamil Kopryk b59aa2f928 Rename command_encoder_base.inl file
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
Related-To: NEO-4750
2020-11-17 13:22:00 +01:00
Bartosz Dunajski 39e6548ef6 Add mi_arb_check between blit commands
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-11-17 13:07:50 +01:00
Maciej Plewka 44af85b492 Return correct maxFillSize property
Related-To: NEO-5205

Change-Id: I62b7fec89451c640f70028b8d3ecb81f7655225d
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-11-02 16:10:01 +01:00
Filip Hazubski ca5f34133b Move aub and tbx code to shared
Related-To: NEO-3964

Change-Id: Ice978e582721498d7496f989767ce7d6f5f4caf4
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-19 16:04:47 +02:00
Filip Hazubski d27374b468 Move aub related files to aub directory
Additionally remove dependencies on opencl code from aub and tbx code.

Related-To: NEO-3964

Change-Id: Ie81b7d274e2f22b6090df0e07c45123618af5cae
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-16 12:05:58 +02:00
Filip Hazubski 60bfcbd69f Move populateFactoryTable() to shared
Related-To: NEO-3964

Change-Id: I9da0395265dc164deda219d5390dd9540e04f9aa
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2020-10-16 11:07:38 +02:00
Zbigniew Zdanowicz ce1b669cda Use single class to program load register command
Change-Id: I90fe084409588cb32f0ac43a3db5082047d7a68b
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-10-06 13:45:35 +02:00
Artur Harasimiuk 0dbcac46bd includes refactor
Change-Id: I4dd85112b20b26fe1ecc95b8098cb160548db1d4
Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2020-08-28 14:53:14 +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
Mateusz Hoppe 0ed1db0b46 Insert PC before SBA in cmdlist
Related-To: NEO-4916

Change-Id: I7024ff173ad97d4c42a5fa6d7ea0d0ee665a87d9
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-07-31 13:09:57 +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
Zbigniew Zdanowicz 77de2dd770 Move SLM functions to HwHelper class
Related-To: NEO-4585

Change-Id: I073e4138ef34584780a10a63ba8a2eb57eaa11bd
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
2020-06-09 12:51:49 +02:00
Mateusz Hoppe b23a53b109 Move hw_helper files to shared directory
Related-To: NEO-4714

Change-Id: I974eaaf7fa0d3742d36118fdd7aacdda7c448c0b
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-06-03 16:28:17 +02:00
Maciej Plewka 67198ea705 Use bliter for memoryFill
Change-Id: I2e60d1b436cb2955952b62b1eb43d9efbe70d19b
Signed-off-by: Maciej Plewka <maciej.plewka@intel.com>
2020-04-29 16:10:57 +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
Mateusz Hoppe d2c07cb9ed Refactor bindless surface state offsets
Related-To: NEO-4607

Change-Id: I0b0ac275b532cf33f0292d3cf92abf2f49ff354f
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-04-28 17:35:09 +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 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
Bartosz Dunajski 32e1b7d1a7 Add helper for encoding memory prefetch
Change-Id: I481ec11b66ad392ba9748bb5bbb6fd0ad3ce7f12
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2020-04-03 18:34: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
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
Sebastian Sanchez 1187eb0375 Fix encodeMulRegVal() calculation
encodeMulRegVal() makes extensive use of encodeAluAdd().

The following problems are addressed:

* encodeAluAdd() performs an addition and saves the
  calculated result to the first register. Saving the
  result to the first register clears the calculated result.

* An array of MI_MATH buffers is setup prior to performing a
  series of encodeAluAdd()'s where the same registers are
  reused for the calculations. For calculated results to be
  carried over from one encodeAluAdd() operation to subsequent
  encodeAluAdd() operations, the MI_MATH buffer needs to be
  setup per encodeAluAdd().

Create EncodeMath<Family>::addition() to reserve a MI_MATH buffer
and performs the addition by calling encodeAluAdd().
Modify encodeAluAdd() to save calculated result to a third
register. Then, after EncodeMath<Family>::addition() is called
in encodeMulRegVal(), copy the calculated result from the result
register to the first register from the EncodeMath<Family>::addition()
operation. This will allow the calculated value to be carried over
to subsequent addition operations.

Change-Id: I9c6f8362a1ca2f7e3361aaa48d8748dd6ff0f4c8
Signed-off-by: Sebastian Sanchez <sebastian.sanchez@intel.com>
2020-02-25 14:13:35 -08: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