From 1cc8267aac4e207b6769c96e085c468f023ce1f0 Mon Sep 17 00:00:00 2001 From: Kelvin Zhang Date: Fri, 26 Aug 2022 19:25:30 +0000 Subject: [PATCH] Make BootControlHAL available in recovery Test: th Bug: 227536004 Change-Id: Idd0009f68598c85ef9fe234049851b9b8bd0d893 --- boot/1.1/default/boot_control/Android.bp | 8 ++++--- boot/aidl/default/Android.bp | 24 ++++++++++++++----- ... android.hardware.boot-service.default.rc} | 0 ...android.hardware.boot-service.default.xml} | 0 ....hardware.boot-service.default_recovery.rc | 7 ++++++ 5 files changed, 30 insertions(+), 9 deletions(-) rename boot/aidl/default/{boot-default.rc => android.hardware.boot-service.default.rc} (100%) rename boot/aidl/default/{boot-default.xml => android.hardware.boot-service.default.xml} (100%) create mode 100644 boot/aidl/default/android.hardware.boot-service.default_recovery.rc diff --git a/boot/1.1/default/boot_control/Android.bp b/boot/1.1/default/boot_control/Android.bp index ad71700fa1..6aa30c21fa 100644 --- a/boot/1.1/default/boot_control/Android.bp +++ b/boot/1.1/default/boot_control/Android.bp @@ -25,8 +25,6 @@ package { cc_defaults { name: "libboot_control_defaults", - vendor: true, - recovery_available: true, relative_install_path: "hw", cflags: [ @@ -42,7 +40,7 @@ cc_defaults { "liblog", ], static_libs: [ - "libbootloader_message_vendor", + "libbootloader_message", "libfstab", ], } @@ -51,6 +49,8 @@ cc_library_static { name: "libboot_control", defaults: ["libboot_control_defaults"], export_include_dirs: ["include"], + recovery_available: true, + vendor_available: true, srcs: ["libboot_control.cpp"], } @@ -58,6 +58,8 @@ cc_library_static { cc_library_shared { name: "bootctrl.default", defaults: ["libboot_control_defaults"], + recovery_available: true, + vendor_available: true, srcs: ["legacy_boot_control.cpp"], diff --git a/boot/aidl/default/Android.bp b/boot/aidl/default/Android.bp index 6aefae835d..dcb40dbe6a 100644 --- a/boot/aidl/default/Android.bp +++ b/boot/aidl/default/Android.bp @@ -23,13 +23,11 @@ package { default_applicable_licenses: ["hardware_interfaces_license"], } -cc_binary { - name: "android.hardware.boot-service.default", - defaults: ["libboot_control_defaults"], +cc_defaults { + name: "android.hardware.boot-service_common", relative_install_path: "hw", - init_rc: ["boot-default.rc"], - vintf_fragments: ["boot-default.xml"], - vendor: true, + defaults: ["libboot_control_defaults"], + vintf_fragments: ["android.hardware.boot-service.default.xml"], shared_libs: [ "libbase", "libbinder_ndk", @@ -41,3 +39,17 @@ cc_binary { ], srcs: ["main.cpp", "BootControl.cpp"], } + +cc_binary { + name: "android.hardware.boot-service.default", + defaults: ["android.hardware.boot-service_common"], + init_rc: ["android.hardware.boot-service.default.rc"], + vendor: true, +} + +cc_binary { + name: "android.hardware.boot-service.default_recovery", + defaults: ["android.hardware.boot-service_common"], + init_rc: ["android.hardware.boot-service.default_recovery.rc"], + recovery: true, +} diff --git a/boot/aidl/default/boot-default.rc b/boot/aidl/default/android.hardware.boot-service.default.rc similarity index 100% rename from boot/aidl/default/boot-default.rc rename to boot/aidl/default/android.hardware.boot-service.default.rc diff --git a/boot/aidl/default/boot-default.xml b/boot/aidl/default/android.hardware.boot-service.default.xml similarity index 100% rename from boot/aidl/default/boot-default.xml rename to boot/aidl/default/android.hardware.boot-service.default.xml diff --git a/boot/aidl/default/android.hardware.boot-service.default_recovery.rc b/boot/aidl/default/android.hardware.boot-service.default_recovery.rc new file mode 100644 index 0000000000..cb08a39e1b --- /dev/null +++ b/boot/aidl/default/android.hardware.boot-service.default_recovery.rc @@ -0,0 +1,7 @@ +service vendor.boot-default /system/bin/hw/android.hardware.boot-service.default_recovery + class early_hal + user root + group root + seclabel u:r:hal_bootctl_default:s0 + interface aidl android.hardware.boot.IBootControl/default +