Commit Graph

530 Commits

Author SHA1 Message Date
Yates, Brandon
12c7f32679 L0 Win Debugger - implement thread control
Resolves: NEO-6722

Signed-off-by: Yates, Brandon <brandon.yates@intel.com>
Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-09-05 19:26:14 +02:00
Mateusz Hoppe
992e8e7c96 L0Debug - fix getISAVMHandle()
- use correct address form when searching Isa map

Resolves: NEO-7312

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-09-05 16:10:13 +02:00
Jitendra Sharma
3212a71760 Debugger L0 Win: Attention event handling from UMD
Related-To: NEO-7261

Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2022-09-02 18:22:41 +02:00
Mateusz Hoppe
ee8af85341 L0Debug fixes for multi tile devices
- notify module allocation for (sub)device used to create module,
makeResident called within (sub)device contexts
- access ISA with vmHandle specific to device index

Related-To: NEO-5784

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-08-31 10:58:28 +02:00
Mateusz Hoppe
e6c0d2d1e8 L0Debug - store and restore events for tile session
- keep track of all loaded modules
- keep track of process entry/exit state
- restore valid events on attach
- acknowledge/clean events on detach

Related-To: NEO-5784

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-08-29 15:35:38 +02:00
Kulkarni, Ashwin Kumar
44649faa0f Defer Sysman Engine Module Initialization
With this change, init for sysman Engine API would not be done during zeInit.
init and thereby Engine API handle creation would be done only
when user explicitly requests to enumerate handles
using zesDeviceEnumEngineGroups

Related-To: LOCI-3127

Signed-off-by: Kulkarni, Ashwin Kumar <ashwin.kumar.kulkarni@intel.com>
2022-08-26 08:41:22 +02:00
Mateusz Jablonski
5a20eccd59 Dont include i915 prelim headers directly
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-08-25 12:26:09 +02:00
Igor Venevtsev
d40173e47a L0Debug Win: Always generate module create/destroy events
We have to always generate module create/destroy events to give
debugger a chance to insert bp, read/write debuggee memory  etc
even there is no debug data was generated. In this case ELF will not be
reported to debugger, just ISA GpuVA

Related-To: NEO-6723

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-08-24 14:58:30 +02:00
Mateusz Hoppe
aa59ee94b2 L0Debug - close debug fd when DebugSession is destroyed
- after last tile DebugSession is detached, root DebugSession
must close fd

Related-To: NEO-5784

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-08-24 14:58:16 +02:00
Mateusz Jablonski
ca0686b404 Unify include directories for i915 headers
include i915_drm_prelim.h using relative path

Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-08-24 14:58:01 +02:00
Mateusz Hoppe
4bd53be195 L0Debug - tile attach - add missing implementation
- interrupt / resume
- read/write registers

Related-To: NEO-5784

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-08-24 07:32:29 +02:00
Mateusz Hoppe
61242205e0 L0Debug - tile attach implementation
- PROCESS ENTRY/EXIT events
- MODULE events
- DETACH event
- memory access

Related-To: NEO-5784

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-08-18 13:38:51 +02:00
Wrobel, Patryk
dda5b19859 Adjust the implementation of strncpy_s() for Linux
This change:
- prevents writing memory out of the range of the destination buffer
- prevents calling strlen() with non-null terminated c-string
- corrects the logic, which validates passed range to proceed
when real length fits the destination buffer

Related-To: NEO-7264
Signed-off-by: Wrobel, Patryk <patryk.wrobel@intel.com>
2022-08-17 18:37:46 +02:00
Mateusz Hoppe
2a5bca380d L0Debug - tile debug session - initial changes
Related-To: NEO-5784

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-08-16 10:44:12 +02:00
Joshua Santosh Ranjan
cf67f1aa8b L0 Metrics: Fix bytes to be read to be a multiple of raw report size
If raw report size is not a multiple of OaBufferSize, then
make sure the bytes to be read (by zetMetricStreamerReadData)
is always a multiple of raw report size.

Related-To: LOCI-3335

Signed-off-by: Joshua Santosh Ranjan <joshua.santosh.ranjan@intel.com>
2022-08-16 06:16:27 +02:00
Yates, Brandon
dbf955c1f2 L0 win debugger - implement read elf
Signed-off-by: Yates, Brandon <brandon.yates@intel.com>
2022-08-11 16:16:21 +02:00
Mateusz Hoppe
bc605f413c L0Debug - split acking general events from isa events
- allow to pass deviceIndex when acking isa events,
used with per-tile isa

