Commit Graph

222 Commits

Author SHA1 Message Date
Vilvaraj, T J Vivek
3c50e1ede6 fix unintialized class member in Ctor.
Change-Id: Idc3e8a2ddccaf9c94639a3f499824e86de830fd4
2020-07-07 21:48:18 +02:00
Bill Jordan
c7d584b8ec Added boilerplate implementation of Sysman FabricPort
Change-Id: Icb8db2b1bac7858fd07470506c17f5cc38f34581
Signed-off-by: Bill Jordan <bill.jordan@intel.com>
2020-07-07 13:42:02 -04:00
macabral
e08022e9c7 Support for Platform Monitoring Technology
Add support for Platform Monitoring Technology,
and read temperature and energy counters.

Change-Id: Ic2c79e902400148cc538267c498fc1d0185c81f8
Signed-off-by: Matias Cabral <matias.a.cabral@intel.com>
2020-07-02 19:41:06 +02:00
T.J. Vivek Vilvaraj
96a7b1e066 add rules to install RAS udev rules
- create rules to install Udev rules in configurable location
- create files relating to RAS counters

Change-Id: Iebd57ba2dd09494ea4586b305cd56c86a71fb8b0
2020-07-02 10:25:21 +02:00
Mateusz Jablonski
c6239968a5 Fix typos:
preffered -> preferred
deffered -> deferred

Change-Id: I1b87861590c273d7fcda5bf0c5a772bf36e1bc74
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2020-06-25 19:17:41 +02:00
Jitendra Sharma
c43759cc48 Cleanup and fixes in sysman source
In this Change:
 - Initialize local variables used in pci source.
 - Move setting of temperature handle's type to constructor of
   TemperatureImp class as temperature handle's type is used in
   init() of TemperatureImp class.
 - Allow only ENOENT  errno at the end of FsAccess::listDirectory function.
   Because in this function all directory entries will be read in a
   loop. And loop will exit only after readdir() finished reading
   all entries in directory and thus readdir() will exit, when it fails
   reading any further entry. Thus system will return ENOENT for readdir.

Change-Id: Ibd3ac3f841b114fd87edea1410750b33f3a14e5b
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-06-25 18:32:33 +02:00
Vilvaraj, T J Vivek
0c9c55cd17 add counter support for RAS.
- added dual handle support for RAS Correctable and Uncorrectable Errors.
- added reset counter for RAS.
- added Os Specific ULT for RAS

Change-Id: Ia10115bf6720ab211f549571e810ec0d6c0801ec
2020-06-25 08:48:11 +02:00
Jitendra Sharma
251994149a Expose DRM interface to sysman APIs
Change-Id: Iab4d42cf90c9804c2b036045f3990aedd31efa91
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-06-24 16:40:49 +02:00
Spruit, Neil R
e1d9f92b94 Fixed Global Driver to be void * with library unload driver cleanup
- Changed Global Driver to be a void * to avoid auto add of Global
Driver Destructor to run before destruction of other L0 data structures
that might be enqueued to destory in static object destructors.
- Added register of library unload driverdestructor to cleanup
driver/device as the last destructor run.

Change-Id: I8ba6c5c27424b942a86a2613edd52fc682ab1c64
Signed-off-by: Spruit, Neil R <neil.r.spruit@intel.com>
2020-06-22 12:59:03 +02:00
SaiKishore Konda
1a90061d54 Updating Sysman Power APIs for Set/Get thresholds
- APIs zetSysmanPowerGetEnergyThreshold & zetSysmanPowerSetEnergyThreshold

Change-Id: I052d4df989bc02549936cff5b0f9a801a34e320b
Signed-off-by: SaiKishore Konda <saikishore.konda@intel.com>
2020-06-19 08:55:13 +02:00
mraghuwa
fea3c94772 Retrieve system default values for sysman scheduler
Change-Id: Ia547493e88656ad840b935487e52bc67fa806ebb
2020-06-19 06:53:11 +02:00
Jitendra Sharma
1618a25d71 Fix error returning to user from zetSysmanProcessesGetState API
If after reading clients directory, while actually trying to
access the individual clients file, we receive a error
ZET_RESULT_ERROR_NOT_AVAILABLE, then it means that this process/client
might be killed/removed. Hence dont return error to user.
Instead simply skip that client's traversal further and move on
to next available client.

