Commit Graph

86 Commits

Author SHA1 Message Date
Bill Jordan 6fc66a82cb More boilerplate for FabricPorts.
Added a FabricDevice object that all FabricPort objects have access
to. Although we don't provide library routines for the user to
access a FabricDevice level object, one exists. And the FabricPort
objects will need to coordinate with the device level object
to get perform operations.

Change-Id: Ief307a312187e8bc5c566bcf4af5b50ecc171aee
Signed-off-by: Bill Jordan <bill.jordan@intel.com>
2020-07-24 19:05:28 +02:00
Robert Krzemien 59ffe4ba4b Metric Api: Return apprioprate error when dependencies not met
Change-Id: Ie47a69c4bf80004f7fbc1b91e2025d498e4bda6a
Signed-off-by: Robert Krzemien <robert.krzemien@intel.com>
2020-07-22 22:44:53 +02:00
Jitendra Sharma a0c22dec2d Update sysman power APIs to support latest spec
Change-Id: I4631a73c44d918db9421ceb394c71ffa8ca514ca
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-07-22 22:26:28 +02:00
SaiKishore Konda be6ea36769 Implementing zetSysmanMemoryGetState
- zetSysmanMemoryGetState api Implementation
- Corresponding ULT for validation

Change-Id: I2dcd53af4dd0f7cd3e19f594d70fefe21d2206e7
Signed-off-by: SaiKishore Konda <saikishore.konda@intel.com>
2020-07-22 14:10:14 +02:00
Bill Jordan 6e20dfafab Added limited XML parsing capability to L0 Sysman using libxml2.
XML parsing for linux only, hanging off the OsSysmanImp object.

Change-Id: I473dc8dde0611cc13f38a2c0b59e839fced2e59e
Signed-off-by: Bill Jordan <bill.jordan@intel.com>
2020-07-16 12:12:45 -07:00
T.J. Vivek Vilvaraj 6224db771a PCI driver fix for Discrete devices
Change-Id: I91e444c88b5e72463c7f181ece535da4150a2665
Signed-off-by: Vilvaraj, T J Vivek <t.j.vivek.vilvaraj@intel.com>
2020-07-15 23:33:59 +02:00
Vilvaraj, T J Vivek ce781fe9ce Add Per Client Memory info to GetProcessState
Change-Id: Ifa181bce7701a97a46474f0668f0e6bf9d738ac3
Signed-off-by: Vilvaraj, T J Vivek <t.j.vivek.vilvaraj@intel.com>
2020-07-14 21:07:37 +02:00
Robert Krzemien 5d5a266339 Metric Api: get query report slot fix
Change-Id: Ib654f756159d2fe8eb6381be7debd08e2261e320
Signed-off-by: Robert Krzemien <robert.krzemien@intel.com>
2020-07-14 13:48:16 +02:00
Jitendra Sharma 92b15507b0 Initialize variables and validate pointers before actually using them
Change-Id: Iae6fbeac124e1a02da419f5071e1ebc292b390cf
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-07-14 11:17:58 +02:00
davidoli f70882c684 Move tracing files to experimental directories
Remove need for zetInit call for tracing

Change-Id: Icbb75d8f52e2f9107e5308fd0c99415ea1e227f6
Signed-off-by: davidoli <david.olien@intel.com>
2020-07-14 00:31:22 +02:00
Andrzej Swierczynski 77f50e5444 Always pass device bitfield to AllocationProperties in constructor
Related-To: NEO-4722

Change-Id: Ie2475bf92a3189bcb9073bec5bf5af709e597c5d
Signed-off-by: Andrzej Swierczynski <andrzej.swierczynski@intel.com>
2020-07-13 09:00:10 +02:00
Jitendra Sharma 146fc900c3 Add initial sysman stub as per latest spec
Change-Id: I6f36b9faa21e05a6954de0b50ea01240539441d1
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2020-07-11 06:54:08 +05:30
Bill Jordan e8bd440773 Don't allow copy or moving Sysman related objects.
Change-Id: I70dd97bffa1c4d08f05eb796c6d6a2eb66f06f4b
Signed-off-by: Bill Jordan <bill.jordan@intel.com>
2020-07-10 21:05:15 +02:00
mraghuwa 357fef0ff0 Refactor file access in sysman
Change-Id: I9603c96658430064a1d68b901586171c8ba52803
Signed-off-by: mraghuwa <mayank.raghuwanshi@intel.com>
2020-07-08 08:32:02 +02:00
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