Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 35cb0838 authored by Yifan Hong's avatar Yifan Hong
Browse files

healthd: partially fill in health 2.1 HAL fields

- batteryCurrentAverage
- batteryCapacityLevel
- batteryChargeTimeToFullNowSeconds
- batteryFullCapacityUah

Some of the fields are left 0 / UNKNOWN and will be
implemented in b/142260281.

Bug: 142260281

Test: lshal debug health 2.1 HAL shows these values
Change-Id: I8e462d612b39c16cfb3ae1b63b3e293153585c28
parent 1d4368b4
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -54,6 +54,7 @@ using HealthInfo_2_0 = android::hardware::health::V2_0::HealthInfo;
using HealthInfo_2_1 = android::hardware::health::V2_1::HealthInfo;
using android::hardware::health::V1_0::BatteryHealth;
using android::hardware::health::V1_0::BatteryStatus;
using android::hardware::health::V2_1::BatteryCapacityLevel;

namespace android {

@@ -223,6 +224,15 @@ void BatteryMonitor::updateValues(void) {
    if (!mHealthdConfig->batteryChargeCounterPath.isEmpty())
        props.batteryChargeCounter = getIntField(mHealthdConfig->batteryChargeCounterPath);

    if (!mHealthdConfig->batteryCurrentAvgPath.isEmpty())
        mHealthInfo->legacy.batteryCurrentAverage =
                getIntField(mHealthdConfig->batteryCurrentAvgPath);

    // TODO(b/142260281): Retrieve these values correctly.
    mHealthInfo->batteryCapacityLevel = BatteryCapacityLevel::UNKNOWN;
    mHealthInfo->batteryChargeTimeToFullNowSeconds = 0;
    mHealthInfo->batteryFullCapacityUah = props.batteryFullCharge;

    props.batteryTemperature = mBatteryFixedTemperature ?
        mBatteryFixedTemperature :
        getIntField(mHealthdConfig->batteryTemperaturePath);