[PATCH RFT v6 0/3] fastboot: add support for generic block flashing
Neil Armstrong
neil.armstrong at linaro.org
Mon Jun 30 17:19:56 CEST 2025
This serie permits using any block device as target
for fastboot by moving the generic block logic into
a common set of helpers and also use them as generic
backend.
The erase logic has been extended to support software
erase since only 2 block drivers exposes the erase
operation.
Tests are welcome to make sure this series doesn't
introduce any regressions on the emmc backend.
Before and after patchset:
$ tools/qconfig.py -f FASTBOOT ARCH_SUNXI BLK ~FASTBOOT_FLASH
1 matches
CHIP
The CHIP board disables MMC and had FASTBOOT_BLK disabled to
save memory, but adding the BLK dependency made FASTBOOT_FLASH_BLOCK
enabled on boards that didn't want FASTBOOT_FLASH enabled at all.
Signed-off-by: Neil Armstrong <neil.armstrong at linaro.org>
---
Changes in v6:
- Fix BLK dependency that can affect SUNXI board with MMC/NAND disabled
- Link to v5: https://lore.kernel.org/r/20250606-topic-fastboot-blk-v5-0-203538ec5b32@linaro.org
Changes in v5:
- Removed BLK dependency on FASTBOOT_FLASH_MMC
- Removed BLK dependency on FASTBOOT_FLASH in patch 2
- Added back BLK dependency on FASTBOOT_FLASH in patch 3
- Rewrote FASTBOOT_FLASH_BLOCK_INTERFACE_ID help text with Tom suggestions
- Removed default for FASTBOOT_FLASH_BLOCK_INTERFACE_NAME
- CI test run is fixed with FASTBOOT_FLASH_BLOCK_INTERFACE_ID default to 0
- Link to v4: https://lore.kernel.org/r/20250522-topic-fastboot-blk-v4-0-af7f7f30564d@linaro.org
Changes in v4:
- Rebase on next
- Fixup Kconfig default values & description
- Link to v3: https://lore.kernel.org/r/20250506-topic-fastboot-blk-v3-0-d94be5829f46@linaro.org
Changes in v3:
- Move Kconfig/Makefile changes over the 2 patches
- Relicence to GPL2 with Dmitrii approval
- Move soft erase in a separate function
- Update help text of Kconfig BLOCK entries
- Add warning at init if MMC was selected with BLOCK backend
- Link to v2: https://lore.kernel.org/r/20250409-topic-fastboot-blk-v2-0-c676f21d414f@linaro.org
Changes in v2:
- Dropped applied virtio erase patch
- Reorganize patches, introducing helpers first, using them in mmc afterwards
- Added soft-erase logic
- Added move helpers to handle the partitions erase & flash from emmc
- Fixed const var on last patch
- Link to v1: https://lore.kernel.org/all/20240306185921.1854109-1-dimorinny@google.com/
---
Dmitrii Merkurev (3):
fastboot: blk: introduce fastboot block flashing support
fastboot: blk: switch emmc to use the block helpers
fastboot: integrate block flashing back-end
drivers/fastboot/Kconfig | 32 ++++-
drivers/fastboot/Makefile | 4 +-
drivers/fastboot/fb_block.c | 323 ++++++++++++++++++++++++++++++++++++++++++
drivers/fastboot/fb_command.c | 8 ++
drivers/fastboot/fb_common.c | 22 ++-
drivers/fastboot/fb_getvar.c | 8 +-
drivers/fastboot/fb_mmc.c | 210 ++-------------------------
include/fb_block.h | 105 ++++++++++++++
8 files changed, 506 insertions(+), 206 deletions(-)
---
base-commit: f2220962f9cb1366bfc003ec2cc5650499c68895
change-id: 20250408-topic-fastboot-blk-c5e14cd59224
Best regards,
--
Neil Armstrong <neil.armstrong at linaro.org>
More information about the U-Boot
mailing list