Change-Id: If86610a89d7b2421fd85560e5a223391b76d78a0
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-06-17 07:02:35 +02:00
Jitendra Sharma
b558c9ca30 Retrieve Temperature for multiple sensors
Create two handles for Global and Compute temperature
sensors.

Change-Id: I5da90135a803df71372c9c4be9dc891ca64fc214
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-06-16 05:52:14 +02:00
davidoli
95aaac204d Add missing mutex for retired tracers iterator
Change-Id: I795d353f66628a89fc3054f9622640deef1e18c7
Signed-off-by: davidoli <david.olien@intel.com>
2020-06-11 11:24:17 -07:00
Jitendra Sharma
8dff60b6a5 Report correct PCI width from API zetSysmanPciGetProperties
If system reports incorrect PCI width, then check width against valid
value, and report correct PCI width accordingly.

Change-Id: I56f8fe96785ccd22032860d55dd96b81d5fc53f7
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-06-08 19:34:51 +02:00
SaiKishore Konda
16ee26f20d Add support for zetPowerGetEnergyCounter
Change-Id: I497e025690401ced668d653db4e0052852b6e570
Signed-off-by: SaiKishore Konda <saikishore.konda@intel.com>
2020-06-08 17:40:49 +02:00
Mraghuwa
46b069b9d0 Redesign ULT by mocking sysfs and implementing for memory
Change-Id: I24206628212284f180fe4e5a239ab2ed58ffa8ea
2020-06-04 23:07:42 +02:00
Jaime Arteaga
935e30322a Avoid searching for active tracers when tracer data is null
Change-Id: I1f4c8932cc6ed9668054e348f5d282bfe794f161
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-06-02 23:58:30 +02:00
Jitendra Sharma
1780cc01e3 Add support for zetSysmanTemperatureGetState API
Change-Id: I8c41cec6e2c7e69489882df7fc05352caef503c7
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-06-02 22:57:45 +02:00
Mraghuwa
b6ccfed471 Redesign ULT by mocking sysfs and implementing for pci
Change-Id: I5ee2219208d05c125d1fce1a4a5b992bc8c4646e
2020-06-02 08:46:10 +02:00
davidoli
c18939c7aa Simple fix for potential memory leak.
Change-Id: I3cb96ce810e5cd83fe3ce55182f39c6fc2264629
Signed-off-by: davidoli <david.olien@intel.com>
2020-05-30 00:39:41 +02:00
Piotr Maciejewski
79c14983cb Sending Metric Tracer activity flag to Metrics Library.
Needed to make Metrics Library aware of Metric Tracer presence.

Change-Id: I3e3108e6b303adfcf5ab56ccadc2a8acc58f7ff5
2020-05-28 09:55:32 +02:00
macabral
86105d7e77 Disable copying Linux OS sysman class
Update the Linux os class not allow copying
by usage of  NEO::NonCopyableClass.

Change-Id: Icc0d40eaa83d7a46ec0d48a5fc9deb5c57c0e3f8
Signed-off-by: macabral <matias.a.cabral@intel.com>
2020-05-26 11:37:52 -07:00
Robert Krzemien
9b3dd97f81 Passing drm file descriptor to Metrics Library
Change-Id: I16b566ba262e0eeff9cb62b2a6ecc48811cdee48
Signed-off-by: Robert Krzemien <robert.krzemien@intel.com>
2020-05-21 18:33:51 +02:00
Jitendra Sharma
68084042e5 add support for zetSysmanTemperatureGetState
-- add ULT support to validate temperature APIs.

Change-Id: I32bb576f81859f0f7ee22f9a63b0d1a8f192f790
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-05-20 07:50:49 +02:00
SaiKishore Konda
80f9b5e45a add support for zetSysmanPowerGetEnergyCounter
-- add ULT support for power

Change-Id: I37ebebb62c3433a1efe106d6b6546955a2d6effb
Signed-off-by: SaiKishore Konda <saikishore.konda@intel.com>
2020-05-19 19:20:36 +02:00
Jitendra Sharma
135851e218 Fixes for APIs zetSysmanDeviceGetProperties and zetSysmanProcessesGetState
This change:
 - Fixes the problem of last character truncted from strings returned
   by zetSysmanDeviceGetProperties() API.
 - Fix ULT to validate them.
 - Return UNSUPPORTED_FEATURE in case zetSysmanProcessesGetState()
   fails to find required sysfs nodes in filesystem.

