summaryrefslogtreecommitdiff
path: root/boot
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2026-06-16 08:57:04 -0600
committerTom Rini <[email protected]>2026-06-16 08:57:04 -0600
commit932e3f6c6a503cc9dda0233e9dc491fd0449a833 (patch)
tree9ef8560d4de745495419cae5ccbd02ab2af358e3 /boot
parent79f3e2f8be956575afb339a26325fcd4b15ff1e6 (diff)
parent033eb908d0a8ed938bc652f34a2d702a29a8726f (diff)
Merge tag 'u-boot-dfu-20260616' of https://source.denx.de/u-boot/custodians/u-boot-dfu
u-boot-dfu-20260616 CI: https://source.denx.de/u-boot/custodians/u-boot-dfu/-/pipelines/30480 Android: * Fix A/B slot selection when marked successful and tries = 0 Fastboot: * Handle partial blk_dwrite() as errors instead of success Usb Gadget: * Atmel: Use calloc() to initialize endpoint list
Diffstat (limited to 'boot')
-rw-r--r--boot/android_ab.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/boot/android_ab.c b/boot/android_ab.c
index 13e82dbcb7f..f2b1110aa24 100644
--- a/boot/android_ab.c
+++ b/boot/android_ab.c
@@ -289,11 +289,14 @@ int ab_select_slot(struct blk_desc *dev_desc, struct disk_partition *part_info,
slot = -1;
for (i = 0; i < abc->nb_slot; ++i) {
if (abc->slot_info[i].verity_corrupted ||
- !abc->slot_info[i].tries_remaining) {
+ (!abc->slot_info[i].tries_remaining &&
+ !abc->slot_info[i].successful_boot)) {
log_debug("ANDROID: unbootable slot %d tries: %d, ",
i, abc->slot_info[i].tries_remaining);
- log_debug("corrupt: %d\n",
+ log_debug("corrupt: %d, ",
abc->slot_info[i].verity_corrupted);
+ log_debug("successful: %d\n",
+ abc->slot_info[i].successful_boot);
continue;
}
log_debug("ANDROID: bootable slot %d pri: %d, tries: %d, ",