diff options
author | David Anderson <dvander@google.com> | 2019-09-16 17:20:03 -0700 |
---|---|---|
committer | David Anderson <dvander@google.com> | 2019-10-16 17:01:25 -0700 |
commit | b93d670bb9a892c31ee6b1751395af6cc363306c (patch) | |
tree | bbd740ce967132fca29207626bc560bf963e87cb /bootctrl/LegacyBootControl.h | |
parent | c4b7b9f13f9168885650e3f8fb22e73f11f5c597 (diff) |
Implement IBootControl 1.1.
Store the new state for IBootControl 1.1 in the misc partition, using
the reserved section of bootloader_message_ab. The code to read/write
this partition is from the bootloader_message library.
We don't embed libboot_control directly because the 1.0 HAL methods are
implemented using GPT, not misc. Note that the new 1.1 methods are
implemented in a shared file. This is for future implementations of the
HAL that may not rely on the legacy GPT library, but will use the same
misc storage.
Bug: 141131816
Test: vts
Change-Id: I455c202cdd6a21261a2ed1f17dec6efd2ae8116e
Diffstat (limited to 'bootctrl/LegacyBootControl.h')
-rw-r--r-- | bootctrl/LegacyBootControl.h | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/bootctrl/LegacyBootControl.h b/bootctrl/LegacyBootControl.h index d50e789..64bc797 100644 --- a/bootctrl/LegacyBootControl.h +++ b/bootctrl/LegacyBootControl.h @@ -13,25 +13,24 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -#ifndef ANDROID_HARDWARE_BOOT_V1_0_BOOTCONTROL_H -#define ANDROID_HARDWARE_BOOT_V1_0_BOOTCONTROL_H -#include <android/hardware/boot/1.0/IBootControl.h> -#include <hidl/Status.h> +#pragma once #include <hidl/MQDescriptor.h> +#include <hidl/Status.h> + +#include "BootControlShared.h" + namespace android { namespace hardware { namespace boot { -namespace V1_0 { +namespace V1_1 { namespace implementation { -using ::android::sp; using ::android::hardware::Return; using ::android::hardware::boot::V1_0::BoolResult; -using ::android::hardware::boot::V1_0::IBootControl; -struct BootControl : public IBootControl { +struct BootControl : public BootControlShared { BootControl(boot_control_module_t *module); // Methods from ::android::hardware::boot::V1_0::IBootControl follow. Return<uint32_t> getNumberSlots() override; @@ -50,9 +49,7 @@ struct BootControl : public IBootControl { extern "C" IBootControl *HIDL_FETCH_IBootControl(const char *name); } // namespace implementation -} // namespace V1_0 +} // namespace V1_1 } // namespace boot } // namespace hardware } // namespace android - -#endif // ANDROID_HARDWARE_BOOT_V1_0_BOOTCONTROL_H |