Make BootControlHAL available in recovery
Test: th
Bug: 227536004
Change-Id: Idd0009f68598c85ef9fe234049851b9b8bd0d893
diff --git a/boot/1.1/default/boot_control/Android.bp b/boot/1.1/default/boot_control/Android.bp
index ad71700..6aa30c2 100644
--- a/boot/1.1/default/boot_control/Android.bp
+++ b/boot/1.1/default/boot_control/Android.bp
@@ -25,8 +25,6 @@
cc_defaults {
name: "libboot_control_defaults",
- vendor: true,
- recovery_available: true,
relative_install_path: "hw",
cflags: [
@@ -42,7 +40,7 @@
"liblog",
],
static_libs: [
- "libbootloader_message_vendor",
+ "libbootloader_message",
"libfstab",
],
}
@@ -51,6 +49,8 @@
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_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 6aefae8..dcb40db 100644
--- a/boot/aidl/default/Android.bp
+++ b/boot/aidl/default/Android.bp
@@ -23,13 +23,11 @@
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 @@
],
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 0000000..cb08a39
--- /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
+