Related-To: NEO-5784

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-08-11 13:11:55 +02:00
Mateusz Hoppe
3a2d3b9274 L0Debug refactor - move eventsToAck out from ClientConnection
- events to ack are unrelated to client handle

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-08-09 19:52:17 +02:00
Mateusz Hoppe
869768a01a L0Debug refactor - make memory access steps clear and simple
- split isa, elf and default mem access to separate steps

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-08-09 18:04:38 +02:00
Mateusz Jablonski
daf1bd4501 Refactor: pass properties by const reference instead of by value
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-08-09 15:55:07 +02:00
Mateusz Hoppe
52133e61ce L0Debug - per tile isa and modules in debug session
Related-To: NEO-5784

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-08-08 15:46:56 +02:00
Mayank Raghuwanshi
f833dc0291 Add sysman Firmware support for windows
Related-To: LOCI-3226

Signed-off-by: Mayank Raghuwanshi <mayank.raghuwanshi@intel.com>
2022-08-05 13:22:11 +02:00
davidoli
d7c43d022a Improve GtPin init error status reporting
Related-To: LOCI-1286

Signed-off-by: davidoli <david.olien@intel.com>
2022-08-05 04:18:07 +02:00
Kulkarni, Ashwin Kumar
1898a82317 Defer Sysman Scheduler and Memory Initialization
With this change, init for sysman Scheduler/Memory API would
not be done during zeInit.
init and thereby Scheduler/Memory API handle creation would be done
only when user explicitly requests to enumerate handles
using zesDeviceEnumSchedulers/zesDeviceEnumMemory.

Related-To: LOCI-3127

Signed-off-by: Kulkarni, Ashwin Kumar <ashwin.kumar.kulkarni@intel.com>
2022-08-03 23:35:54 +02:00
Mayank Raghuwanshi
94177389f9 Update memory transaction size for sysman memory module
Related-To: LOCI-3142

Signed-off-by: Mayank Raghuwanshi <mayank.raghuwanshi@intel.com>
2022-08-03 11:46:14 +02:00
Kulkarni, Ashwin Kumar
cf55a92b79 Defer Sysman PCI, Global operations and Events Module Initialization
With this change, init for sysman PCI, Global operations and Events
API would not be done during zeInit.
init and thereby PCI, Global operations and Events API handle creation
would be done implicitly only when user explicitly calls any APIs.

Related-To: LOCI-3127

Signed-off-by: Kulkarni, Ashwin Kumar <ashwin.kumar.kulkarni@intel.com>
2022-08-02 08:56:04 +02:00
Bellekallu Rajkiran
f23f78e2cc Add support for extended power properties
Related-To: LOCI-3242

Signed-off-by: Bellekallu Rajkiran <bellekallu.rajkiran@intel.com>
2022-08-01 13:02:49 +02:00
Kamil Kopryk
582ed0565b Use memcpy_s instead of memcpy
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-08-01 12:43:29 +02:00
Bellekallu Rajkiran
d02b45c9b9 Add support for power limit ext functions
Add support for getPowerLimitsExt and
setPowerLimitsExt functions.

Related-To: LOCI-3125, LOCI-3193

Signed-off-by: Bellekallu Rajkiran <bellekallu.rajkiran@intel.com>
2022-07-28 16:40:33 +02:00
Igor Venevtsev
4cb9ad5d55 Debugger L0 Win: implement module destroy event
Related-To: NEO-6723

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-07-28 15:55:40 +02:00
Mayank Raghuwanshi
e135c0ba82 Update sysfs node to read the memory freq file
Signed-off-by: Mayank Raghuwanshi <mayank.raghuwanshi@intel.com>
2022-07-26 10:31:24 +02:00
Kamil Kopryk
d4d54f5093 Cleanup includes
Signed-off-by: Kamil Kopryk <kamil.kopryk@intel.com>
2022-07-25 09:58:38 +02:00
Kulkarni, Ashwin Kumar
137959c647 Defer Sysman Power and Performance Module Initialization
With this change, init for sysman Power/Performance API would
not be done during zeInit.
init and thereby Power/Performance API handle creation would be done
only when user explicitly requests to enumerate handles
using zesDeviceEnumPowerDomains/zesDeviceEnumPerformanceFactorDomains.

Related-To: LOCI-3127

Signed-off-by: Kulkarni, Ashwin Kumar <ashwin.kumar.kulkarni@intel.com>
2022-07-25 08:17:46 +02:00
Igor Venevtsev
d79e799bea Debugger L0 win: implement zetAcknowledgeEvent API
Related-To: NEO-6723

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-07-22 16:46:27 +02:00
Mateusz Hoppe
4da6f65d1a L0Debug - Notify cmdQueue create for subdevices
- PROCESS ENTRY triggered for first cmdQ created

