Commit Graph

271 Commits

Author SHA1 Message Date
Hoppe, Mateusz
18eb0b5e64 Kernel Source Level debugger support 2/n
- adding kernel debug option to build program
- program tests refactor
- pregenerated debug kernel for ULTs

Change-Id: I00152639148fd48c4f709dc7cd9c46392df567c8
2018-03-19 10:26:45 +01:00
Artur Harasimiuk
507544a999 add i915 uapi headers
Change-Id: I8b19ebc56c5aa394758177641b2946f7fca13eff
2018-03-16 17:30:48 +01:00
Mateusz Jablonski
f5fed65cb4 Cmake refactor part 17
Cleanup igdrcl_mocks and mock_gdi

Change-Id: I3cb24214c1857b9ec16680b8581f385fc5657349
2018-03-16 16:00:37 +01:00
Mrozek, Michal
7644209288 Add debug flag to dump dispatch parameters.
- Also refactor debug manager tests , they now check for default value
in igdrcl.config file
- There is no need to write dedicated tests now , so I remove them.

Change-Id: Ib338ca05b6059302c29469c673239e7886dc4b9b
2018-03-16 11:13:35 +01:00
Hoppe, Mateusz
76dd4ac1f3 service read_only memory passed to CreateBuffer
- only when cl_mem_flags allows for read only memory
and USE_HOST_PTR is used

Change-Id: Id023f9cb551f7d81ec680de9cc546005980e6f75
2018-03-15 18:29:38 +01:00
Mrozek, Michal
385fcdb7ca Fix Linux Global Mem Size computation.
- we need to use getContextParam instead of get aperture size.

Change-Id: I83f39654019ef63eb5fc59566c013ffd5cb5ba25
2018-03-15 17:42:56 +01:00
Zdunowski, Piotr
059104adef Fix for double scheduler compilation.
Change-Id: Ia265686354b288dc4817909f58680e1824079ad2
2018-03-15 15:55:35 +01:00
Dunajski, Bartosz
c0d3eade30 Disable wait timeout when flushStamp is 0
Change-Id: I416ace1f8c1a3e5aa91d9bc2425a4faa77e2fbe7
2018-03-15 15:44:17 +01:00
Milczarek, Slawomir
f997b45145 AUB CSR to update hardware tag in standalone mode
This commit introduces a software controlled HW Tag
in the configuration of AUB CSR in standalone mode
(i.e. with no execution on real HW).

Change-Id: Ic470957d58e6568b13dda3d61cb230498d8f2691
2018-03-15 14:37:57 +01:00
Hoppe, Mateusz
756aafe3dd Fix indexing of allocated bos in populateOsHandles
- when fragment is already allocated, allcoating is
skipped and index is incremented,
separate index must be used for allocated bos array

Change-Id: I856a99ba4ebdad5375829a43d721c7e1490b18d3
2018-03-15 12:13:29 +00:00
Mrozek, Michal
bd0362990b [16/n] Internal 4GB allocator.
- Make sure that kernel allocation is deleted asynchronously.

Change-Id: Ia98ae9fdbd56c7de82f92d62e0395ef181ebceef
2018-03-15 10:40:39 +01:00
Artur Harasimiuk
d6cc695c9c cmake: properly set variable inside function
Change-Id: I6a7060077dd9deced16ac031b8242c3e5a78e679
2018-03-15 08:50:40 +01:00
Mrozek, Michal
93fc48339b [15/n] Internal 4GB allocator.
- Make resident on kernel ISA for blocked and non blocked path.

Change-Id: I1fc4948f1abb73c6f7028ae15dccad820101b8dc
2018-03-14 15:04:30 +01:00
Hoppe, Mateusz
a1a20a3b34 Service read only memory passed as host_ptr
- read only memory cannot be used for allocation,
Oses cannot create graphics alocation for such memory
- if memory allocation fails for host_ptr passed
to enqueueWrite calls, then try doing new allocation
and copy host_ptr on cpu

Change-Id: I415a4673ae1319ea8f77e53bd8fba7489fe85218
2018-03-14 13:16:36 +01:00
Mateusz Jablonski
36a8bd8878 Cmake refactor part 14
cleanup unit_tests/aub_tests/CMakeLists.txt
cleanup unit_tests/elflib/CMakeLists.txt
cleanup unit_tests/libult/CMakeLists.txt
cleanup unit_tests/tbx/CMakeLists.txt
partially cleanup unit_tests/CMakeLists.txt

solution source tree changes:
 - make test projects folder as variable
 - make platform specific targets folder as variable
 - move platform specific targets to \"test platforms\" folder

Change-Id: Iff7da009e13c3ac9e5af76325be32e5056e8cd7b
2018-03-13 13:40:42 +01:00
Mrozek, Michal
00ae077913 [14/n] Internal 4GB allocator
- call make resident on sip kernel allocation.

