Commit Graph

83 Commits

Author SHA1 Message Date
Hoppe, Mateusz eaf72b6098 Pass not validated flags only to checkExtraMemFlagsForBuffer
Change-Id: I05b5554d7977af7c1069104dc607b36a846bfa2d
2018-09-07 15:03:38 +02:00
Hoppe, Mateusz 5f7b6db893 Validate buffer flags with helper
Change-Id: Iaaf04bbe6e5237da0183556fa1ee10817faaf5c0
2018-09-05 14:10:21 +02:00
Pawel Wilma 4a12deea2b Add support for reduced GPU address space
Change-Id: I9ebbc8c51039bb533b44c6b80e717e1489a20a43
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2018-09-03 13:51:36 +02:00
Hoppe, Mateusz aaf2f94887 Fix zeroCopy property for images
- zeroCopy means no need for data transfer when cpu transfer is
chosen during map/unmap operations
- tests cleanup

Change-Id: Id312267e51d593781c6fe536b6e96f42f32e5c02
2018-08-23 16:45:05 +02:00
Dunajski, Bartosz 931b462ee1 Disable NonAux to Aux translation for Parent Kernel
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
Change-Id: I863608fe3652e7e777a1e841d79b5b56e7362a3f
2018-08-21 15:12:25 +02:00
Kamil Diedrich 1dcec9e23a Error handling improvement
Change-Id: I5e35bff508c45993be03bc946ddebfb698a0c638
2018-08-20 10:54:28 +02:00
Woloszyn, Wojciech 93c1a7b51b Fix mipmaps return values
Change-Id: I6e7cdc69edc80010a0c6f5f337e6b530278a6606
2018-08-13 11:56:07 +02:00
Dunajski, Bartosz bd9ac40bab Set non-aux mode for non-pure stateful kernel arguments
Change-Id: Id59fc3ae966a1f6632a24cbcfca3fb0aef0dd76d
2018-08-03 09:47:49 +02:00
Mrozek, Michal 1807ea651c Initialize tag value in init function.
- remove not needed method in mock device.
- remove duplication from aub tests.
- tag allocation now have desired value

Change-Id: Ib3161cce6753eae27c60fddb63054fd2e12f7dac
2018-08-03 09:25:26 +02:00
Mateusz Jablonski 89cf7532ea Make all gmm helper members non-static
Change-Id: Idb399aa275d66905040b6317d3888c94ffb98c55
2018-08-03 08:25:44 +02:00
Mateusz Jablonski 9ae4f390d1 Remove command queue, completion stamp and device from mem obj
Remove setCompletionStamp function from Surface

Change-Id: I25f3040a91892495e55cb4924f1538276de6264e
2018-08-01 16:17:13 +02:00
Hoppe, Mateusz 4441387969 Refactor allocateGraphicsMemoryInPreferredPool
- extend AllocationType to code necessary flags
- remove redundant args
- refactor Buffer::create()

Change-Id: Ic4b2e0931fad8198ad1cf4f79de210d815048ccf
2018-07-31 08:05:55 +02:00
Mateusz Jablonski a906ddaa66 Make gmm client context non-static member
Construct platform and initialize gmm in each test

Change-Id: I4f209369e77213420308f31f911b7a569ea93283
2018-07-27 00:16:30 +02:00
Dunajski, Bartosz 579367fe4a Enqueue write buffer instead of memcpy for renderCompressed allocation
Change-Id: I5505add129e08537fc0009b12228a446aa732645
2018-07-24 15:19:41 +02:00
Dunajski, Bartosz 3a807d5643 Render compressed buffer creation flow
Change-Id: I58b7f7eb3b69afcb78c6ab3de1f6fb7524d33f13
2018-07-23 15:29:47 +02:00
Dunajski, Bartosz 239ebf9eab Improve AllocationType operations: dont do bit operations on enums
Change-Id: Ie70ca9e2a93ec80b1cd655bad622db9e12abb7f7
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2018-07-20 09:12:58 +02:00
Mrozek, Michal f487ce11a2 Limit device usage in memory manager.
Change-Id: I488574dc2b2878b640f0bac2b23bd9a6a265f0e2
2018-07-19 18:27:42 +02:00
Mrozek, Michal 224d513c3b Remove redundant cast.
Change-Id: Ic1b2b247645efbde1351efc6a20f91e5c39b398f
2018-07-19 16:05:27 +02:00
Mrozek, Michal 3817857276 Remove redundant cast.
Change-Id: I3eb79be6a25abbaf0327458384e0e180d5b52ab5
2018-07-19 15:38:46 +02:00
Pawel Wilma fd6224ae4e Set clear color parameters in surface state
Change-Id: I6b2c87394495366756bf471dd830ccd1c715acc4
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2018-07-17 13:43:17 +02:00
Hoppe, Mateusz 55a045ebe1 Refactor graphics memory allocation scheme
- replace createGraphicsAllocationWithRequiredBitness with more general
methodallocateGraphicsMemoryInPreferredPool based on passed
 AllocationData
