From 1e1887e055b373b9c7264f855021e8f549337d70 Mon Sep 17 00:00:00 2001 From: "deyaoren@google.com" Date: Tue, 5 Apr 2022 22:16:49 +0000 Subject: [PATCH 1/2] Cuttlefish sensors apex uses aidl implementation Bug: 210883464 Test: atest hal_implementation VtsAidlHalSensorsTargetTest Tests run on abtd: https://android-build.googleplex.com/builds/abtd/run/L63300000953949688 https://android-build.googleplex.com/builds/abtd/run/L18600000953935211 One test is failing on tip of tree (cherry picked from commit bde01c60fadb8da6a1a24bca3dd21e17229c4316) Change-Id: Iec27e916c94e5a327fc6c4d87451e055b14d9660 --- sensors/2.1/default/apex/apex_manifest.json | 4 ---- sensors/aidl/default/Android.bp | 14 ++++++++++++-- sensors/{2.1 => aidl}/default/apex/Android.bp | 13 ++++++++++--- sensors/aidl/default/apex/apex_manifest.json | 4 ++++ .../apex/com.android.hardware.sensors.avbpubkey | Bin .../default/apex/com.android.hardware.sensors.pem | 0 .../default/apex/com.android.hardware.sensors.pk8 | Bin .../default/apex/com.android.hardware.sensors.rc | 0 .../apex/com.android.hardware.sensors.x509.pem | 0 sensors/{2.1 => aidl}/default/apex/file_contexts | 0 10 files changed, 26 insertions(+), 9 deletions(-) delete mode 100644 sensors/2.1/default/apex/apex_manifest.json rename sensors/{2.1 => aidl}/default/apex/Android.bp (78%) create mode 100644 sensors/aidl/default/apex/apex_manifest.json rename sensors/{2.1 => aidl}/default/apex/com.android.hardware.sensors.avbpubkey (100%) rename sensors/{2.1 => aidl}/default/apex/com.android.hardware.sensors.pem (100%) rename sensors/{2.1 => aidl}/default/apex/com.android.hardware.sensors.pk8 (100%) rename sensors/{2.1 => aidl}/default/apex/com.android.hardware.sensors.rc (100%) rename sensors/{2.1 => aidl}/default/apex/com.android.hardware.sensors.x509.pem (100%) rename sensors/{2.1 => aidl}/default/apex/file_contexts (100%) diff --git a/sensors/2.1/default/apex/apex_manifest.json b/sensors/2.1/default/apex/apex_manifest.json deleted file mode 100644 index 47e45ee63e..0000000000 --- a/sensors/2.1/default/apex/apex_manifest.json +++ /dev/null @@ -1,4 +0,0 @@ -{ - "name": "com.android.hardware.sensors", - "version": 1 -} diff --git a/sensors/aidl/default/Android.bp b/sensors/aidl/default/Android.bp index 49841a456b..3c66744324 100644 --- a/sensors/aidl/default/Android.bp +++ b/sensors/aidl/default/Android.bp @@ -23,6 +23,16 @@ package { default_applicable_licenses: ["hardware_interfaces_license"], } +filegroup { + name: "sensors-default.rc", + srcs: ["sensors-default.rc"], +} + +filegroup { + name: "sensors-default.xml", + srcs: ["sensors-default.xml"], +} + cc_library_static { name: "libsensorsexampleimpl", vendor: true, @@ -47,8 +57,8 @@ cc_library_static { cc_binary { name: "android.hardware.sensors-service.example", relative_install_path: "hw", - init_rc: ["sensors-default.rc"], - vintf_fragments: ["sensors-default.xml"], + init_rc: [":sensors-default.rc"], + vintf_fragments: [":sensors-default.xml"], vendor: true, shared_libs: [ "libbase", diff --git a/sensors/2.1/default/apex/Android.bp b/sensors/aidl/default/apex/Android.bp similarity index 78% rename from sensors/2.1/default/apex/Android.bp rename to sensors/aidl/default/apex/Android.bp index 3345b92b90..ceb428b5da 100644 --- a/sensors/2.1/default/apex/Android.bp +++ b/sensors/aidl/default/apex/Android.bp @@ -13,9 +13,16 @@ android_app_certificate { certificate: "com.android.hardware.sensors", } +genrule { + name: "com.android.hardware.sensors.rc-gen", + srcs: [":sensors-default.rc"], + out: ["com.android.hardware.sensors.rc"], + cmd: "sed -E 's/\\/vendor/\\/apex\\/com.android.hardware.sensors/' $(in) > $(out)", +} + prebuilt_etc { name: "com.android.hardware.sensors.rc", - src: "com.android.hardware.sensors.rc", + src: ":com.android.hardware.sensors.rc-gen", installable: false, } @@ -31,7 +38,7 @@ apex { updatable: false, // Install the apex in /vendor/apex soc_specific: true, - binaries: ["android.hardware.sensors@2.1-service.mock"], + binaries: ["android.hardware.sensors-service.example"], prebuilts: [ "com.android.hardware.sensors.rc", "android.hardware.sensor.ambient_temperature.prebuilt.xml", @@ -42,5 +49,5 @@ apex { "android.hardware.sensor.proximity.prebuilt.xml", "android.hardware.sensor.relative_humidity.prebuilt.xml", ], - vintf_fragments: [":android.hardware.sensors@2.1.xml"], + vintf_fragments: [":sensors-default.xml"], } diff --git a/sensors/aidl/default/apex/apex_manifest.json b/sensors/aidl/default/apex/apex_manifest.json new file mode 100644 index 0000000000..659e739c66 --- /dev/null +++ b/sensors/aidl/default/apex/apex_manifest.json @@ -0,0 +1,4 @@ +{ + "name": "com.android.hardware.sensors", + "version": 1 +} diff --git a/sensors/2.1/default/apex/com.android.hardware.sensors.avbpubkey b/sensors/aidl/default/apex/com.android.hardware.sensors.avbpubkey similarity index 100% rename from sensors/2.1/default/apex/com.android.hardware.sensors.avbpubkey rename to sensors/aidl/default/apex/com.android.hardware.sensors.avbpubkey diff --git a/sensors/2.1/default/apex/com.android.hardware.sensors.pem b/sensors/aidl/default/apex/com.android.hardware.sensors.pem similarity index 100% rename from sensors/2.1/default/apex/com.android.hardware.sensors.pem rename to sensors/aidl/default/apex/com.android.hardware.sensors.pem diff --git a/sensors/2.1/default/apex/com.android.hardware.sensors.pk8 b/sensors/aidl/default/apex/com.android.hardware.sensors.pk8 similarity index 100% rename from sensors/2.1/default/apex/com.android.hardware.sensors.pk8 rename to sensors/aidl/default/apex/com.android.hardware.sensors.pk8 diff --git a/sensors/2.1/default/apex/com.android.hardware.sensors.rc b/sensors/aidl/default/apex/com.android.hardware.sensors.rc similarity index 100% rename from sensors/2.1/default/apex/com.android.hardware.sensors.rc rename to sensors/aidl/default/apex/com.android.hardware.sensors.rc diff --git a/sensors/2.1/default/apex/com.android.hardware.sensors.x509.pem b/sensors/aidl/default/apex/com.android.hardware.sensors.x509.pem similarity index 100% rename from sensors/2.1/default/apex/com.android.hardware.sensors.x509.pem rename to sensors/aidl/default/apex/com.android.hardware.sensors.x509.pem diff --git a/sensors/2.1/default/apex/file_contexts b/sensors/aidl/default/apex/file_contexts similarity index 100% rename from sensors/2.1/default/apex/file_contexts rename to sensors/aidl/default/apex/file_contexts From d20ebb4f6f5ec2119371735f0487991ac54d4403 Mon Sep 17 00:00:00 2001 From: Daniel Norman Date: Thu, 28 Apr 2022 19:54:31 +0000 Subject: [PATCH 2/2] Fixes sensors AIDL default impl APEX's binary name. commit bde01c60fadb8da6a1a24bca3dd21e17229c4316 moved this APEX from the HIDL to AIDL impl, but accidentally left out the rename of the binary in the file_contexts Also deletes unused .rc file here; the APEX already reuses the .rc file from outside the APEX dir. Bug: 222579208 Test: Build cf_x86_64_phone using sensors APEX: http://ab/P33964358 Boot the device, use accel sensor to rotate the screen. Change-Id: Ib107770312bb80b67364c855efd2df3a9bc52b9a (cherry picked from commit 80e55dabf3a0a052c929a27d5ab2bc628b96c62b) --- sensors/aidl/default/apex/com.android.hardware.sensors.rc | 7 ------- sensors/aidl/default/apex/file_contexts | 2 +- 2 files changed, 1 insertion(+), 8 deletions(-) delete mode 100644 sensors/aidl/default/apex/com.android.hardware.sensors.rc diff --git a/sensors/aidl/default/apex/com.android.hardware.sensors.rc b/sensors/aidl/default/apex/com.android.hardware.sensors.rc deleted file mode 100644 index bd245b4ebd..0000000000 --- a/sensors/aidl/default/apex/com.android.hardware.sensors.rc +++ /dev/null @@ -1,7 +0,0 @@ -service vendor.sensors-hal-2-1-mock /apex/com.android.hardware.sensors/bin/hw/android.hardware.sensors@2.1-service.mock - interface android.hardware.sensors@2.0::ISensors default - interface android.hardware.sensors@2.1::ISensors default - class hal - user system - group system - rlimit rtprio 10 10 diff --git a/sensors/aidl/default/apex/file_contexts b/sensors/aidl/default/apex/file_contexts index d0095c03be..27be16b14e 100644 --- a/sensors/aidl/default/apex/file_contexts +++ b/sensors/aidl/default/apex/file_contexts @@ -2,4 +2,4 @@ # Permission XMLs /etc/permissions(/.*)? u:object_r:vendor_configs_file:s0 # Service binary -/bin/hw/android\.hardware\.sensors@2\.1-service\.mock u:object_r:hal_sensors_default_exec:s0 +/bin/hw/android\.hardware\.sensors-service\.example u:object_r:hal_sensors_default_exec:s0 \ No newline at end of file