Age | Commit message (Collapse) | Author |
|
We can already somewhat control the fastboot menu
over the serial UART, as up and down changes action mode.
However, there's no way to select the mode over the UART.
So add some feedback over the UART as to the current mode
and use SCAN_RIGHT as the selection option (equivalent to
the power button).
Signed-off-by: John Stultz <john.stultz@linaro.org>
[AmitP: It is equivalent of using VOL+ (up), VOL- (down)
and POWER keys on db845c to scroll thru or select
fastboot options displayed over HDMI display.]
Tested-by: Amit Pundir <amit.pundir@linaro.org>
Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
|
|
mode keys
Pressing <DOWN> over serial UART console will force the
loader to enter fastboot mode, and similarly with <UP> and
<ESC>, so lets make these helpful keys more discoverable
with an explicit message on the serial line.
Signed-off-by: John Stultz <john.stultz@linaro.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Tested-by: Amit Pundir <amit.pundir@linaro.org>
Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
|
|
When using community builds, we want to depend as less as possible on
Qualcomm internal builds quirks. This function does a few checks which
are relevant when booting a Qualcomm Android image, but not well
suited for community builds. For example users might choose to remove
system_x partition, in which case the bootloader wouldn't boot
anymore.
Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
|
|
Change-Id: I74cda7c0dbb679631e923caaf11f2a7bf421ef98
|
|
After dynamic partition, vbmeta_system and vbemta_vendor partitions
are added. Therefore, partitions with 'vbmeta' prefix should be treated
as vbmeta partition.
This makes libavb avoid locating avb footer from the end of vbmeta_*
partitions. And will not emit the following error message, which could
be confusing even if the following read of vbmeta succeeds from the
beginning of the partition.
Run the following test case will show different results after this
change.
$ ./out/host/linux-x86/nativetest64/libavb_host_unittest/libavb_host_unittest
--gtest_filter=AvbSlotVerifyTest.HashDescriptorInOtherVBMetaPartition
Before this change
-------------------------------------------------------------------------------
[ RUN ] AvbSlotVerifyTest.HashDescriptorInOtherVBMetaPartition
avb_slot_verify.c:678: DEBUG: Loading vbmeta struct from partition 'vbmeta'.
avb_footer.c:41: ERROR: Footer magic is incorrect.
avb_slot_verify.c:650: DEBUG: vbmeta_google: No footer detected.
avb_slot_verify.c:678: DEBUG: Loading vbmeta struct from partition
'vbmeta_google'.
[ OK ] AvbSlotVerifyTest.HashDescriptorInOtherVBMetaPartition (960 ms)
After this change
-------------------------------------------------------------------------------
[ RUN ] AvbSlotVerifyTest.HashDescriptorInOtherVBMetaPartition
avb_slot_verify.c:683: DEBUG: Loading vbmeta struct from partition 'vbmeta'.
avb_slot_verify.c:683: DEBUG: Loading vbmeta struct from partition 'vbmeta_google'.
[ OK ] AvbSlotVerifyTest.HashDescriptorInOtherVBMetaPartition (961ms)
Bug: b/134989217
Test: device launch, verify vbmeta, vbmeta_system, vbmeta_vendor.
Test: m libavb_host_unittest -j8 && \
./out/host/linux-x86/nativetest64/libavb_host_unittest/libavb_host_unittest
Change-Id: Ib0c2cd56197508fef8c12985e8cc0cd79469556c
|
|
|
|
Add getvar variable to query the status of the parallel download flash
in the fastboot mode.
Change-Id: If4082474cee4444574c233ca1d7f6931b8af9084
|
|
Fix the check for Update Rollback syscall returned
from TZ.
Change-Id: I2ed86277b2f150a569c4425f65cacc756470f77d
|
|
|
|
|
|
|
|
GetFastbootDeviceData"
|
|
Add max row check when chosening the font scale factor. Base on the
max support row and the character number per line to chosen the best
font scale factor.
Change-Id: I261782574826cf487c0bdbeb66bd6364f8793c3b
|
|
Add NOTICE files to add license's as the code is taken
from other repository and adding to bootloader code.
Change-Id: If5e755b279af5a929e64a57d4f28c927a4fc18d4
|
|
When AVB_VBMETA_IMAGE_FLAGS_VERIFICATION_DISABLED is set,
AvbSlotVerifyData->cmdline should be a NUL-terminated string instead of
NULL.
Bug: 119551429
Test: atest libavb_host_unittest
Git-repo: https://source.codeaurora.org/quic/la/platform/external/avb
Git-Commit: 9ba3b6613b4e5130fa01a11d984c6b5f0eb3af05
Change-Id: If9cc5feb4f59b0f6b73b577fbff84bb34e514304
|
|
On devices with dynamic partitions, 'system' partition might not exist.
Therefore, we should not add root=$(ANDROID_SYSTEM_PARTUUID) in kernel
cmdline and resolve it for devices without system partition.
Bug: 119551429
Test: m libavb_host_unittest &&
../../out/host/linux-x86/nativetest64/libavb_host_unittest/libavb_host_unittest
Git-repo: https://source.codeaurora.org/quic/la/platform/external/avb
Git-Commit: 5abd6bc2578968d24406d834471adfd995a0c2e9
Change-Id: I767fb1b18182663d8401cf0e8d19930d45c4b83a
|
|
|
|
Set the number of CPUs present in the target.
Change-Id: I4640dddee68d90f298c836b86f9d6f2cfca15b71
Signed-off-by: Saranya Chidura <schidura@codeaurora.org>
|
|
For eMMC device, it will be treated as UFS device if the parameter
is got from PC is not correct that will cause the GPT partition update
fail.
Change-Id: I8b2d0757be2646b2e0c8611efb9aae28b33a9e03
|
|
|
|
|
|
Add new nodes device tree nodes to the table.
Change-Id: I2d7ce33957a2220388cdc0e16b3b7f9732a8aa68
|
|
Move updating of partial nodes inside update device tree.
Search for nodes only if it is defective.
Add support for adding a property to disable defective node.
Change-Id: Ic9a7d5c6bb43395a2739aebb2259bcdff5db4acf
|
|
Update chip info header files to be in sync with uefi.
Change-Id: I77fa41df35d92e23567eb820c68288dd66c87a04
|
|
|
|
|
|
Bootimage header version v2 changes the way dtb's are appended. Boot
image with header version v2 will not have kernel Image appended dtb but
it is added to boot.img at an offset. It requires a new version to
maintain backward compatibility of images.
Change-Id: I8be2f4fe881180eaf7e60f998ed389a72f3a3b1c
|
|
Removing an extra space in the string which adds DtboIdx to the CmdLine
Change-Id: I9e38aa8b6cfbe1ba118a4e8e095bda00040b7ec9
|
|
In getddrinfo function ddr type is getting updated even after call has failed.
This is unnecessary remove it.
Change-Id: I06ef8d1d1aec247b57b6a9cefcb9c4cccb9672cf
|
|
Right now memory node for granule is queried before querying the hardware.
This is not required if hardware doesn't supports it and is expensive operation.
Move it so that it is queried only if hardware support is present.
Change-Id: I02cf31f2894f1609a6a23f4b652d76859bc339ad
|
|
|
|
|
|
|
|
Read the value of boot security patch containing
date information, from the property com.android.
build.boot.security_patch in vbmeta data and send
it to keymaster TA. This new patch value contains
date information as well. If the property is not
defined or keymaster TA is not updated, send the
security patch value read from boot image header
as before.
Change-Id: I82e0894a178927e9fa2f884896fbaf14724e4f13
|
|
Update rollback version using new TZ syscall when
one of the slots has a higher image version.
Change-Id: I0cff3771f932e4af7d965501fbd25eb7b91a308f
|
|
There is stack smashing issue when return the whole structure in
GetFastbootDeviceData. Return pointer instead of the whole structure
to make compiler easy refer to stack usage.
Change-Id: Ia4893e8b2a712fa340afdc85772876a390f2e3dd
|
|
To support dynamic partition, disable firmware entries in fstab nodes.
Partitions will be mounted as part of super partition.
Change-Id: Iffc22005c2b7d8b64bf10687049a720bd891b59c
|
|
Change to remove multiple definition for macro DTB_PAB_SIZE,
used for padding for future expansion.
Change-Id: Ib28ee5f24752415768847e88b1892175c382a082
|
|
To handle squashFS boot on NAND, the command line has to set:
* root parameter to the gluebi emulated MTD device.
* rootfstype parameter to squashfs
Change-Id: Ief07c5c8d8e66e9c7714baff1d3c8f807c284d0c
|
|
If the device is in locked state do not allow fastboot
boot command. Fastboot boot needs to work for unlocked
state only.
Change-Id: I5b3e8ac9128907384d9b66f569aa22f0e82956eb
|
|
|
|
In a scenario, when a missing Blkio handle occured and the partition
info in the storage is right, doing attributes and GUID compare will
update the GPT header which will cause the device boot up failed. So
don't update the GPT header if nothing attribute or GUID needed to be
changed.
Change-Id: I093c1b56da0c4315cd312cd031697d7eb10bdd53
|
|
Calculate ramdisk load address and dt load address, based
on actual ramdisk size and max dt size. This will ensure,
we can change ramdisk area in buffer with dynamic change in
ramdisk size.
Change-Id: I136c41e334ba9837453bda436af5e25b52ce6761
|
|
Compute the digest over all vbmeta's
present on device and provide the digest
to keymaster. This digest is provided as
part of the keymaster attestation certificate
Change-Id: If95d252df1eed10792b6a8fb8c808bd5c50b9933
|
|
|
|
|
|
If we don't find a AvbFooter when resolving a chain descriptor, also
check if there's a vbmeta struct in the beginning. If there is, use
it.
This is to support the use-case where a single vbmeta_<orgname>
partition can hold metadata for several other partitions which may not
be easily readable by the bootloader (e.g. they are "logical"
partitions using a proprietary partitioning format). For example, this
supports the following setup
vbmeta # chain desc for vbmeta_google
vbmeta_google # hash desc for boot, dtbo and hashtree desc for system, vendor
boot
dtbo
super # container for system and vendor logical partitions
system # logical partition (not readable by bootloader)
vendor # logical partition (not readable by bootloader)
where vbmeta_google has the vbmeta struct in the beginning just as if
it were the main vbmeta partition.
Additional change: Previously it was optional to support the
get_size_of_partition() operation. Starting with this commit, this
operation is mandatory and must be implemented such that
AVB_IO_RESULT_ERROR_NO_SUCH_PARTITION is returned for partitions that
don't exist.
Also introduce a new 'extract_vbmeta_image' sub-command to avbtool
that can be used to extract the vbmeta blob from a footer.
Change-Id: If78538672d101127ecbae02739648446746d4b40
|
|
In fastbootd mode the device needs to boot in
recovery mode. To support the same VB2.0 need
to load and validate recovery in case if super
partition is supported and device is booting in
recovery mode.
Change-Id: I7abffa9fc8f8fd36a31b1619b7d9149ba68b01f8
|
|
On devices using BOARD_AVB_VBMETA_MAINLINE, the kernel command line
should not contain the $(ANDROID_SYSTEM_PARTUUID) pattern, since the
device will be using an initial ramdisk for both normal boot and
recovery. Such a device will also not have system partition entries
in the GPT, and thus querying the GUID will fail.
In this case we want avb_sub_cmdline() to only query the partition GUID
if the search string is actually present.
Change-Id: Ic3bf795d3bdec7611a95d1e1ab87e12ecf2bdbdb
|
|
Memory map for 32-bit target is less than 64-bit target.
Change introduces, ramdiskendaddr accordingly.
Change-Id: I5bcf75dcee51ce45c443de6b211abffb4900bfd2
|