[PATCH 00/16] Convert extension support to UCLASS and adds its support to boot flows

Simon Glass sjg at chromium.org
Mon Oct 6 22:38:21 CEST 2025


Hi Kory,

On Fri, 3 Oct 2025 at 10:34, Kory Maincent <kory.maincent at 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.
>
> The UCLASS implementation provides one driver that manages all
> extension boards (alternative would be one U-Boot device per
> extension board). Simon is that what you would expect?

I believe that allowing board-specific drivers is better, since some
will want to check an EEPROM, some will use GPIO, etc.

Also, for testing, we should have a driver for sandbox.

Regards,
Simon


>
> Signed-off-by: Kory Maincent <kory.maincent at bootlin.com>
> ---
> Kory Maincent (16):
>       MAINTAINERS: Add maintainer for extension board support
>       boot: Move extension board support from cmd/ to boot/
>       boot: Add UCLASS support for extension boards
>       board: ti: Exclude cape detection from XPL builds
>       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        |  60 ++++---
>  board/sandbox/sandbox.c                            |  22 ++-
>  board/sunxi/chip.c                                 |  33 ++--
>  board/ti/common/Makefile                           |   2 +
>  board/ti/common/cape_detect.c                      |  52 +++---
>  boot/Kconfig                                       |   3 +
>  boot/Makefile                                      |   1 +
>  boot/bootmeth_efi.c                                |  78 +++++++--
>  boot/extension-uclass.c                            | 138 ++++++++++++++++
>  boot/pxe_utils.c                                   |  90 ++++++++++
>  cmd/Kconfig                                        |   5 +-
>  cmd/extension_board.c                              | 183 ++++++++++-----------
>  doc/usage/cmd/extension.rst                        |  24 +--
>  include/dm/uclass-id.h                             |   1 +
>  include/extension_board.h                          |  71 ++++++--
>  16 files changed, 544 insertions(+), 228 deletions(-)
> ---
> base-commit: 9710d98e8942151fc0c62d54100d9d27e8263d04
> 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