Change-Id: I4b18688c13b1971a1654a41a5a0ef1949330ed10
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-05-19 18:47:41 +02:00
davidoli
a1c06bd8c8 Add code for GTPin handshake at init time.
Change-Id: I1f572d9e036d4d5b5c6999518d40c9c4ba094649
Signed-off-by: davidoli <david.olien@intel.com>
2020-05-18 21:18:03 +02:00
Mraghuwa
b9b34659c8 Redesign ULT by mocking sysfs and implementing for frequency
Change-Id: I5979132fc775fe227ed83f4d49f932f4ce2800cc
2020-05-15 22:36:40 +02:00
Piotr Maciejewski
8f70ba916a Disable Metrics Library after Metric Tracer usage.
Metric Tracer can use Metrics Library to generate gpu commands 
for Metric Tracer marker. Closing Metrics Library will force it to reintialize,
so Metric Query can use Linux time based sampling stream exclusively 
(needed to activate metric set or to obtain context switch/triggered reports).

Change-Id: I3105febfbbd78b537ef0688d1b9c08ab54f9a875
2020-05-15 22:13:18 +02:00
Mraghuwa
070c9b060b Redesign ULT by mocking sysfs and implementing for standby
Change-Id: Id2558122406f23e96e3115d57e7b82d04463bfc4
2020-05-14 19:41:28 +02:00
Jitendra Sharma
596c1a8e70 Implement zetSysmanProcessesGetState API
This change does the following:
 - Implement API zetSysmanProcessesGetState.
 - Implement ULT to validate zetSysmanProcessesGetState's implementation
 - Redesign ULTs for zetSysmanDeviceGetProperties to mock only OS specific
   classes, and validate zetSysmanDeviceGetProperties's implementation end
   to end.
 - Some bug fixes in code that are caught by these new ULTs

Change-Id: I4a83789771d32978576ff62859628df2c0c795ad
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-05-14 19:33:46 +02:00
Piotr Maciejewski
982c26202b Metric query/tracer fixes.
1. Disable oa configuration cache on Linux.
2. Do not allow to create mertic query during tracer usage and vice versa.

Change-Id: I139416a92ac8604c8b46b254b533abf6038c2351
2020-05-12 22:58:22 +02:00
Jitendra Sharma
fe719f2665 Redesign ULT by mocking sysfs and implementing for scheduler
- Redesign the ULT to implement OSSpecific ULT by mocking only sysfs
- Fixing the Engine type "RCS" to use by default

Change-Id: I551374ab02da03fe2e4168fd6a30aa8ccaf3dd3e
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-05-12 21:02:45 +02:00
SaiKishore Konda
fda985aa0e Engine OSspecific ULT implementation
- by Mocking sysfs class and implementing OSSpecific(Linux)

Change-Id: I2eabf24e44e92b72e73bc323206776440b330b83
Signed-off-by: SaiKishore Konda <saikishore.konda@intel.com>
2020-05-12 18:18:37 +02:00
Bill Jordan
b3b67c39b3 Implement zetSysmanFrequencyGetAvailableClocks.
Change-Id: Idb8e9edd89f3d3e228fb51501ae51a872bb60d23
Signed-off-by: Bill Jordan <bill.jordan@intel.com>
2020-05-08 19:03:03 +02:00
SaiKishore Konda
7c1eaadf50 Engine Sysman APIs using RCS Engine
- Fixing the engine sysfs node path
- Using default engine as RCS (compute) engine for engine APIs
- Updating the ULT for the same

Change-Id: If11aea422ac7e73b7f5fd0bc30d0918915d73848
Signed-off-by: SaiKishore Konda <saikishore.konda@intel.com>
2020-05-08 18:15:24 +02:00
Vilvaraj, T J Vivek
98c6e85ae9 fixes for RAS implementation class
- add default constructor
- fix init function to be a public method

Change-Id: I9e9c3c0d1305497f030f44a1f50b2499b93d3e0c
Signed-off-by: Vilvaraj, T J Vivek <t.j.vivek.vilvaraj@intel.com>
2020-05-01 21:25:48 +02:00
Jaime Arteaga
e9b93010cc Some cleanup in Level Zero metrics
Change-Id: Ib9818eebdae8550973a75f44182480ca7412f6b6
Signed-off: Jaime Arteaga <jaime.a.arteaga.molina@intel.com>
2020-04-30 21:16:23 +02:00
Vilvaraj, T J Vivek
5c029b4471 Implement RAS APIs
- Implemented zetSysmanGetProperties
- Implemented zetSysmanGetState

