Both framework BatteryService and all implementations (that uses
BatteryMonitor) uses millivolts for batteryVoltage.
maxChargingVoltage is microvolts and that is correct.
Fixes: 115881119
Test: treehugger
Change-Id: I64044489fe6d56e0d211085d9536fe5cfd95efc4
gtest in Android P tree does not have GTEST_SKIP. Implement
a naive version of it.
Bug: 118852225
Test: manually undefine GTEST_SKIP, test with and without --force
Change-Id: I8df1154d8a94a67ae28e8024de6022fcfe76384d
If vendor HAL is present, healthd is not used by the framework. VTS should
skip testing it when this is the case.
Provide a --force option to the test if one wants to test healthd.
Fixes: 118852225
Test: on walleye, test healthd with and without --force.
Change-Id: I85f792f25406b1c02887a0ac273730e719003e2f
The test is flaky with the current timeout and this CL
increases it to a safe value.
Bug: 120994008
Test: test passes
Change-Id: I63e0e11fcc1eb3bed490cdb21193e2c332cccf80
Make health storage HAL run only when needed.
Bug: 115675262
Test: Flash crosshatch, ensure android.hardware.health.storage@1.0-service
is not running. Enable debug logging in vold. Run 'adb shell sm
idle-maint run' and check logs to ensure vold runs "Start Dev GC
on HAL"
Change-Id: I4bd48b5bb1b3ae7e1f4ccaff2042f1331e4cd76d
health/2.0/default/healthd_common.cpp wants to use
timerfd_create() to register a wakealarm.
To use the timerfd_create() syscall with CLOCK_BOOTTIME_ALARM,
CAP_WAKE_ALARM is needed.
Update the README to reflect the needed cap in the init file,
see also https://r.android.com/861532
Since the v1.0 HAL is in passthrough mode, the cap is needed for the 1.0
service as well.
Change-Id: I0e71da125eeef1360b5fd8bc7a69285e0b786511
Signed-off-by: Felix <google@ix5.org>
registerCallback() and getHealthInfo() unintentionally broadcast
health info to all callbacks, which has a performance impact.
* registerCallback() still invokes the new callback immediately
* getHealthInfo() does not call any callbacks at all.
Test: VTS test call getHealthInfo does not invoke update()
Bug: 117167903
Change-Id: Ida99fdd73831e747fbf2d65089c7c0e7661fe7c4
This is required for correct functioning of getHealthInfo() API
in recovery since BatteryMonitor requires healthd_mode_ops to be
initialized to update battery properties.
Bug: 78793464
Test: fastboot getvar battery-voltage
Change-Id: I9ff77664cada22e4aa3668bfb7d28d5f1d45590b
Rename the HAL because it is regarding 'storage health',
not 'filesystem health'.
Bug: 111655771
Test: compiles
Change-Id: I07072c876fb07c88be8bd74cf6b84aec6020a697
Merged-In: I07072c876fb07c88be8bd74cf6b84aec6020a697
... so that it can be installed to recovery image.
Test: build and inspect out dir
Test: boot to recovery and 'adb shell ls /vendor/lib64/hw'
Bug: 80132328
Change-Id: Icb33c9e9e648b54db33cac23ed877392cce4e76b
Merged-In: Icb33c9e9e648b54db33cac23ed877392cce4e76b
(cherry picked from commit 4e40086d39)
This encourages device manufacturers to use
service.override over service and to remove healthd
on device, because it is one less step to do.
Test: make VINTF metadata
Bug: 66917623
Change-Id: I447395450060cdf17731514bb9a5e3ed912bbc66
Merged-In: I447395450060cdf17731514bb9a5e3ed912bbc66
(cherry picked from commit ae005c4610)
The fields being checked were uint64_t and it
is valid for them to have any value greater than
or equal to zero.
Bug: 74057048
Test: vts-tradefed run vts -m VtsHalHealthV2_0
Change-Id: If932e1d6af8e162b7c570a1d5dd0f5ddce89ad1e
... to hardware/interfaces. HealthServiceCommon
becomes two separate libraries:
- libhealthservicedefault for services on vendor
- libhealthservicehealthd for healthd
Test: boots
Bug: 63702641
Change-Id: I40235cef7d4fa62103629bf507b0401e3f939654
getChargeCounter, getCurrentNow, getCurrentAverage,
getCapacity, getEnergyCounter returns 0 when result is
not SUCCESS.
This is consistent with the invalid value defined
by @1.0::IHealthInfo and @2.0::IHealthInfo.
IHealthInfoCallback.healthInfoChanged() and
IHealth.getHealthInfo() both zero-fill invalid values.
This does not affect any clients, because client code
checks for result before using the value.
Test: health VTS test
Change-Id: I50e6faa5f4feb42bb1ec899e289567d6dde7e9c2
The methods will report device specific storage info.
Bug: 68388678
Test: vts-tradefed run vts -m VtsHalHealthV2_0
Change-Id: I76a15f36f271312d2b49141ee1d45118be101397
Move android.hardware.health@2.0-impl to hardware/interfaces
from system/core/healthd.
Bug: 70533363 63702641
Test: make -j32
Change-Id: I0e4468f2183a273b4f73606b04faff88dd7afb72
Removing whenever I see these in code reviews.
Test: none
Merged-In: I4322f533a837d55618ec2ed2125e8966ace9d61d
Change-Id: I4322f533a837d55618ec2ed2125e8966ace9d61d
Removing whenever I see these in code reviews.
Test: none
Merged-In: I4322f533a837d55618ec2ed2125e8966ace9d61d
Change-Id: I4322f533a837d55618ec2ed2125e8966ace9d61d
An implementation may or may not invoke the callback
immediately when registerCallback is called, causing
a race in the test. Fix the test by waiting for the
invocation, or time-out, whichever comes first.
Test: run test 200 times
Bug: 69005254
Change-Id: I79a416f9ba5c93d7e8f9f2d6e32a0f46410561d7
Remove self from test ownership and transfer to new owners as agreed.
Test: none
Bug: 69425312
Change-Id: I8b189e6f2d7076b9ee7f3bad91445ccf6c5e1767
Merged-In: I8b189e6f2d7076b9ee7f3bad91445ccf6c5e1767
BatteryService does not use these fields for posting
sticky intents.
This is a partial revert of commit
cbfb15e0b8.
Bug: 63702641
Test: boots
Change-Id: Id6596b04daaa19ae97d783c7a8bc111a43725334
IHealthInfoCallback reports more information, so that
BatteryService can send these fields to BatteryManager in framework.
Test: builds
Bug: 62229583
Change-Id: Ieacd4acabc3e0870d0d2fed04dad9d8c3255986b
Merged-In: Ieacd4acabc3e0870d0d2fed04dad9d8c3255986b
IHealthInfoCallback reports more information, so that
BatteryService can send these fields to BatteryManager in framework.
Test: builds
Bug: 62229583
Change-Id: Ieacd4acabc3e0870d0d2fed04dad9d8c3255986b