Commit Graph

134 Commits

Author SHA1 Message Date
Mateusz Hoppe fd4ae3b369 Move gmm to core
Change-Id: I787dfcb3ca3926ce10e2e3c748594713df5fc467
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-01-10 14:26:17 +01:00
Dunajski, Bartosz fd4e5722b3 Fix DrmMemoryManager initialization
Change-Id: I625ba482c5bb3461c9723c550410b722a796c3c6
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2020-01-09 13:51:06 +01:00
Mateusz Hoppe 51f7ca1601 Move files to core
- runtime/gmm_helper files
- engine_control.h
- allocation_properties.h

Change-Id: I108888d639c8fdb298eda00fb1e7961b2ccb26cd
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2020-01-02 15:57:05 +01:00
Mateusz Jablonski 10d274daa9 Pass GmmClientContext to Gmm and GmmResourceInfo
Related-To: NEO-3007
Change-Id: Ia590670e93ed93b0941d5a5dc6ac010268cb561e
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-31 12:19:32 +01:00
Jobczyk, Lukasz eac48002ab Calculate a maxOsContextCount variable
Change-Id: I7b2f7733be74abf4ae299396d616b249b67de58e
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-12-23 12:24:40 +01:00
Jaime Arteaga e02162d301 Enable shareable buffer support (1/N)
Define method to allocate memory in SKL using
DRM_IOCTL_I915_GEM_CREATE.

Change-Id: I3106c690eaa6ce089a21100a1839c4886580f9c0
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2019-12-18 22:13:14 +01:00
Pawel Wilma c81f0e5c17 Add check for invalid host ptr when host ptr tracking is disabled.
Change-Id: I6aa8276c44b0bcb192d13b6a4dc36d55bd1eafb4
Signed-off-by: Pawel Wilma <pawel.wilma@intel.com>
2019-12-18 13:33:14 +01:00
Slawomir Milczarek 74a38386a4 Switch on a support for multi-storage resources on Linux
Related-To: NEO-2493

Change-Id: Ieb96ed309d2e1abbe349c372e0b0aabb37dc9c7f
Signed-off-by: Slawomir Milczarek <slawomir.milczarek@intel.com>
2019-12-17 23:00:05 +01:00
Mateusz Jablonski 5fa53f4516 Move headers to core
- address_patch.h
- options.h
- registered_method_dispatcher.h
- grf_config.h

Rename OCL_RUNTIME_PROFILING -> KMD_PROFILING

Related-To: NEO-3982

Change-Id: I06cf72729e9d7d7d2ff0bd169fcbada00c4b509a
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-12-10 12:19:29 +01:00
Jobczyk, Lukasz ac0471adc5 Remove padding allocation
Change-Id: I0017640ee22b687af1d85fa10d221d2b3cafed0a
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-12-09 13:39:39 +01:00
Dunajski, Bartosz dfc50f3a75 Move gmm_helper to core
Change-Id: I31ca317d10697ab884e04f443c8ccfdd6ca9d2ae
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-12-04 15:25:32 +01:00
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
Michal Mrozek b937b54064 Remove 32 bit code.
- Enable local memory in 32 bit scenarios.

Change-Id: I091570a3d0aa6043febf2721480196425e058978
Signed-off-by: Michal Mrozek <michal.mrozek@intel.com>
2019-11-28 17:50:42 +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
Igor Venevtsev 63fd26f6d6 Always specify rootDeviceIndex for graphics memory allocations
Related-To: NEO-2941

Change-Id: Ia2362fd6b4e72ede02919152475f40b3edbc3658
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-11-15 15:14:41 +01:00
Filip Hazubski 487c4c6e4b Add UNUSED_VARIABLE helper macro
Change-Id: If293ad33899ee4feb79424c351b13ea85306c603
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2019-11-14 17:42:56 +01:00
Igor Venevtsev 684d58d2aa Make GraphicsAllocation constructors unambiguous
Related-To: NEO-2941

Change-Id: Iedd16d0dcb4158b5e7832043289e2e6aba1549d5
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-11-06 10:12:26 +01:00
Igor Venevtsev fed673861f Add multiple root devices support to memory manager
Related-To: NEO-2941

Change-Id: If4977c19dbd083f2d1559a40f9b4e911eab4859c
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-10-31 14:30:19 +01:00
Mateusz Jablonski c8664b50a4 MemoryManager: don't access command stream receivers from execution environment
Related-To: NEO-3691, NEO-3857

