refactor: Merge prelim and non-prelim implementations for power

Abstract power set request support based on hw.

Related-To: NEO-10804

Signed-off-by: Bellekallu Rajkiran <bellekallu.rajkiran@intel.com>
This commit is contained in:
Bellekallu Rajkiran
2024-02-15 07:02:37 +00:00
committed by Compute-Runtime-Automation
parent 0f817d1db4
commit 075fae19fd
15 changed files with 786 additions and 2231 deletions

View File

@@ -77,6 +77,7 @@ class SysmanProductHelper {
virtual int32_t getPowerLimitValue(uint64_t value) = 0;
virtual uint64_t setPowerLimitValue(int32_t value) = 0;
virtual zes_limit_unit_t getPowerLimitUnit() = 0;
virtual bool isPowerSetLimitSupported() = 0;
// Diagnostics
virtual bool isDiagnosticsSupported() = 0;

View File

@@ -54,6 +54,7 @@ class SysmanProductHelperHw : public SysmanProductHelper {
int32_t getPowerLimitValue(uint64_t value) override;
uint64_t setPowerLimitValue(int32_t value) override;
zes_limit_unit_t getPowerLimitUnit() override;
bool isPowerSetLimitSupported() override;
// Diagnostics
bool isDiagnosticsSupported() override;

View File

@@ -219,6 +219,11 @@ zes_limit_unit_t SysmanProductHelperHw<gfxProduct>::getPowerLimitUnit() {
return ZES_LIMIT_UNIT_POWER;
}
template <PRODUCT_FAMILY gfxProduct>
bool SysmanProductHelperHw<gfxProduct>::isPowerSetLimitSupported() {
return true;
}
template <PRODUCT_FAMILY gfxProduct>
bool SysmanProductHelperHw<gfxProduct>::isDiagnosticsSupported() {
return false;