Re: [PATCH v3 00/20] Convert extension support to UCLASS and adds its support to boot flows

Simon Glass
2025-10-19T13:06:09Z

Hi Kory,

On Mon, 13 Oct 2025 at 14:32, Kory Maincent (TI.com)
<kory.maincent@bootlin.com> wrote:
>
> 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.

You can test this with sandbox, using one of the bootmeth tests,
perhaps. Let me know if you need help with this.

>
> 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@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 | 26 ++-
> 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 ++--
> include/dm/uclass-id.h | 1 +
> include/extension_board.h | 85 ++++++++--
> 18 files changed, 541 insertions(+), 232 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
>

Regards,
Simon