Change-Id: I9c9af5ed4cec3e8b05decac7228658358ef1562b
2018-03-13 10:29:50 +01:00
Hoppe, Mateusz
cc6fa3d1e1 Kernel source debugging support 1/n
- new patch token
- program debug compilation flag
- sip kernel new methods for querying bti and debug
surface size

Change-Id: Icaddd15f269c4b76efdf926f2e346aa61cbaae02
2018-03-13 08:01:29 +01:00
Artur Harasimiuk
0ef0d6fc52 includes cleanup
Change-Id: Ibd4f5bfc2816c538f846dd7baf2e90005f8790f0
2018-03-12 21:23:29 +01:00
Mrozek, Michal
2119d5db08 [13/n] Internal 4GB allocator.
- Add common function for all memory managers to obtain internal heap base.

Change-Id: Iacdaaf598e8786dad046b3f4550f9c80ce3f15d9
2018-03-12 16:19:24 +01:00
Dunajski, Bartosz
bc08ecdcea Drm: getparam helper function
Change-Id: I4ecb1082f5e00087e8993f0d9e93dee9a23b6140
2018-03-12 15:26:37 +01:00
Kowalczuk, Jakub
78bf486bfb Turn on EnableDebugBreak by default and infrastructure update
Change-Id: Ie7e12a7e1509f0a7a5962e97042dca8fa714d132
2018-03-12 14:05:16 +01:00
Mrozek, Michal
8254d6a081 Ensure that submissions are flushed prior to csr destruction.
Change-Id: Ie04de561d3d295f40f55a19f01274d873d259abd
2018-03-12 12:54:47 +01:00
Mrozek, Michal
3d139c204e Remove unrecoverable.
Change-Id: I4f8db72668d8d36a68f46a591ee0823b35e41fb7
2018-03-09 16:20:28 +01:00
Zdanowicz, Zbigniew
6956c59436 Remove obsolete DEBUG_BREAK_IF
Change-Id: Ia3622076256784587db61db24ac888dab62dfec6
2018-03-09 15:31:58 +01:00
Mrozek, Michal
38c352d044 [12/n] Internal 4GB allocator
- allocate graphics allocation for sip.

Change-Id: I18f12251d3ce812d53cc1c8c78079a9ba3fd3b3d
2018-03-09 14:19:06 +01:00
Artur Harasimiuk
12b7c551d8 use ADAPTER_INFO in one method only
size of structure can vary. Create single point of conversion to extract
required data and store them in Neo specific structures.

Change-Id: I822ec633014aa7394cbd626ecbc275e32e61cf60
2018-03-09 12:30:05 +01:00
Mrozek, Michal
2bb64b2d11 [11/n] Allocate graphics allocations during processKernel.
- This ensures each kernel has ISH set up after it is created.
- refactor freeBlockPrivateSurfaces to freeBlockResources, this is to properly
clean allocations for blocks
- Add method cleanCurrentKernelInfo to avoid code duplication in KernelInfo
cleanup

Change-Id: I01f155d434579fe5ce2675bc4e89b04628ef8158
2018-03-09 11:13:08 +01:00
Mrozek, Michal
bdfd90bcf1 Move function definitions to cpp file.
Change-Id: I5e4d41d9ccb5ee0502fd628be16a8a810f9534a3
2018-03-09 08:45:12 +01:00
Dunajski, Bartosz
08c2379f6e Validate region and origin for all image API calls
Change-Id: I28782d8838cf8f5d800f76c922fcb59235f637a1
2018-03-09 08:24:25 +01:00
Milczarek, Slawomir
fcb9a591b0 Add AUB generation in parallel to execution on TBX
This commit adds support for AUB capturing with simultaneous execution on TBX

Change-Id: I046bac6b953708007c525050fbf9357120a310b6
2018-03-08 16:52:52 +01:00
Mateusz Jablonski
c6441eba9b Cmake refactor part 10
Cleanup cmake files in runtime dir
Add missing files to solution

Change-Id: I5d0cf8b658039f7bdf21681ac6e3750a5699d311
2018-03-08 15:35:25 +01:00
Mrozek, Michal
2ac12afe58 Remove unused variable
Change-Id: I2274844129072beb03e41029ad526a9e765911b1
2018-03-08 12:24:06 +01:00
Dunajski, Bartosz
23c1c4fea6 clEnqueueMapImage origin and region usage fixes
- Return error on origin > 0 or region > 1 when its not allowed
- For 1Darray, array region and origin are stored on 2nd position.
  For 2Darray, its on 3rd postion
- Fix map offset for 1Darray image
- Fix CPU data transfer for 1Darray image

Change-Id: Id35ba5f54f117e7af318ca7e6e03c1fc942ce729
2018-03-08 08:54:48 +01:00
Mrozek, Michal
8b726368d5 [10/n] Internal 4GB allocator.
- Sip kernel now uses Program

