mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-09 22:43:00 +08:00
Update Sysman frequency API as per latest spec
Change-Id: I5bfdb5e5681e9cfa054f48cf8cc4fd8e76740958 Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
This commit is contained in:
committed by
sys_ocldev
parent
887f52d9de
commit
70babc4b69
@@ -8,15 +8,23 @@
|
||||
#pragma once
|
||||
#include <level_zero/zet_api.h>
|
||||
|
||||
#include "third_party/level_zero/zes_api_ext.h"
|
||||
|
||||
#include <vector>
|
||||
|
||||
struct _zet_sysman_freq_handle_t {};
|
||||
struct _zet_sysman_freq_handle_t {
|
||||
virtual ~_zet_sysman_freq_handle_t() = default;
|
||||
};
|
||||
|
||||
struct _zes_freq_handle_t {
|
||||
virtual ~_zes_freq_handle_t() = default;
|
||||
};
|
||||
|
||||
namespace L0 {
|
||||
|
||||
struct OsSysman;
|
||||
|
||||
class Frequency : _zet_sysman_freq_handle_t {
|
||||
class Frequency : _zet_sysman_freq_handle_t, _zes_freq_handle_t {
|
||||
public:
|
||||
virtual ~Frequency() {}
|
||||
virtual ze_result_t frequencyGetProperties(zet_freq_properties_t *pProperties) = 0;
|
||||
@@ -25,10 +33,20 @@ class Frequency : _zet_sysman_freq_handle_t {
|
||||
virtual ze_result_t frequencySetRange(const zet_freq_range_t *pLimits) = 0;
|
||||
virtual ze_result_t frequencyGetState(zet_freq_state_t *pState) = 0;
|
||||
|
||||
virtual ze_result_t frequencyGetProperties(zes_freq_properties_t *pProperties) = 0;
|
||||
virtual ze_result_t frequencyGetRange(zes_freq_range_t *pLimits) = 0;
|
||||
virtual ze_result_t frequencySetRange(const zes_freq_range_t *pLimits) = 0;
|
||||
virtual ze_result_t frequencyGetState(zes_freq_state_t *pState) = 0;
|
||||
virtual ze_result_t frequencyGetThrottleTime(zes_freq_throttle_time_t *pThrottleTime) = 0;
|
||||
|
||||
static Frequency *fromHandle(zet_sysman_freq_handle_t handle) {
|
||||
return static_cast<Frequency *>(handle);
|
||||
}
|
||||
static Frequency *fromHandle(zes_freq_handle_t handle) {
|
||||
return static_cast<Frequency *>(handle);
|
||||
}
|
||||
inline zet_sysman_freq_handle_t toHandle() { return this; }
|
||||
inline zes_freq_handle_t toZesFreqHandle() { return this; }
|
||||
};
|
||||
|
||||
struct FrequencyHandleContext {
|
||||
@@ -38,6 +56,7 @@ struct FrequencyHandleContext {
|
||||
ze_result_t init();
|
||||
|
||||
ze_result_t frequencyGet(uint32_t *pCount, zet_sysman_freq_handle_t *phFrequency);
|
||||
ze_result_t frequencyGet(uint32_t *pCount, zes_freq_handle_t *phFrequency);
|
||||
|
||||
OsSysman *pOsSysman;
|
||||
std::vector<Frequency *> handle_list = {};
|
||||
|
||||
Reference in New Issue
Block a user