Switch boot HAL to binderized mode

Test: marlin boots, passes boot VTS, successfully sideloads an OTA.
Bug: 35763949
Change-Id: I3b1403ccdb57a9544a57cab8da118c6795901ebc
Signed-off-by: Connor O'Brien <connoro@google.com>
diff --git a/device-common.mk b/device-common.mk
index 1b7084f..8026af6 100644
--- a/device-common.mk
+++ b/device-common.mk
@@ -482,6 +482,7 @@
 # Boot control
 PRODUCT_PACKAGES += \
     android.hardware.boot@1.0-impl \
+    android.hardware.boot@1.0-service
 
 # Library used for VTS tests  (only for userdebug and eng builds)
 ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT)))
diff --git a/manifest.xml b/manifest.xml
index 058ffe6..777ee5c 100644
--- a/manifest.xml
+++ b/manifest.xml
@@ -41,7 +41,7 @@
     </hal>
     <hal format="hidl">
         <name>android.hardware.boot</name>
-        <transport arch="32+64">passthrough</transport>
+        <transport>hwbinder</transport>
         <impl level="generic"></impl>
         <version>1.0</version>
         <interface>
diff --git a/sepolicy/hal_bootctl.te b/sepolicy/hal_bootctl.te
index d45b185..17912c2 100644
--- a/sepolicy/hal_bootctl.te
+++ b/sepolicy/hal_bootctl.te
@@ -22,6 +22,7 @@
 # A/B slot selection for the XBL partition. Allow also to issue a
 # UFS_IOCTL_QUERY ioctl.
 allow hal_bootctl sg_device:chr_file rw_file_perms;
+allow hal_bootctl self:capability sys_admin;
 
 # Read the sysfs to lookup what /dev/sgN device
 # corresponds to the XBL partitions.