Merge "Use design capacity instead of full charge capacity"

This commit is contained in:
Treehugger Robot
2020-02-14 01:35:16 +00:00
committed by Gerrit Code Review
4 changed files with 13 additions and 11 deletions

View File

@@ -616,7 +616,7 @@ dd377f404a8e71f6191d295e10067db629b0f0c28e594af906f2bea5d87fe2cc android.hardwar
f284ffde7cadf5a1364b75ab313baf22401eeca289bdde2a2dc7a27ea4ab98d7 android.hardware.dumpstate@1.1::IDumpstateDevice
ce8dbe76eb9ee94b46ef98f725be992e760a5751073d4f4912484026541371f3 android.hardware.health@2.1::IHealth
26f04510a0b57aba5167c5c0a7c2f077c2acbb98b81902a072517829fd9fd67f android.hardware.health@2.1::IHealthInfoCallback
db47f4ceceb1f06c656f39caa70c557b0f8471ef59fd58611bea667ffca20101 android.hardware.health@2.1::types
30e5d878099aeca710420dfc438d115bbbdcdbe84ad1b05a0f5e01debc3ef3af android.hardware.health@2.1::types
0589e410f519e36514e7ece18f283f022df0f70efd2c12821d822f67f74aba98 android.hardware.identity@1.0::types
bbeee9604128ede83ee755b67e73b5ad29e6e1dbac9ec41fea6ffe2745b0c50a android.hardware.identity@1.0::IIdentityCredential
96ce8aad80f4c476f25261f790d357c117e79e18474c7dadd850dac704bbe65e android.hardware.identity@1.0::IIdentityCredentialStore

View File

@@ -84,12 +84,12 @@ struct HealthInfo {
int64_t batteryChargeTimeToFullNowSeconds;
/**
* Estimated battery full capacity (in microamp hours, uAh).
* Estimated battery full charge design capacity (in microamp hours, uAh).
* batteryFullCharge must be less than (value * 1000).
* Value must be 0 if unknown.
* Value must be positive if known, and must be between [50%, 120%] of
* batteryFullCharge (the designed capacity).
* Value must be positive if known.
*/
int32_t batteryFullCapacityUah;
int32_t batteryFullChargeDesignCapacityUah;
};
/**

View File

@@ -228,17 +228,18 @@ TEST_P(HealthHidlTest, getHealthInfo_2_1) {
return;
}
ASSERT_EQ(Result::SUCCESS, result);
const auto& legacy = value.legacy.legacy;
EXPECT_TRUE(IsEnum(value.batteryCapacityLevel)) << " BatteryCapacityLevel";
EXPECT_GE(value.batteryChargeTimeToFullNowSeconds, 0);
EXPECT_GE(value.batteryFullCapacityUah, 0)
<< "batteryFullCapacityUah should not be negative";
EXPECT_GE(value.batteryFullChargeDesignCapacityUah, 0)
<< "batteryFullChargeDesignCapacityUah should not be negative";
if (value.batteryFullCapacityUah > 0) {
EXPECT_GE(value.batteryFullCapacityUah, legacy.batteryFullCharge * 0.50);
EXPECT_LE(value.batteryFullCapacityUah, legacy.batteryFullCharge * 1.20);
// Check for extreme outliers
const auto& legacy = value.legacy.legacy;
if (value.batteryFullChargeDesignCapacityUah > 0) {
EXPECT_LT((long)legacy.batteryFullCharge,
((long)value.batteryFullChargeDesignCapacityUah * 1000));
}
})));
}

View File

@@ -42,6 +42,7 @@ void InitHealthdConfig(struct healthd_config* healthd_config) {
.batteryCycleCountPath = String8(String8::kEmptyString),
.batteryCapacityLevelPath = String8(String8::kEmptyString),
.batteryChargeTimeToFullNowPath = String8(String8::kEmptyString),
.batteryFullChargeDesignCapacityUahPath = String8(String8::kEmptyString),
.energyCounter = NULL,
.boot_min_cap = 0,
.screen_on = NULL,