Add support for zetSysmanTemperatureGetState API
Change-Id: I8c41cec6e2c7e69489882df7fc05352caef503c7 Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
This commit is contained in:
parent
b156393615
commit
1780cc01e3
|
@ -13,6 +13,10 @@ ze_result_t LinuxTemperatureImp::getSensorTemperature(double *pTemperature) {
|
||||||
return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE;
|
return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool LinuxTemperatureImp::isTempModuleSupported() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
LinuxTemperatureImp::LinuxTemperatureImp(OsSysman *pOsSysman) {
|
LinuxTemperatureImp::LinuxTemperatureImp(OsSysman *pOsSysman) {
|
||||||
LinuxSysmanImp *pLinuxSysmanImp = static_cast<LinuxSysmanImp *>(pOsSysman);
|
LinuxSysmanImp *pLinuxSysmanImp = static_cast<LinuxSysmanImp *>(pOsSysman);
|
||||||
pSysfsAccess = &pLinuxSysmanImp->getSysfsAccess();
|
pSysfsAccess = &pLinuxSysmanImp->getSysfsAccess();
|
||||||
|
|
|
@ -17,6 +17,7 @@ namespace L0 {
|
||||||
class LinuxTemperatureImp : public OsTemperature, public NEO::NonCopyableClass {
|
class LinuxTemperatureImp : public OsTemperature, public NEO::NonCopyableClass {
|
||||||
public:
|
public:
|
||||||
ze_result_t getSensorTemperature(double *pTemperature) override;
|
ze_result_t getSensorTemperature(double *pTemperature) override;
|
||||||
|
bool isTempModuleSupported() override;
|
||||||
LinuxTemperatureImp(OsSysman *pOsSysman);
|
LinuxTemperatureImp(OsSysman *pOsSysman);
|
||||||
LinuxTemperatureImp() = default;
|
LinuxTemperatureImp() = default;
|
||||||
~LinuxTemperatureImp() override = default;
|
~LinuxTemperatureImp() override = default;
|
||||||
|
@ -24,4 +25,4 @@ class LinuxTemperatureImp : public OsTemperature, public NEO::NonCopyableClass {
|
||||||
protected:
|
protected:
|
||||||
SysfsAccess *pSysfsAccess = nullptr;
|
SysfsAccess *pSysfsAccess = nullptr;
|
||||||
};
|
};
|
||||||
} // namespace L0
|
} // namespace L0
|
|
@ -15,8 +15,9 @@ struct OsSysman;
|
||||||
class OsTemperature {
|
class OsTemperature {
|
||||||
public:
|
public:
|
||||||
virtual ze_result_t getSensorTemperature(double *pTemperature) = 0;
|
virtual ze_result_t getSensorTemperature(double *pTemperature) = 0;
|
||||||
|
virtual bool isTempModuleSupported() = 0;
|
||||||
static OsTemperature *create(OsSysman *pOsSysman);
|
static OsTemperature *create(OsSysman *pOsSysman);
|
||||||
virtual ~OsTemperature() = default;
|
virtual ~OsTemperature() = default;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace L0
|
} // namespace L0
|
|
@ -27,6 +27,10 @@ ze_result_t TemperatureImp::temperatureGetState(double *pTemperature) {
|
||||||
return pOsTemperature->getSensorTemperature(pTemperature);
|
return pOsTemperature->getSensorTemperature(pTemperature);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TemperatureImp::init() {
|
||||||
|
this->initSuccess = pOsTemperature->isTempModuleSupported();
|
||||||
|
}
|
||||||
|
|
||||||
TemperatureImp::TemperatureImp(OsSysman *pOsSysman) {
|
TemperatureImp::TemperatureImp(OsSysman *pOsSysman) {
|
||||||
pOsTemperature = OsTemperature::create(pOsSysman);
|
pOsTemperature = OsTemperature::create(pOsSysman);
|
||||||
|
|
||||||
|
|
|
@ -25,6 +25,6 @@ class TemperatureImp : public NEO::NonCopyableClass, public Temperature {
|
||||||
~TemperatureImp() override;
|
~TemperatureImp() override;
|
||||||
|
|
||||||
OsTemperature *pOsTemperature = nullptr;
|
OsTemperature *pOsTemperature = nullptr;
|
||||||
void init() {}
|
void init();
|
||||||
};
|
};
|
||||||
} // namespace L0
|
} // namespace L0
|
||||||
|
|
|
@ -12,12 +12,17 @@ namespace L0 {
|
||||||
class WddmTemperatureImp : public OsTemperature {
|
class WddmTemperatureImp : public OsTemperature {
|
||||||
public:
|
public:
|
||||||
ze_result_t getSensorTemperature(double *pTemperature) override;
|
ze_result_t getSensorTemperature(double *pTemperature) override;
|
||||||
|
bool isTempModuleSupported() override;
|
||||||
};
|
};
|
||||||
|
|
||||||
ze_result_t WddmTemperatureImp::getSensorTemperature(double *pTemperature) {
|
ze_result_t WddmTemperatureImp::getSensorTemperature(double *pTemperature) {
|
||||||
return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE;
|
return ZE_RESULT_ERROR_UNSUPPORTED_FEATURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool WddmTemperatureImp::isTempModuleSupported() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
OsTemperature *OsTemperature::create(OsSysman *pOsSysman) {
|
OsTemperature *OsTemperature::create(OsSysman *pOsSysman) {
|
||||||
WddmTemperatureImp *pWddmTemperatureImp = new WddmTemperatureImp();
|
WddmTemperatureImp *pWddmTemperatureImp = new WddmTemperatureImp();
|
||||||
return static_cast<OsTemperature *>(pWddmTemperatureImp);
|
return static_cast<OsTemperature *>(pWddmTemperatureImp);
|
||||||
|
|
|
@ -40,6 +40,11 @@ class SysmanTemperatureFixture : public DeviceFixture, public ::testing::Test {
|
||||||
DeviceFixture::TearDown();
|
DeviceFixture::TearDown();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
TEST_F(SysmanTemperatureFixture, GivenValidOSTempHandleWhenCheckingForTempSupportThenExpectFalseToBeReturned) {
|
||||||
|
EXPECT_FALSE(pOsTemperature->isTempModuleSupported());
|
||||||
|
}
|
||||||
|
|
||||||
TEST_F(SysmanTemperatureFixture, GivenComponentCountZeroWhenCallingZetSysmanTemperatureGetThenZeroCountIsReturnedAndVerifySysmanTemperatureGetCallSucceeds) {
|
TEST_F(SysmanTemperatureFixture, GivenComponentCountZeroWhenCallingZetSysmanTemperatureGetThenZeroCountIsReturnedAndVerifySysmanTemperatureGetCallSucceeds) {
|
||||||
uint32_t count = 0;
|
uint32_t count = 0;
|
||||||
ze_result_t result = zetSysmanTemperatureGet(hSysman, &count, NULL);
|
ze_result_t result = zetSysmanTemperatureGet(hSysman, &count, NULL);
|
||||||
|
|
Loading…
Reference in New Issue