Boot control HAL based on the A/B headers.

The added bootctrl.bcb module implement the legacy interface for the
bootctrl HAL based on the Boot Control Block (BCB) and the headers
already specified in the booloader_message library.

This serves as a reference implementation of the boot_control HAL.

Bug: 32707546
Test: Tested internally that a device can use this HAL to flip slots and
recovery from a /misc wipe.

Change-Id: Ic02e5aaf4de7d0a1780eac4e8705dae20d0b3e10
This commit is contained in:
Alex Deymo
2016-11-08 15:46:07 -08:00
committed by Alex Deymo
parent b6609f8895
commit fb00d82f32
5 changed files with 448 additions and 0 deletions
@@ -180,6 +180,11 @@ static_assert(sizeof(struct bootloader_control) ==
#include <string>
#include <vector>
// Return the block device name for the bootloader message partition and waits
// for the device for up to 10 seconds. In case of error returns the empty
// string.
std::string get_bootloader_message_blk_device(std::string* err);
// Read bootloader message into boot. Error message will be set in err.
bool read_bootloader_message(bootloader_message* boot, std::string* err);