Commit graph

53 commits

Author SHA1 Message Date
Jack Wu
2d6557c0f7 health: fix vts setChargingPolicy failing
Bug: 274308314
Test: m android.hardware.health-update-api
Change-Id: I0f1a41d86d6998f061a29a51b9d1cf43a47949c2
Signed-off-by: Jack Wu <wjack@google.com>
2023-03-23 12:01:22 +00:00
Jack Wu
cbbf24f15d health: get batteryStateOfHealth from healthd
Bug: 251427118
Test: m android.hardware.health-update-api
Change-Id: I556570782b0a9698fd3530be86f8ede33b11afe2
Signed-off-by: Jack Wu <wjack@google.com>
2023-02-23 01:24:00 +00:00
AleX Pelosi
39c564112b health: batteryStateOfHealth should be a property
Move batteryStateOfHealth to HealthData

Bug: 251427118
Test: m android.hardware.health-update-api
Change-Id: I8835489f5c3d75ffc48e198a63eafc52b555ccd4
Signed-off-by: AleX Pelosi <apelosi@google.com>
2023-02-23 01:23:51 +00:00
AleX Pelosi
8a1f34f1b7 health: update owners
+apelosi

Bug: N/A
Test: N/A
Change-Id: Ia698145eda18b8a6e34e80303ac14524c036b1fe
Signed-off-by: AleX Pelosi <apelosi@google.com>
2023-02-17 13:19:32 +00:00
Yifan Hong
8bde9fedfc health: update owners.
-stayfan, +wjack

Test: N/A
Bug: N/A
Change-Id: I31f4f21efc30c90bc8e46567e7d08dfdabf717d1
2023-02-03 21:43:04 +00:00
Jack Wu
9beec7e3af health: fix vts test failed in aidl v2
Add a check before executing the test to determine whether the
health HAL is indeed the V2 version.

Bug: 266665472
Test: vts test
Change-Id: I43c7d0139037701f0ef2e8f3925272470684a50e
Signed-off-by: Jack Wu <wjack@google.com>
2023-02-02 16:49:43 +08:00
Jack Wu
3356161d6c health: expose battery health data and update version to V2
1. add the new propertes
  - batteryHealthData
  - batteryStateOfHealth
  - chargingState
  - chargingPolicy
2. add new types to health status
3. add new methods
  - setChargingPolicy
  - getChargingPolicy
  - getBatteryHealthData

Bug: 251425963
Test: m android.hardware.health-update-api
Change-Id: Ie2339c50e1f9bfc28427e4108a95b1a16c739205
Signed-off-by: Jack Wu <wjack@google.com>
2023-01-21 07:33:51 +00:00
Jack Wu
0edf57e04b health: fix depending on multiple versions of the same aidl_interface
When health aidl_interface version updraged, some libraries are
depending on V1 and android.hardware.health-translate-ndk at the
same time. It will cause multiple versions depending if
android.hardware.health-translate-ndk is depending on new version.
version.

Fork android.hardware.health-translate-ndk generate two versions,
so that other libraries can depend on the same aidl_interface,
to avoid multiple versions depending.

Bug: 251425963
Test: m
Change-Id: I0641e9f6c1445ee2549b956012ebb35eb1f8ac97
Signed-off-by: Jack Wu <wjack@google.com>
2023-01-11 09:45:19 +00:00
Pawan
8e13f2ac2c Updating cc_fuzz with default config
Using service_fuzzer_defaults in
	- android.hardware.health-service.aidl_fuzzer
	- android.hardware.vibrator-service.example_fuzzer

Bug: 240318902
Test: m android.hardware.health-service.aidl_fuzzer
Test: m android.hardware.vibrator-service.example_fuzzer
Change-Id: I3fd1cf37a5835ebef14658ed40332132cec07e49
2022-08-22 22:16:41 +00:00
Jooyung Han
c0b24f4f13 Remove AIDL-libs from VNDK
Some are still in VNDK because they are used in other VNDK libs.

