From ff7089295ab5c0a3f4ae54a246b0a3030c5f5136 Mon Sep 17 00:00:00 2001 From: AleX Pelosi Date: Fri, 17 Feb 2023 01:39:21 +0000 Subject: [PATCH] BatteryMonitor: batteryStateOfHealth should be a property Bug: 251427118 Test: m Change-Id: I21bcd160f51cf8818d0c3c8c54c615314808e586 Signed-off-by: AleX Pelosi --- healthd/BatteryMonitor.cpp | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/healthd/BatteryMonitor.cpp b/healthd/BatteryMonitor.cpp index b180a58fe..66e1e63ef 100644 --- a/healthd/BatteryMonitor.cpp +++ b/healthd/BatteryMonitor.cpp @@ -392,12 +392,13 @@ void BatteryMonitor::updateValues(void) { mHealthInfo->batteryFullChargeDesignCapacityUah = getIntField(mHealthdConfig->batteryFullChargeDesignCapacityUahPath); - if (!mHealthdConfig->batteryStateOfHealthPath.isEmpty()) - mHealthInfo->batteryStateOfHealth = getIntField(mHealthdConfig->batteryStateOfHealthPath); - if (!mHealthdConfig->batteryHealthStatusPath.isEmpty()) mBatteryHealthStatus = getIntField(mHealthdConfig->batteryHealthStatusPath); + if (!mHealthdConfig->batteryStateOfHealthPath.isEmpty()) + mHealthInfo->batteryHealthData->batteryStateOfHealth = + getIntField(mHealthdConfig->batteryStateOfHealthPath); + if (!mHealthdConfig->batteryManufacturingDatePath.isEmpty()) mHealthInfo->batteryHealthData->batteryManufacturingDateSeconds = getIntField(mHealthdConfig->batteryManufacturingDatePath); @@ -591,6 +592,10 @@ int BatteryMonitor::getBatteryHealthData(int id) { if (!mHealthdConfig->batteryFirstUsageDatePath.isEmpty()) return getIntField(mHealthdConfig->batteryFirstUsageDatePath); } + if (id == BATTERY_PROP_STATE_OF_HEALTH) { + if (!mHealthdConfig->batteryStateOfHealthPath.isEmpty()) + return getIntField(mHealthdConfig->batteryStateOfHealthPath); + } return 0; } @@ -669,6 +674,11 @@ status_t BatteryMonitor::getProperty(int id, struct BatteryProperty *val) { ret = OK; break; + case BATTERY_PROP_STATE_OF_HEALTH: + val->valueInt64 = getBatteryHealthData(BATTERY_PROP_STATE_OF_HEALTH); + ret = OK; + break; + default: break; }