Commit Graph

1091 Commits

Author SHA1 Message Date
Mateusz Jablonski
3be31b821b Create a wrapper for drm_i915_query_topology_info
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-19 15:27:46 +02:00
Mateusz Jablonski
ac3005a463 Create a wrapper for drm_i915_query_item
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-18 11:32:44 +02:00
Mateusz Jablonski
06517f429f Create wrappers for drm_i915_gem_create and drm_i915_gem_userptr
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-16 17:03:29 +02:00
Mateusz Hoppe
c021e2ec5e L0 Debugger - DebugSession linux implementation
- new feature, enabled with PRELIM build
- implementation of debug session for linux
- move ResourceClass enum from Drm to drm_debug.h

Resolves: NEO-6814


Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-05-11 15:30:32 +02:00
Artur Harasimiuk
e9be9b64c6 clang-tidy configuration cleanup
Define single .clang-tidy configuration with all used checks and use
NOLINT to selectively silence tool. That way cleanup should be easier.
third_part/ has its own configuration that disables clang-tidy for this
folder.

Signed-off-by: Artur Harasimiuk <artur.harasimiuk@intel.com>
2022-05-11 14:02:04 +02:00
Mateusz Jablonski
943ad0e1eb style: skip redundant unique_ptr::get function
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-05-10 13:22:40 +02:00
Bartosz Dunajski
4f7a225baf Set PAT programming support during VmBind support query
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-05-04 16:26:15 +02:00
Mateusz Jablonski
ffd1c430b1 feature: use completion fence value from direct submission when available
Related-To: NEO-6643
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-28 15:38:11 +02:00
Naklicki, Mateusz
f1574bebb4 Use flag to opt-in for VM_BIND mode
Related-To: NEO-6640
Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2022-04-22 17:11:37 +02:00
Bartosz Dunajski
06fa316a75 Assign pat_index to BO during creation
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-21 13:25:13 +02:00
Bartosz Dunajski
884d729e4e Improve pat index programming on linux
Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
2022-04-12 08:18:20 +02:00
Daniel Chabrowski
4d4ccfd128 Remove cache info base class
There is only one implementation of said class and we don't
even adhere to the interface it provides.

Signed-off-by: Daniel Chabrowski <daniel.chabrowski@intel.com>
2022-04-07 18:15:57 +02:00
Daniel Chabrowski
3c4b442c79 Virtual engines for BCS
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-04-07 11:52:29 +02:00
Mateusz Jablonski
d3b7ea10c8 Dont allocate dynamic memory when preparing params for vm bind call
Related-To: NEO-6837
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-05 19:41:56 +02:00
Mateusz Jablonski
b45ffdb334 Move drm command stream fixture to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-01 15:58:37 +02:00
Mateusz Jablonski
7910567a76 Handle missing tag address in getting completion address
rename test fixture to comply one definition rule

Related-To: NEO-6643
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-04-01 15:00:35 +02:00
Mateusz Jablonski
9d502dea25 Refactor waitOnCompletionFence method in DrmMemoryManager
get completion address and value from command stream receiver

Related-To: NEO-6643

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-03-31 19:30:16 +02:00
Daniel Chabrowski
5350553f72 Use PrelimHelper for isDebugAttachAvailable
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-03-30 16:17:05 +02:00
Naklicki, Mateusz
bce96e666f Use updated macro names
Related-To: NEO-6730

Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
2022-03-30 10:44:59 +02:00
Milczarek, Slawomir
f03f530327 Extend zeCommandListAppendMemoryPrefetch to migrate to associated device
Related-To: NEO-6740

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2022-03-23 14:21:17 +01:00
Fabian Zwolinski
3d8effcd69 Clean-Up unused code related to GMock
This commit:
- Removes usings e.g. ::testing::Return
- Removes unnecessary gmock inclues
- Replaces Gmock macros (e.g. EXPECT_THAT) with our custom implementations

Related-To: NEO-4941
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-03-22 16:16:34 +01:00
Fabian Zwolinski
726b676983 Remove DrmMockImpl and use DrmMock instead
Related-To: NEO-4914
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-03-18 15:45:48 +01:00
Joshua Santosh Ranjan
05a150f49f L0 Core Add Support For pci_speed_ext
This patch adds support for reading PCI bandwidth, generation
and linkwidth information from sysfs nodes for the linux
platform.

Related-To: LOCI-2969

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2022-03-16 22:47:59 +01:00
Fabian Zwoliński
08d1af76c3 Revert "Remove DrmMockImpl class and use DrmMock instead"
This reverts commit 4ccbbfa41476ecccdee181b4e6b2e72eed5eaab1.
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-03-16 13:56:14 +01:00
Daniel Chabrowski
adc5fb30d7 Fix UB with std::optional deref in tests
Accessing optional value with operator-> when it has no value is an UB.

Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
2022-03-15 13:29:59 +01:00
Fabian Zwolinski
2e6d8fefa3 Remove DrmMockImpl class and use DrmMock instead
Related-To: NEO-4914
Signed-off-by: Fabian Zwolinski <fabian.zwolinski@intel.com>
2022-03-11 15:12:11 +01:00
Milczarek, Slawomir
c0b7f05897 Add memory prefetch for kmd migrated shared allocations
This feature is disabled by default, controlled with the knob
AppendMemoryPrefetchForKmdMigratedSharedAllocations