- proper flags for allocation selected based on AllocationType

- remove allocateGraphicsMemory(size_t size, size_t alignment)
and use allocateGraphicsMemory(size_t size) instead where default
alignment is sufficient, otherwise use full options version:
allocateGraphicsMemory(size_t size, size_t alignment,
 bool forcePin, bool uncacheable)

Change-Id: I2da891f372ee181253cb840568a61b33c0d71fc9
2018-07-11 15:48:05 +02:00
Maciej Dziuban 4993a94b5b Prepare for future changes
- Implement changing MemObj's GraphicsAllocation
- Create function for resolving change of SharedHandler's GraphicsAllocation

Change-Id: Ibd975070ca11ba8591f5561d9f02bf5d9af1636b
2018-07-11 15:36:38 +02:00
Dunajski, Bartosz a1d7d42c69 Remove Aux pitch/qpitch/baseAddress programming
Change-Id: I836bb33c9b4328f67be88739c83290972a03288c
2018-07-11 13:06:21 +02:00
Dunajski, Bartosz e527a439cd Disable CPU operations for renderCompressed GMM resources
Change-Id: I4396460cab1e030717ea85590775eea0ea92f9db
2018-07-09 16:15:13 +02:00
Dunajski, Bartosz aa96508354 Set valid coherency type in Surface State for Buffers
Change-Id: Id84f6a8561831d29b1de9ac589a52e3e083eefda
2018-07-06 13:01:25 +02:00
Hoppe, Mateusz 684b1d75ba Refactor GraphicsAllocation::AllocationType and allocationType enums
- change GraphicsAllocatoin::AllocationType to scoped enumeration
so that ALLOCATION_TYPE_ prefix in every enum value can be removed
- all accesses are typed (example AllocationType::IMAGE)
- Rename allocationType to AllocationUsage to eliminate confusion
with multiple AllocationType enums / types

Change-Id: I16003297ecfcb0aaa5779ad00706c5d983914bbe
2018-07-06 13:00:08 +02:00
Dunajski, Bartosz b3414ae5f2 Program Aux Surface params for Buffers
Change-Id: I7bf838b5c157e8d89d59cd1abc63ddb3bfc7ae30
2018-07-06 09:28:06 +02:00
Dunajski, Bartosz 2f9e83df11 Update AUXILIARY_SURFACE_MODE enum usage
Change-Id: Idaa3a7db04c8ed9f50a9610c516495a11f7a56b6
2018-07-05 09:00:55 +02:00
Dunajski, Bartosz e26d67cde3 Aux surface programming for Buffers [1/n]: Gmm interface improvement
Change-Id: I984b8ebee27808a236217e82bb4e910550d624c4
2018-07-03 13:00:08 +02:00
Dunajski, Bartosz 5408913d38 Set HwInfo to GmmHelper on Device creation
This allows querying HwInfo from code that doesnt have access to Device

Change-Id: I0084f824f557cd85c2fdfbf0ff2ec71118e9af2e
2018-06-29 11:02:52 +02:00
Dunajski, Bartosz e18e9fb94e Move static methods from Gmm to new GmmHelper class
Change-Id: I84fbe94f0e1072324164086b456c71a46ae5040c
2018-06-27 16:46:09 +02:00
Dunajski, Bartosz 88edc7279d Improve returned row pitch calculation for multisampled images
Change-Id: I2fbf413ba83941682fa2bd0353060cab3f534d1a
2018-06-13 13:00:26 +02:00
Zdunowski, Piotr 0cc10e47cc Use device instead of context when programing surface state.
Change-Id: I67615036d373cf905762a43a92562bf3d84854a5
2018-06-11 17:20:11 +02:00
Koska, Andrzej fe56c57318 Tracking the internal allocation when creating a buffer
This fix prevents the creation of a buffer from the pointer
obtained from clEnqueueMapBuffer

Change-Id: I203f2d5263eeb02fe0d73bc9db159438af3cf1fc
2018-06-08 07:33:07 +02:00
Mrozek, Michal f24ec6ec33 Add DisableZeroCopyForBuffers debug flag.
- This flag disables zero copy for all buffers.