Related-To: NEO-5784
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-07-22 16:08:41 +02:00
Kulkarni, Ashwin Kumar
2d8176fdbd Defer Sysman Fabric Port and Fan Module Initialization
With this change, init for sysman Fabric Port/Fan API would
not be done during zeInit.
init and thereby Fabric Port/Fan API handle creation would be done
only when user explicitly requests to enumerate handles
using zesDeviceEnumFabricPorts/zesDeviceEnumFans.

Also, ECC module init calls are cleared as they are no longer needed.

Related-To: LOCI-3127

Signed-off-by: Kulkarni, Ashwin Kumar <ashwin.kumar.kulkarni@intel.com>
2022-07-22 02:23:17 +02:00
Compute-Runtime-Validation
5199ea257d Revert "L0Debug - Notify cmdQueue create for subdevices"
This reverts commit ebcb3faad2.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-07-21 18:50:20 +02:00
Mateusz Hoppe
20364ca1b5 L0Debug - refactor ISA and Elf access
- reorganize code to mke possible extracting to separate functions

Related-To: NEO-5784

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-07-21 13:02:38 +02:00
Mateusz Hoppe
ebcb3faad2 L0Debug - Notify cmdQueue create for subdevices
- PROCESS ENTRY triggered for first cmdQ created

Related-To: NEO-5784

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-07-20 15:13:06 +02:00
Igor Venevtsev
547dd59272 Debugger L0 Win: Implement CREATE_DEBUG_DATA/MODULE_CREATE events handling
Related-To: NEO-6723

Signed-off-by: Igor Venevtsev <igor.venevtsev@intel.com>
2022-07-20 13:20:50 +02:00
Mateusz Jablonski
a4e9ede440 Dont use global namespaces of i915 definitions
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-07-19 13:17:59 +02:00
Jitendra Sharma
4a8a93af96 Debugger L0 Win - Generate Proc Entry/Exit events
Related-To: NEO-7117

Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2022-07-18 12:32:57 +02:00
Mateusz Jablonski
78c96db2fa Create wrappers for different version of i915 headers
Related-To: NEO-6852
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2022-07-18 10:15:44 +02:00
Compute-Runtime-Validation
56a264a33d Revert "Defer Sysman Scheduler and Memory Module Initialization"
This reverts commit e1748ad436.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2022-07-18 08:19:58 +02:00
Kulkarni, Ashwin Kumar
aadf424476 Defer Sysman Standby Module Initialization
With this change, init for sysman Standby API would not be done during zeInit.
Rather init and thereby Standby API handle creation would be done only
when user explicitly requests to enumerate handles
using zesDeviceEnumStandbyDomains.

Related-To: LOCI-3127

Signed-off-by: Kulkarni, Ashwin Kumar <ashwin.kumar.kulkarni@intel.com>
2022-07-15 23:14:54 +02:00
Kulkarni, Ashwin Kumar
e1748ad436 Defer Sysman Scheduler and Memory Module Initialization
With this change, init for sysman Scheduler/Memory API would
not be done during zeInit.
init and thereby Scheduler/Memory API handle creation would be done
only when user explicitly requests to enumerate handles
using zesDeviceEnumSchedulers/zesDeviceEnumMemory.

Related-To: LOCI-3127

Signed-off-by: Kulkarni, Ashwin Kumar <ashwin.kumar.kulkarni@intel.com>
2022-07-15 20:36:03 +02:00
Kulkarni, Ashwin Kumar
e58bc1ca86 Defer Sysman Temperature Module Initialization
With this change, init for sysman Temperature API would not be done
during zeInit.
Rather init and thereby Temperature API handle creation would be done
only when user explicitly requests to enumerate handles
using zesDeviceEnumTemperatureSensors.

Modification to temperature ULTs

Related-To: LOCI-3127

Signed-off-by: Kulkarni, Ashwin Kumar <ashwin.kumar.kulkarni@intel.com>
2022-07-15 20:23:55 +02:00
Mateusz Hoppe
023f9df999 L0Debug - move apiEvents queue to DebugSessionImp
- the logic of reading api events is OS agnostic

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-07-15 16:19:38 +02:00
Mateusz Hoppe
bd07b3ec97 L0Debug refactor: Replace ze_device_thread_t with EuThread::ThreadId
- ThreadId is preferred beacuse it uniquely identifies thread and is
not related to device topology

Related-To: NEO-5784

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-07-14 20:01:56 +02:00
Mateusz Hoppe
b89ebb3dd2 L0Debug: Fix for possible crash while passing set of threads
- zetDebugRead/WriteRegisters() only accept single thread

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2022-07-14 18:35:40 +02:00