Ignore-AOSP-First: some libs are still in internal master only.

Bug: 234181591
Test: m
Merged-In: If999df9c78a20df931177da11742b1c5de19bc08
Change-Id: If999df9c78a20df931177da11742b1c5de19bc08
(cherry picked from commit 5527adfd7f)
2022-06-14 14:08:59 +09:00
Hamzeh Zawawy
25c5d2e804 Merge "Add an AIDL fuzzer for health service" am: 5c04494c60 am: b1165847fb
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/2094863

Change-Id: Ibd4de8004027e98123fb4ad586766a3063af5722
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-12 21:11:03 +00:00
hamzeh
34b47964d5 Add an AIDL fuzzer for health service
Bug: 228862320
Test: SANITIZE_TARGET=hwaddress make android.hardware.health-service.aidl_fuzzer
Change-Id: I917441738a7a9d18d7c4fcbe0212bdaf77fe265e
2022-05-10 12:23:11 -07:00
Jiyong Park
70f5837e1f Freeze AIDL APIs for TM
Bug: 225941299
Test: m
Change-Id: I61eb51c0334eb99489c6f1570110d7e18c350c99
2022-04-16 07:03:24 +09:00
Yifan Hong
c99d0553c6 health: Add stayfan and smoreland as owners.
Test: none
Change-Id: I4c79b1aba1172b990cae55009b4cc095d35acab7
2022-04-14 12:55:51 -07:00
Yifan Hong
e9cb1bedfd Merge "health: batterymonitor uses AIDL HealthInfo." 2022-03-02 19:20:31 +00:00
Yifan Hong
bc84a7903a health: batterymonitor uses AIDL HealthInfo.
As a side effect, chargerDockOnline is properly set.

Test: TH
Bug: 222120465
Change-Id: I660e8ac0d1897ce30e3ae5d4f402a0b9ccac3c5c
2022-03-01 12:27:13 -08:00
Chih-Hung Hsieh
ad1bf31b78 Add timed out test files to tidy_timeout_srcs
* Timed out runs do not show any warning messages.
* These test files cannot finish clang-tidy runs with
  the following settings:
    TIDY_TIMEOUT=90
    WITH_TIDY=1
    CLANG_ANALYZER_CHECKS=1
* When TIDY_TIMEOUT is set, in Android continuous builds,
  tidy_timeout_srcs files will not be compiled by clang-tidy.
  When developers build locally without TIDY_TIMEOUT,
  tidy_timeout_srcs files will be compiled.
* Some of these test modules may be split into smaller ones,
  or disable some time consuming checks, and then
  enable clang-tidy to run within limited time.

Bug: 201099167
Test: make droid tidy-hardware-interfaces_subset
Change-Id: I1de28f1572fff368f67eab512fffec9f2e5c2a9b
2022-02-18 17:25:41 -08:00
Treehugger Robot
71af5c2da9 Merge "health: vendor.charger-* -> vendor.charger." 2022-01-28 01:20:11 +00:00
Yifan Hong
64345cd628 health: vendor.charger-* -> vendor.charger.
Devices may have actions triggered by
init.svc.vendor.charger. If the name is changed,
these actions are not triggered properly.

The name is usually vendor.charger, so the default
service will also use vendor.charger as the name.

Test: none
Bug: 215152892
Change-Id: Icb296ae82a6f3472730fdb3abc35dcede22889e7
2022-01-26 15:53:11 -08:00
Treehugger Robot
a366ec1a33 Merge "health: support Dock charging" 2022-01-25 01:55:20 +00:00
Jack Wu
5b13512b89 health: support Dock charging
Bug: 194012532
Test: Show dock type correctly
Signed-off-by: Jack Wu <wjack@google.com>
Change-Id: I6031d4c12a89317fdf98894ff4bec1cfc5dcfddf
2022-01-15 10:22:27 +00:00
Steven Moreland
738d3d5950 remove libbinder_ndk_host_user
no longer needed

