[PATCH v5 00/20] Convert extension support to UCLASS and adds its support to boot flows
Kory Maincent (TI.com)
kory.maincent at bootlin.com
Thu Oct 30 17:44:53 CET 2025
This series converts the extension board framework to use UCLASS as
requested by Simon Glass, then adds extension support to pxe_utils
and bootmeth_efi (not tested) to enable extension boards devicetree load
in the standard boot process.
I can't test the imx8 extension scan enabled by the
imx8mm-cl-iot-gate_defconfig as I don't have this board.
I also can't test the efi bootmeth change as I don't have such board.
Changes in v5:
- Change sandbox extension function build dependency to
CONFIG_SUPPORT_DM_EXTENSION_SCAN and !CONFIG_XPL_BUILD.
Changes in v4:
- Update the bootstd tests, due to the removal of extension hunter.
Changes in v3:
- Reorder the patches inside the series as several config were broken
in the middle of the series.
- Use U_BOOT_DRVINFO macro instead of manually bind the drivers.
- Use uclass_first_device_err instead of extension_get_dev function.
- Made few fixes in documentation and Kconfig dependency.
- Made few changes of error value returned.
- Add a patch to document the extension structure.
- Add a patch to fix CAPE_EEPROM_BUS_NUM Kconfig dependency
Changes in v2:
- Fixes few build errors.
- Add patches to move the extension support and board scan out of XPL
images build.
Signed-off-by: Kory Maincent (TI.com) <kory.maincent at bootlin.com>
---
Kory Maincent (TI.com) (20):
MAINTAINERS: Add maintainer for extension board support
board: ti: Exclude cape detection from xPL builds
board: ti: Fix CAPE_EEPROM_BUS_NUM Kconfig dependency
board: sunxi: Exclude DIP detection from XPL builds
board: compulab: Exclude compulab extension board detection from XPL builds
include: extension_board: Document the extension structure
boot: Move extension board support from cmd/ to boot/
boot: Add UCLASS support for extension boards
board: ti: Refactor cape detection code for readability
board: ti: Convert cape detection to use UCLASS framework
board: sunxi: Refactor CHIP board extension code
board: sunxi: Convert extension support to UCLASS framework
board: sandbox: Improve extension board scan implementation
board: sandbox: Convert extension support to UCLASS framework
board: compulab: Convert imx8mm-cl-iot-gate to UCLASS extension framework
boot: Remove legacy extension board support
boot: extension: Move overlay apply custom logic to command level
boot: pxe_utils: Add extension board devicetree overlay support
boot: bootmeth_efi: Refactor distro_efi_try_bootflow_files return logic
boot: bootmeth_efi: Add extension board devicetree overlay support
MAINTAINERS | 9 +
.../imx8mm-cl-iot-gate/imx8mm-cl-iot-gate.c | 70 ++++----
board/sandbox/sandbox.c | 29 ++--
board/sunxi/Makefile | 2 +-
board/sunxi/chip.c | 36 ++--
board/ti/common/Kconfig | 2 +-
board/ti/common/Makefile | 2 +-
board/ti/common/cape_detect.c | 56 ++++---
boot/Kconfig | 4 +
boot/Makefile | 1 +
boot/bootmeth_efi.c | 79 +++++++--
boot/extension-uclass.c | 93 +++++++++++
boot/pxe_utils.c | 92 +++++++++++
cmd/Kconfig | 3 -
cmd/extension_board.c | 183 ++++++++++-----------
doc/usage/cmd/extension.rst | 29 ++--
doc/usage/pxe.rst | 4 +
include/dm/uclass-id.h | 1 +
include/extension_board.h | 86 ++++++++--
test/boot/bootdev.c | 32 ++--
test/boot/bootflow.c | 6 +-
test/boot/bootstd_common.h | 4 +-
22 files changed, 565 insertions(+), 258 deletions(-)
---
base-commit: 8e7f8c1248e8adfb525a2a4ea56ebf7e54ff5d7a
change-id: 20250916-feature_sysboot_extension_board-958dd0072565
Best regards,
--
Köry Maincent, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com
More information about the U-Boot
mailing list