From 5b13512b890f64482eab68a3ce2f9ff111a3482b Mon Sep 17 00:00:00 2001 From: Jack Wu Date: Mon, 20 Dec 2021 14:56:50 +0800 Subject: [PATCH] health: support Dock charging Bug: 194012532 Test: Show dock type correctly Signed-off-by: Jack Wu Change-Id: I6031d4c12a89317fdf98894ff4bec1cfc5dcfddf --- .../current/android/hardware/health/HealthInfo.aidl | 1 + health/aidl/android/hardware/health/HealthInfo.aidl | 4 ++++ health/aidl/default/HalHealthLoop.cpp | 2 +- health/aidl/default/health-convert.cpp | 1 + 4 files changed, 7 insertions(+), 1 deletion(-) diff --git a/health/aidl/aidl_api/android.hardware.health/current/android/hardware/health/HealthInfo.aidl b/health/aidl/aidl_api/android.hardware.health/current/android/hardware/health/HealthInfo.aidl index 34a87a66ec..97d9e845db 100644 --- a/health/aidl/aidl_api/android.hardware.health/current/android/hardware/health/HealthInfo.aidl +++ b/health/aidl/aidl_api/android.hardware.health/current/android/hardware/health/HealthInfo.aidl @@ -37,6 +37,7 @@ parcelable HealthInfo { boolean chargerAcOnline; boolean chargerUsbOnline; boolean chargerWirelessOnline; + boolean chargerDockOnline; int maxChargingCurrentMicroamps; int maxChargingVoltageMicrovolts; android.hardware.health.BatteryStatus batteryStatus; diff --git a/health/aidl/android/hardware/health/HealthInfo.aidl b/health/aidl/android/hardware/health/HealthInfo.aidl index 504e218b83..5b98baf13f 100644 --- a/health/aidl/android/hardware/health/HealthInfo.aidl +++ b/health/aidl/android/hardware/health/HealthInfo.aidl @@ -39,6 +39,10 @@ parcelable HealthInfo { * Wireless charger state - 'true' if online */ boolean chargerWirelessOnline; + /** + * Dock charger state - 'true' if online + */ + boolean chargerDockOnline; /** * Maximum charging current supported by charger in µA */ diff --git a/health/aidl/default/HalHealthLoop.cpp b/health/aidl/default/HalHealthLoop.cpp index c9a081e0f2..ec23c10bc0 100644 --- a/health/aidl/default/HalHealthLoop.cpp +++ b/health/aidl/default/HalHealthLoop.cpp @@ -61,7 +61,7 @@ void HalHealthLoop::OnHealthInfoChanged(const HealthInfo& health_info) { void HalHealthLoop::set_charger_online(const HealthInfo& health_info) { charger_online_ = health_info.chargerAcOnline || health_info.chargerUsbOnline || - health_info.chargerWirelessOnline; + health_info.chargerWirelessOnline || health_info.chargerDockOnline; } } // namespace aidl::android::hardware::health diff --git a/health/aidl/default/health-convert.cpp b/health/aidl/default/health-convert.cpp index b5251f4bb5..6118865001 100644 --- a/health/aidl/default/health-convert.cpp +++ b/health/aidl/default/health-convert.cpp @@ -22,6 +22,7 @@ void convert(const HealthInfo& info, struct ::android::BatteryProperties* p) { p->chargerAcOnline = info.chargerAcOnline; p->chargerUsbOnline = info.chargerUsbOnline; p->chargerWirelessOnline = info.chargerWirelessOnline; + p->chargerDockOnline = info.chargerDockOnline; p->maxChargingCurrent = info.maxChargingCurrentMicroamps; p->maxChargingVoltage = info.maxChargingVoltageMicrovolts; p->batteryStatus = static_cast(info.batteryStatus);