Bug: 211908498
Test: build
Change-Id: Iadffdf1d7759e32986c4e0e28acb2087d9f27ab0
2022-01-07 22:18:58 +00:00
Yifan Hong
fab263ceae health: Add libhealth_aidl_impl_user.
This is the defaults for users of libhealth_aidl_impl.

Test: builds
Bug: 213273090
Change-Id: Iddcc0a0bc194f337c5e9a632ea2468140804a30a
2022-01-05 14:47:53 -08:00
Steven Moreland
a049eb0faf Remove separate_platform_variant entries.
This no longer does anything.

Bug: 161456198
Test: build
Change-Id: If7ca08cc1d7a829c637e1ea8254eed6361be0490
2022-01-04 18:22:44 +00:00
Treehugger Robot
c8b8ec2983 Merge "health: Add AIDL VTS to general-tests." 2021-12-22 21:23:27 +00:00
Yifan Hong
8469276466 health: Add AIDL VTS to general-tests.
This allows it to run on forrest.

Test: pass
Bug: 203245778
Change-Id: I78481d5bd7185cd660243e44440982f50c9f07ca
2021-12-14 20:31:28 +00:00
Yifan Hong
4c12800dd8 Merge "health: add libhealthshim" 2021-12-07 18:18:07 +00:00
Treehugger Robot
21c1e163d4 Merge "health: properly support charger mode." 2021-12-01 03:45:49 +00:00
Yifan Hong
7a6956ee0d health: add libhealthshim
This is a shim library that wraps a HIDL IHealth to
an AIDL BnHealth.

Also add tests for the library.

Bug: 177269435
Test: libhealthshim_test

Change-Id: Ia5f32c1ae0693c70cf698b46b48d5f77006cf6c7
2021-11-29 16:43:05 -08:00
Yifan Hong
87ece16955 health: fix running HAL in recovery mode.
- Add proper RC files
- overrides charger.recovery
- update readme for implementing recovery mode

Test: pass
Bug: 177269435
Change-Id: Id60b57978e4e5bf78af32bd67523333ba0c2a04d
2021-11-19 02:18:21 +00:00
Yifan Hong
04c4754b9c health: properly support charger mode.
Use charger_vendor SELinux context.

Also update readme to reflect the change.

Test: manual in offline-charging mode
Bug: 177269435
Change-Id: Icf5cd9d579b3365037e2d360fcc29b0ef4be1b15
2021-11-17 07:27:12 +00:00
Yifan Hong
d4ebad8aef health: Update README.md for SELinux rule example
Test: none
Bug: 177269435
Change-Id: Ifd5ef99e7dd1c27fe9973daa65ad70714f86a46b
2021-11-16 23:22:16 -08:00
Yifan Hong
4915df85a0 Merge "health: do not use default destructor." 2021-11-16 02:25:29 +00:00
Yifan Hong
2d418a2b5b health: do not use default destructor.
Otherwise, clients will need to know how to destroy
LinkedCallback, a hidden class.

Test: builds
Bug: 177269435
Change-Id: I89532755da16b672c4cbece55b943306f68cdb9e
2021-11-12 19:05:24 -08:00
Yifan Hong
1698fe28eb Merge "health: Also add h2aTranslate(V1_0.HealthInfo)" 2021-11-10 21:11:00 +00:00
Yifan Hong
2e07613c79 health: make libhealth_aidl_impl visibility public
It was meant to be the replacement of health2impl, the helper library
for implementing the health HAL. Hence, vendor implementation needs
to access it.

Test: pass
Bug: 177269435
Change-Id: I58f4bcd860983b2b16ea52fbdd6e05c8d4953454
2021-11-08 13:02:17 -08:00
Yifan Hong
701ff4a1de Merge "health: handle charger in health HAL" 2021-11-08 20:33:46 +00:00
Yifan Hong
9af94c627c Merge "health AIDL: Add readme" 2021-11-08 20:29:15 +00:00
Yifan Hong
02f04175c9 health AIDL: Add readme
Test: none
Bug: 177269435
Change-Id: I54e69d7789c6e1246bb126a27f9463e04407314e
2021-11-08 12:28:18 -08:00
Yifan Hong
4335f1cf9f health: Also add h2aTranslate(V1_0.HealthInfo)
... for BatteryService to use. Other fields
are kept as default values.