Change-Id: I882f01942f99e399e33f5fe2750acbcc0476457c
2018-06-07 11:28:54 +02:00
Maciej Dziuban 3bfbcad8c6 Fix validation of size when creating image from buffer
Change-Id: Iaf9b8aae8bd3a2f2ea2b4a3d7f751dbcf4df7c0e
2018-06-06 13:17:10 +02:00
Hoppe, Mateusz d019638119 Fix image from subbuffer offsets
- change 32 bit offset to size_t to account for offsets bigger
than 4 GB in SurfaceOffsets
- change ImageInfo offset to size_t type
- fix hostptr offseting in subbuffer creation - null hostptr
shouldn't be offseted

Change-Id: I18a5b8eacbd8c9e40c1f2effe5ded4fa8b453395
2018-05-29 16:29:25 +02:00
Hoppe, Mateusz 4c4e682bc7 Set correct offset for images created from buffer
- images from subbuffer with non-zero offset relative to
parent buffer didn't have correct Surface Address offset

Change-Id: I6ae2b87f8c9d19e40ec14a29b5eadc7401db18ad
2018-05-24 18:12:55 +02:00
Woloszyn, Wojciech 8a488ad52f Fix reported row/slicePitch for mip-maps
- use information from gmm correctly
- modify computation on gen8

Change-Id: Iaefcc20ce9436ef70cd2f4bc36654932c4b5af49
2018-05-22 10:36:54 +02:00
Mrozek, Michal 4cb86b4045 Add debug flag that controls zero copy for CL_MEM_USE_HOST_PTR buffers.
- when flag is enabled driver will not go with zero copy path for
CL_MEM_USE_HOST_PTR flag

- flag doesn't work in shared context where we must accept zero copy
storage.

Change-Id: Idda94f296dd12e7e3ccb15f2224808287551ac97
2018-05-21 12:08:59 +02:00
Dunajski, Bartosz f40dc29ea1 Dont change multisampled surface state storage for R32_FLOAT_X8X24 type
Change-Id: I5e386057e4368e0d80bed496f2ddc19b5ae271a5
2018-04-12 15:47:46 +02:00
Mateusz Jablonski 5d296f15e3 Validate image 2d sizes unless parent image is nv12
when any check in Image::validate method failed then early return

Change-Id: Ib28110ac493f5930ffa99fa7463443e9e7fc8fcf
2018-04-10 11:41:00 +02:00
Mateusz Jablonski 1843b23692 Fix image 2d validation
check image sizes only for image without parent mem object

Change-Id: I73189f1c73653f609c6e4d7dcb7a85d06a2f858a
2018-04-10 09:39:52 +02:00
Chodor, Jaroslaw 10ada58bd6 Fix for context lifetime management
Don't destroy context if any related memobject is alive

Change-Id: I7d4776b6bb16373adb367d2ab4e249c62353afbe
2018-04-09 17:23:29 +01:00
Mateusz Jablonski ac45ff74ec Fix creating image from image
- allow creating image 2d from non NV12 image 2d
- validate image descriptor and format when create image from image

Change-Id: Ie7887e75f1450fc723dc1d1ae9ff5639d88835fc
2018-04-09 11:29:11 +02:00
Mateusz Jablonski 79a0e3253e Enable transforming image 3d to image 2d array
Change-Id: I8fdc6899780481bdebeaf858a330e9dea822bda3
2018-04-05 09:10:54 +02:00
Chodor, Jaroslaw 0a97dfbb2f [1/n] Mipmap support
* adding support for map/unmap
* adding support for origin/region validation with mipmaps
* fixing slices returned in map/unmap
* removing ambiguity around mipLevel naming
* enabling cl_khr_mipmap_image in current shape
* enabling cl_khr_mipmap_image_writes in current shape

* fixing CompileProgramWithReraFlag test

Change-Id: I0c9d83028c5c376f638e45151755fd2c7d0fb0ab
2018-04-05 01:09:27 +02:00
Milczarek, Slawomir 6506df559b Fixed mip count programming in surface state for regular images
This commit addresses crashes during AUB playbacks in image scenarios.

Change-Id: I6d2f3917cdb3458c62382205c1a17bdc57239bb4
2018-04-04 16:50:11 +02:00
Mateusz Jablonski 575d1bf381 Cmake refactor part 20
set global properties with runtime sources, libult sources and
os interface tests

Change-Id: I9a84edf2f021b4581a16c19c7dbb0b2f94c33f4d
2018-03-23 15:51:12 +01:00
Pawel Wilma ff1d2361f3 Add patch info comments to AUB dump
Collect patching information and add as comments to AUB dump.

Change-Id: Ib7c903a2589d68b6e3e614c1774c7cd5a000c29f
2018-03-23 13:08:54 +01:00