No description
fb00d82f32
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 |
||
---|---|---|
applypatch | ||
boot_control | ||
bootloader_message | ||
edify | ||
etc | ||
fonts | ||
minadbd | ||
minui | ||
otafault | ||
otautil | ||
res-hdpi/images | ||
res-mdpi/images | ||
res-xhdpi/images | ||
res-xxhdpi/images | ||
res-xxxhdpi/images | ||
tests | ||
tools | ||
uncrypt | ||
update_verifier | ||
updater | ||
.clang-format | ||
adb_install.cpp | ||
adb_install.h | ||
Android.mk | ||
asn1_decoder.cpp | ||
asn1_decoder.h | ||
bootloader.h | ||
CleanSpec.mk | ||
common.h | ||
default_device.cpp | ||
device.cpp | ||
device.h | ||
error_code.h | ||
fuse_sdcard_provider.cpp | ||
fuse_sdcard_provider.h | ||
fuse_sideload.cpp | ||
fuse_sideload.h | ||
install.cpp | ||
install.h | ||
interlace-frames.py | ||
mounts.cpp | ||
mounts.h | ||
NOTICE | ||
print_sha1.h | ||
README.md | ||
recovery-persist.cpp | ||
recovery-persist.rc | ||
recovery-refresh.cpp | ||
recovery-refresh.rc | ||
recovery.cpp | ||
res-560dpi | ||
roots.cpp | ||
roots.h | ||
rotate_logs.cpp | ||
rotate_logs.h | ||
screen_ui.cpp | ||
screen_ui.h | ||
stub_ui.h | ||
ui.cpp | ||
ui.h | ||
verifier.cpp | ||
verifier.h | ||
wear_touch.cpp | ||
wear_touch.h | ||
wear_ui.cpp | ||
wear_ui.h |
The Recovery Image
Quick turn-around testing
mm -j && m ramdisk-nodeps && m recoveryimage-nodeps
# To boot into the new recovery image
# without flashing the recovery partition:
adb reboot bootloader
fastboot boot $ANDROID_PRODUCT_OUT/recovery.img
Running the tests
# After setting up environment and lunch.
mmma -j bootable/recovery
# Running the tests on device.
adb root
adb sync data
# 32-bit device
adb shell /data/nativetest/recovery_unit_test/recovery_unit_test
adb shell /data/nativetest/recovery_component_test/recovery_component_test
# Or 64-bit device
adb shell /data/nativetest64/recovery_unit_test/recovery_unit_test
adb shell /data/nativetest64/recovery_component_test/recovery_component_test
Running the manual tests
recovery-refresh
and recovery-persist
executables exist only on systems without
/cache partition. And we need to follow special steps to run tests for them.
-
Execute the test on an A/B device first. The test should fail but it will log some contents to pmsg.
-
Reboot the device immediately and run the test again. The test should save the contents of pmsg buffer into /data/misc/recovery/inject.txt. Test will pass if this file has expected contents.
ResourceTest
validates whether the png files are qualified as background text
image under recovery.
1. `adb sync data` to make sure the test-dir has the images to test.
2. The test will automatically pickup and verify all `_text.png` files in
the test dir.