Related-To: NEO-6740

Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2022-03-09 16:02:18 +01:00
Daniel Chabrowski
de0361cfa5 Test prelim VM bind, debug
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-03-07 19:42:41 +01:00
Daniel Chabrowski
bae9e6f5b5 Test DRM query, bind, context create
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-03-04 08:51:37 +01:00
Daniel Chabrowski
5ae968f2fd Test prelim drm memory info
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-03-03 16:17:22 +01:00
Milczarek, Slawomir
13bc2300e1 Add mock function to check for page fault support
Signed-off-by: Milczarek, Slawomir <slawomir.milczarek@intel.com>
2022-02-28 18:36:31 +01:00
Daniel Chabrowski
ca7d47598a Reintroduce prelim DRM debug support
It was verified that the issue existed before the failing commit.

Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-02-28 18:25:57 +01:00
Daniel Chabrowski
d603bb2f34 Revert "Prelim DRM debug support"
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591

This reverts commit 5e021be0cd.
2022-02-25 18:33:11 +01:00
Daniel Chabrowski
5e021be0cd Prelim DRM debug support
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-02-22 14:59:07 +01:00
Joshua Santosh Ranjan
10f98b45db Metrics Add Os specific implementation Structure for IP Sampling
This patch adds OS specific implementation for IP Sampling.
Implementation for linux is provided as part of this patch.

Related-To: LOCI-2787

--- master-files
level_zero/tools/source/metrics/linux/os_metric_ip_sampling_imp_linux.cpp
level_zero/tools/source/metrics/os_metric_ip_sampling.h
level_zero/tools/source/metrics/windows/os_metric_ip_sampling_imp_windows.cpp
level_zero/tools/test/unit_tests/sources/metrics/linux/test_metric_ip_sampling_linux_prelim.cpp
level_zero/tools/test/unit_tests/sources/metrics/linux/test_metric_ip_sampling_linux_upstream.cpp
level_zero/tools/test/unit_tests/sources/metrics/windows/test_metric_ip_sampling_windows.cpp
--- master-files

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2022-02-18 23:15:44 +01:00
Mateusz Jablonski
6799ea6119 Move linux device factory tests to shared
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-18 10:15:53 +01:00
Mateusz Jablonski
235f9be779 Move ioctl strings out of ioctl helper
In order to setup ioctl helper we need to call ioctl to get hw info

Related-To: NEO-6591

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-17 12:30:47 +01:00
Mateusz Jablonski
dabbabd3c9 Refactor createDrmContext function
merge createDrmContext, createDrmContextExt and appendDrmContextFlag

Related-To: NEO-6591

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-16 15:15:35 +01:00
Mateusz Jablonski
a59d285fde Add function to create VmControlExtRegion
Related-To: NEO-6591
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-16 10:12:06 +01:00
Mateusz Jablonski
b681b2ae10 Create struct for vm bind params
add ioctl helper function for vm bind and vm unbind

Related-To: NEO-6591
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-15 16:11:11 +01:00
Mateusz Hoppe
b71a12c252 Set cooperative flag for debuggable contexts during creation
Related-To: NEO-6668

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-02-15 16:00:25 +01:00
Mateusz Jablonski
143f67f2fe Enable vm bind availability based on ioctl helper support
Related-To: NEO-6591
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-15 15:27:52 +01:00
Daniel Chabrowski
f7322d3b85 Extend EngineInfo with additional copy engines
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-02-15 15:05:02 +01:00
Mateusz Jablonski
19c7162cf6 Add functions to create and fill VmBindExtSetPat and VmBindExtSyncFence
Related-To: NEO-6591
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-15 14:04:57 +01:00
Mateusz Jablonski
12e2670b9a Add ioctl helper function to check vm bind availability
Related-To: NEO-6591
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-15 12:43:50 +01:00
Mateusz Jablonski
964596e514 Add methods to prepare VM BIND structs
create VmBindExt
setup flags for VM BIND

Related-To: NEO-6591

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-15 09:25:07 +01:00
Mateusz Jablonski
cf27583264 Move createDrmContextExt to drm_neo.cpp
add ioctl helper functions to create dedicated drm contexts

createContextWithAccessCounters
createCooperativeContext

Related-To: NEO-6591

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-15 09:16:36 +01:00
Mateusz Jablonski
173c86d6f1 Move ioctl strings to ioctl helper
move ioctl helper prelim tests with drm to separated file

Related-To: NEO-6591
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-14 10:47:31 +01:00
Mateusz Jablonski
3467bc0994 Extend waitForBind function
use waitUserFence to wait for fence value
move some tests to shared
- ioctl helper tests
- drm memory info tests
- drm cache info

Related-To: NEO-6591
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-02-11 18:52:59 +01:00
Daniel Chabrowski
23999110ed Add prelim DRM page fault allocation check support
Signed-off-by: Daniel Chabrowski daniel.chabrowski@intel.com
Related-To: NEO-6591
2022-02-10 18:57:52 +01:00