Change-Id: Id40a1cb036693156c31c6e9ee78c3113ef35e5c2
Signed-off-by: Vilvaraj, T J Vivek <t.j.vivek.vilvaraj@intel.com>
2020-04-29 18:03:05 +02:00
Konda
610662dbd8 Power APIs boilerplate for Level Zero Sysman
- boilerplate for following power APIs
-zetSysmanPowerGet
-zetSysmanPowerGetProperties
-zetSysmanPowerGetEnergyCounter
-zetSysmanPowerGetLimits
-zetSysmanPowerSetLimits
-zetSysmanPowerGetEnergyThreshold
-zetSysmanPowerSetEnergyThreshold

Change-Id: I6350d869da9a64424b197ce16ac008224405a65d
Signed-off-by: Konda <saikishore.konda@intel.com>
Signed-off-by: SaiKishore Konda <saikishore.konda@intel.com>
2020-04-28 19:53:57 +02:00
SaiKishore Konda
f3217b5d1a Cleanup Level zero Tools Sysman code
- removing the ULT specific constructors

Change-Id: Ieaee9ab72c144d5f5794f6bc023c2f14df2a7b0b
Signed-off-by: SaiKishore Konda <saikishore.konda@intel.com>
2020-04-28 08:53:53 +02:00
Jitendra Sharma
e83e9bd114 Temperature API's boilerplate for Level Zero Sysman
Change-Id: I0573ed2ce36d8c94c6a0e1c32644f8050b6b8d5c
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-04-27 21:10:10 +02:00
Vilvaraj, T J Vivek
749e59fc54 Implement RAS APIs
- Implement zetSysmanRasGet API

Change-Id: Ic2a82ceac2619cd1955d4e39924228f94ecd42dd
2020-04-22 18:40:28 +02:00
Jitendra Sharma
5374a0ffc1 Implement scheduler APIs
Add logic to implement following scheduler APIs
-zetSysmanSchedulerGetCurrentMode
-zetSysmanSchedulerGetTimeoutModeProperties
-zetSysmanSchedulerGetTimesliceModeProperties
-zetSysmanSchedulerSetTimeoutMode
-zetSysmanSchedulerSetTimesliceMode
-zetSysmanSchedulerSetExclusiveMode

Change-Id: I134b200ffd6b13bc50b1f38e955dd584455b4b38
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-04-22 20:26:57 +05:30
SaiKishore Konda
ce6828d374 Adding default constructor for Memory, Engine
- adding default constructor
- updating the member variables of engine, memory imp classes

Change-Id: I635858593aa53f4d56044df377286e72898ecbc4
Signed-off-by: SaiKishore Konda <saikishore.konda@intel.com>
2020-04-22 15:02:50 +02:00
Vilvaraj, T J Vivek
324b1f5c60 RAS APIs boilerplate for Level Zero Sysman.
-Implement zetSysmanRasGet API

Change-Id: Ib06e4a5d087a1e684c918413c3d98da2082e4f91
Signed-off-by: Vilvaraj, T J Vivek <t.j.vivek.vilvaraj@intel.com>
2020-04-21 20:04:53 +02:00
maciejew
e35f55361f Change Metrics Library binary filename to 'libigdml.so'
Change-Id: I559c772083f615219f7db64fc0105f20c13e62e5
2020-04-20 09:40:48 +02:00
SaiKishore Konda
3c2e98e22f Implement Engine APIs
Add logic to implement the following Engine APIs
-zetSysmanEngineGet
-zetSysmanEngineGetProperties
-zetSysmanEngineGetActivity

Change-Id: I48fe1d73b7449c80304df09537024cdcfe4e0387
Signed-off-by: SaiKishore Konda <saikishore.konda@intel.com>
2020-04-18 01:28:27 -04:00
SaiKishore Konda
ab9f7b4c53 Engine API's boilerplate for Level Zero Sysman
Change-Id: Ib73b419b53f96a71c1d604cf0091792b33c7fae1
Signed-off-by: SaiKishore Konda <saikishore.konda@intel.com>
2020-04-15 17:31:05 +02:00