Change-Id: Ibba11a5686502084a8b7fa99732f8bc2ee78dcc5
2018-03-07 19:21:16 +01:00
Artur Harasimiuk
a66a92af57 use ImageBase when loading dependency
Change-Id: I8033ffcc9391ea809964f3cd3cd60da0c01fe156
2018-03-07 14:23:30 +01:00
Dunajski, Bartosz
7cbc35a45a Move AsyncEventsHandler cleanup to last executed asyncProcess
Change-Id: Icf31ea10a90bd8affc11640c0588cb996241927d
2018-03-07 11:02:25 +01:00
Artur Harasimiuk
3297cd8342 add function to properly load dependency
Change-Id: I0cec677ae19fa6525890c9b0abe0601a0c11e7df
2018-03-06 23:47:53 +01:00
Hoppe, Mateusz
cfa9cd8040 Add new debug sip kernel types for kernel debugging support
- new internal options
- new builtins sip kernel generation

Change-Id: I132c4612f1ae58516f0573e636f9362b961bb427
2018-03-06 21:05:20 +01:00
Mateusz Jablonski
2466f9363f Cmake refactor part 7
generate project source tree in all projects with sources
source tree is based on real paths

Change-Id: Ie10a6bffedb8020f25ebcb24a2f797086d8accbb
2018-03-06 14:26:05 +01:00
Mrozek, Michal
8f0789bd3e [9/n] Internal 4GB allocator
- Add new function to compute offset from the heap base.

Change-Id: I1eda6e989675b767e17979181446c62444c12f9b
2018-03-06 12:45:29 +01:00
Pawel Wilma
c4c35955d1 Debug option to flatten main and chained batch buffer in AUB dump.
New debug option FlattenBatchBufferForAUBDump has been added. When set it
modifies AUB dump in such way that commands from main and chained batch
buffer are dumped as single allocation. Commands from chained batch buffer are
dumped directly after commands from main batch buffer without
MI_BATCH_BUFFER_START. This feature also requires ImmediateDispatch mode which
can be forced using debug option CsrDispatchMode = 1.

Change-Id: I730760791693a748e7f4e1463ce8e7af94287b93
2018-03-06 12:26:50 +01:00
Artur Harasimiuk
a78111c892 cmake cleanup
- remove unused cmake code
- small cleanup around scheduler compilaiton
- remove misleading message related to compiler copying
  message is generated before copy_if_different operation and may be
  incorrect when such copy doesn't happen

Change-Id: Ia419d1ea26e9149b4282dc4883ddda0232ffd3f4
2018-03-06 08:04:40 +01:00
Mrozek, Michal
1602fa5a88 [7/n] Internal 4GB allocator
- rename getBase to getCpuBase
- change some test names accordingly.

Change-Id: I6fb2e4714298250147ea7766a916d7f5d62edc54
2018-03-05 22:16:14 +01:00
Mrozek, Michal
8f96c54945 [8/n] Internal 4GB allocator
- Add getGpuBase function to linear stream

Change-Id: I566ba929927a95399002e0f234e6e1919775ffba
2018-03-05 14:58:32 +01:00
Dunajski, Bartosz
f6a8cb3279 Improve GraphicsAllocation reuse management
Change-Id: Iee14b4641712231c801676b758546be76deef636
2018-03-05 10:56:34 +01:00
Dunajski, Bartosz
1fce275542 Remove forced DC flush and disabled out of order execution for shared objects
Change-Id: I0de86c3d5af488a347e83858f5dddbac2ef53c17
2018-03-05 09:45:18 +01:00
Zdanowicz, Zbigniew
533afe472a Program preemption mode in Interface Descriptor Data
Change-Id: I7fce731d71dd0b6dc8505ebfe45d24c65898a08b
2018-03-05 09:36:53 +01:00
Mrozek, Michal
bee295415f Add debug flag to print driver diagnostics to cout.
- New registry flags can be used for applications that wants to dump driver
diagnostics without using any additional tools
- When flag is on , context is being created with driver diagnostics and
hint level is being set to debug variable
- If application is already using driver diagnostics the hint level is
overwritten

Change-Id: I9912c0a7e8f23adb8372997144e5b75f9cc05b1d
2018-03-05 09:18:10 +01:00
Dunajski, Bartosz
e579578bc8 Reuse GraphicsAllocation mechanism for shared resources
Change-Id: I4bfd2d3387ae0fc10d461ebc1ada94614ab7f6b5
2018-03-02 16:51:28 +01:00
Artur Harasimiuk
d510f8c865 Khronos headers have absolute priority over other
In some cases we may hit issue because of different version of Khronos
headers available to include. The version from Khronos public github
repository has absolute priority.

Change-Id: I3d336943a3779d75d1a0f4bf4990a61ae6c0e2f2
2018-03-02 09:49:46 +01:00