Change-Id: I8d83456f4164d2b25d78bffa368cffe988c498b0
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-10-22 17:38:24 +02:00
Jobczyk, Lukasz 627c359798 Move Host Ptr Manager to the core dir
Change-Id: I48c521acdcd4b3a78eb539026af5ffa840cf2181
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-09-30 19:07:09 +02:00
Mateusz Jablonski 5d640e7100 Remove multiOsContextCapable flag from GraphicsAllocation
Change-Id: I3ebeef39befdc2a3e0f9d7d76ae531622ecf1a42
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-09-13 13:55:42 +02:00
Milczarek, Slawomir 093bc4da9c Add support for multiple buffer objects in drm allocation
Resolves: NEO-3364

Change-Id: I05e8b9a05328298dcc578d62b2aa7b56ffbf4ddc
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-09-06 10:16:05 +02:00
Igor Venevtsev 7be1853013 Correct releasing pin Buffer Object in DrmMemoryManager
Change-Id: I451449b90de03345d8fb4f7858ca04a56978fea7
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-08-29 11:50:18 +02:00
Dongwon Kim 25d9e4533d DRM Graphic allocation assigns original hostPtr as cpuPtr
Change-Id: I9ba282b130b5fb9b674e1ceb2f87183f218ab140
Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
2019-08-28 13:35:18 +02:00
Igor Venevtsev 3371ed12f6 Refactor DrmMemoryManager::freeGraphicsMemoryImpl
- remove default value from synchronousDestroy param in
  DrmMemoryManager::unreference
- unreference BufferObject in synchronous mode  before release
  GPU and CPU memory
- add ULTs

Related-To: NEO-2877

Change-Id: I8065c27923cf4259a0fcd0f6d8d6d5b7c4b810c0
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-08-28 12:30:20 +02:00
Dunajski, Bartosz aeb84b3e20 y-tiling interface cleanup
Change-Id: If7e5ab7135eaa71d9215c87c2fc46188ffd42b02
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-08-26 15:00:26 +02:00
Mrozek, Michal 874ae355f7 Do not set gfx base if using STANDARD heap.
Change-Id: Ic7615f2304d53c824afc3c4d3567e5c7bbe9f9b3
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-08-09 12:36:20 +02:00
Dunajski, Bartosz 4d8e808ab8 Remove redundant member initialization
Change-Id: Id4eaf4392d2895d4d84ce9b436a0cd5b67eb888e
Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
2019-08-09 10:55:12 +02:00
Venevtsev, Igor 614104bf37 Remove MMAP allocator from DrmMemoryManager
Related-To: NEO-2877

Change-Id: Iddfadde449b71b2fcfb7d6298db5de014773476d
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-08-05 17:39:21 +02:00
Venevtsev, Igor e721ff1ec3 Add ULT for DrmMemoryManager
- ensure DrmMemoryManager::releaseGpuRange() calls GmmHelper::decanonize()
  before pass gpuAddress to GfxPartition::freeGpuAddressRange()

Related-To: NEO-2877, NEO-3530

Change-Id: I6f6b745a8f9262c6980b9ddd32c70d376fa49726
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-07-30 13:25:03 +02:00
Piotr Fusik 2548bea71d Minor clean-up.
Change-Id: Id1523930fc8aedf85506e254c67f6b1ca8dd020d
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-07-30 11:53:20 +02:00
Milczarek, Slawomir c93b011ac6 Add support for SVM CPU allocations to DRM memory manager
Related-To: NEO-2687

Change-Id: I8987054d2fd12a1c2c01857eca1883476b0f5e04
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2019-07-17 23:37:51 +02:00
Piotr Fusik ca26cb7044 Refactor duplicate Linux code.
Related-To: NEO-3008

Change-Id: Ia920fc9e4b948fb73fe6c6abc7d2c35f1814dc85
Signed-off-by: Piotr Fusik <piotr.fusik@intel.com>
2019-07-17 15:38:14 +02:00
Igor Venevtsev 6dc4e9e775 Canonize graphics allocation base address in DrmMemoryManager
Related-To: NEO-2877

Change-Id: Id07dbef3b184660d95f91cb77361554049f02140
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-07-11 17:02:17 +02:00
Milczarek, Slawomir 6b77f94275 Extended DRM memory manager with function to copy memory to allocation
Related-To: NEO-2687