Test: builds
Bug: 177269435
Change-Id: I7e1c997f5441c7a81bcffb32688f4a2216378998
2021-11-08 12:23:23 -08:00
Yifan Hong
a8f55cacaa health: handle charger in health HAL
Test: manual in charger mode
Bug: 203246116

Change-Id: Id02077d78fa8b1489ea4fba5b10e32f961c4cea0
2021-11-03 11:56:01 -07:00
Treehugger Robot
9b965ac6a5 Merge "health AIDL: add vts tests" 2021-10-30 00:53:03 +00:00
Treehugger Robot
919d9a3da3 Merge "health: make AIDL HAL recovery available." 2021-10-30 00:30:34 +00:00
Yifan Hong
2200cffdad health AIDL: add vts tests
This is a direct translation of the health 2.0
and 2.1 VTS tests.

Some slight modifications are made (e.g. use googlemock
matchers) to make the test code more readable.

Test: run on Pixel
Bug: 203245778

Change-Id: Ifc3799a04a6a09d0d53f400b60d19fbfe004a3e3
2021-10-29 15:51:42 -07:00
Yifan Hong
1f5c57c965 Merge "health impl: compare interfaces with their binders" 2021-10-29 21:16:46 +00:00
Yifan Hong
6839f6742e health impl: compare interfaces with their binders
The intention is to compare binder objects not the
outer interface class.

Test: VTS
Bug: 177269435
Change-Id: I1c48112a75cb229b40c42ed2a3f347472d1860f9
2021-10-29 21:16:34 +00:00
Bob Badour
a88d5b1cb3 [LSC] Add LOCAL_LICENSE_KINDS to hardware/interfaces
Added SPDX-license-identifier-Apache-2.0 to:
  health/aidl/Android.bp
  health/aidl/default/Android.bp

Bug: 68860345
Bug: 151177513
Bug: 151953481

Test: m all
Change-Id: I24a0212a955a084c795990653c45b60ebda33357
2021-10-28 17:18:27 -07:00
Yifan Hong
e32a8ea137 health: make AIDL HAL recovery available.
Test: builds
Bug: 170338625
Change-Id: I45e0032e7a765cdeb39e01d17bacf11d1c10a75c
2021-10-26 23:53:55 -07:00
Yifan Hong
830cdb119e health: Add default impl of health AIDL HAL
Compared to the HIDL HAL implementation,
- libhealthloop (and the HealthLoop class) is kept
- Create libhealthaidlimpl that replaces libhealth2impl. Fork the implementation because
  libhealth2impl is highly coupled with HIDL’s design rationale. This includes forking:
  - HalHealthLoop
  - Health implementation
- Combine the passthrough Health and hwbinder BinderHealth classes into the AIDL
  implementation of Health. This is because AIDL does not support passthrough transport.
  Separating the implementation for the two transports in HIDL does not make sense for AIDL.
- In HIDL, a BinderHealth is a HalHealthLoop which is composed of a (passthrough)
  Health implementation. As a result of this change, in AIDL, a Health implementation
  is a HalHealthLoop, which associates with the Health implementation itself with a raw
  pointer.
- hidl_death_recipient becomes ScopedAIBinder_DeathRecipient
- Callback becomes LinkedCallback

Test: manual
Bug: 177269435
Change-Id: I76e914117ce09b218cdb9d655f2135d29bb629ae
2021-10-26 23:53:55 -07:00
Steven Moreland
713d22e0f1 Merge changes from topic "health-aidl"
* changes:
  health: Add to compatibility matrix.
  health: separate_platform_variant = false
  health: Convert of health HAL to AIDL
2021-10-26 22:33:31 +00:00