Change-Id: I2cd20c1d59dc0c28609fca7a11a5d805e2f21de4
2019-07-10 11:02:21 +02:00
Igor Venevtsev 5735e2e715 Decanonize GPU address before pass it to GfxPartition::freeGpuAddressRange
Related-To: NEO-2877

Change-Id: Id29c9f577d7026a44d756b3f8e939917b7d6c7d4
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-07-09 09:56:57 +02:00
Venevtsev, Igor 4403796f58 Use GfxPartition for GPU address range allocations
[4/n] - Remove allocator32Bit

Related-To: NEO-2877

Change-Id: I0772a7fe1fda19daa12699c546587bd3cdd84f2c
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-07-08 12:09:07 +02:00
Igor Venevtsev 10799ea0ed Use GfxPartition for GPU address range allocations
[3/n] - DrmMemoryManager

Related-To: NEO-2877

Change-Id: If7aa5f7e0d774f0c8b1c01cf6b14ee22374987d3
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2019-07-04 12:14:00 +02:00
Milczarek, Slawomir 2e7696121b freeGraphicsMemory to call freeGpuAddressRange on gfx partition
Related-To: NEO-2687

Change-Id: Id4ded6f5b443fb30c795cb8fab4bedda2fd66469
2019-06-28 15:38:29 +02:00
Mrozek, Michal 840d81c9fc Do not initiate limited range allocator if range above max64 bit address.
Change-Id: If7b0a83c5e5326f2b16d32533d8631ff6ff877cc
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-06-26 11:43:24 +02:00
Venevtsev, Igor 165d1e4e55 Use GfxPartition for GPU address range allocations
[2/n] - OsAgnosticMemoryManager

Related-To: NEO-2877

Change-Id: I887126362381ac960608a2150fae211631d3cd5b
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-06-25 12:54:20 +02:00
Mateusz Jablonski b04fc1121e Apply memory flag when creating Gmm with image info
Resolves: NEO-3294

Change-Id: I2702611c5b3b2ccd8d48219b90479a6fd3fbe1f7
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2019-06-12 17:36:07 +02:00
Jobczyk, Lukasz 007982b51f Add the supportsMultiStorageResources flag
Related-To: NEO-3182

Change-Id: I618b734b37c5fb983be55b50d89a965eaedc78fe
Signed-off-by: Jobczyk, Lukasz <lukasz.jobczyk@intel.com>
2019-06-10 17:57:49 +02:00
Mrozek, Michal 5244030e31 Call ioctl to obtain file handle from prime bo
Related-To: NEO-3252

Change-Id: I8d976ae29875db83dd75802e0309cb4438d1332b
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-06-10 09:06:59 +02:00
Jaime Arteaga b98b51b0d9 Move ptr.h to core folder
Change-Id: Icf0db7c767b2b1ea44fccc02b135f0f6c1f78c8f
Signed-off-by: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2019-05-29 00:11:34 -07:00
Mrozek, Michal 4f0c58003c Remove redundant code.
Change-Id: Ia037d05484d3ee70e5f915346884fde9eb7df180
Signed-off-by: Mrozek, Michal <michal.mrozek@intel.com>
2019-05-06 15:13:29 +02:00
Venevtsev, Igor 188c0797b6 Revert "[2/n] Use GfxPartition for 32-bit allocations - DrmMemoryManager"
This reverts commit 1ce2f9564a.

Related-To: NEO-2877

Change-Id: Id17e0bce560ed1d934412067f9e41d39c529018f
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-04-25 10:34:32 +02:00
Venevtsev, Igor 1ce2f9564a [2/n] Use GfxPartition for 32-bit allocations - DrmMemoryManager
Related-To: NEO-2877

Change-Id: Ic57d1e2cfb2629f50c6fd16e71861e8ee47f2b10
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-04-23 14:05:17 +02:00
Venevtsev, Igor 2ca97d3881 Introduce MemoryManager::getExternalHeapBaseAddress()
Related-To: NEO-2877

Change-Id: I4307224c3be9609f7fc60d7fcb4f91ccdc8a9883
Signed-off-by: Venevtsev, Igor <igor.venevtsev@intel.com>
2019-04-16 13:30:10 +02:00
Mateusz Hoppe b13bd16665 Add support for tiling mode selection to VA sharing
Change-Id: I459c472a4b8d74dba70df54c9da29865672114eb
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2019-04-03 10:06:42 +02:00