[PATCH] dfu: fix Kconfig dependencies
Mattijs Korpershoek
mkorpershoek at baylibre.com
Tue Sep 10 15:19:07 CEST 2024
Hi Jerome,
Thank you for the patch.
On mar., sept. 10, 2024 at 12:27, Jerome Forissier <jerome.forissier at linaro.org> wrote:
> Fix link errors caused by missing Kconfig dependencies:
>
> 1. DFU_OVER_USB compiles common/dfu.c which calls g_dnl_clear_detach()
> which is implemented in drivers/usb/gadget/g_dnl.c which needs
> USB_GADGET_DOWNLOAD. Test case:
>
> $ printf "CONFIG_USB_GADGET_DOWNLOAD=n\nCONFIG_USB_FUNCTION_FASTBOOT=n" \
> >>configs/am62px_evm_a53_defconfig
> $ make am62px_evm_a53_defconfig
> $ make CROSS_COMPILE=aarch64-linux-gnu-
> [...]
> common/dfu.c:34:(.text.run_usb_dnl_gadget+0x68): undefined reference to `g_dnl_clear_detach
> [...]
>
> 2. With the above fixed, the same build causes:
>
> common/spl/spl_dfu.c:29:(.text.spl_dfu_cmd+0xb0): undefined reference to `run_usb_dnl_gadget'
>
> This is because SPL_DFU compiles common/spl/spl_dfu.c which calls
> run_usb_dnl_gadget() which is implemented in common/dfu.c which needs
> DFU_OVER_USB.
>
> Therefore add these dependencies to Kconfig.
>
> Signed-off-by: Jerome Forissier <jerome.forissier at linaro.org>
Reviewed-by: Mattijs Korpershoek <mkorpershoek at baylibre.com>
> ---
> drivers/dfu/Kconfig | 2 +-
> drivers/usb/gadget/Kconfig | 1 +
> 2 files changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/dfu/Kconfig b/drivers/dfu/Kconfig
> index d034b501360..604386bb734 100644
> --- a/drivers/dfu/Kconfig
> +++ b/drivers/dfu/Kconfig
> @@ -7,7 +7,7 @@ config DFU
> config DFU_OVER_USB
> bool
> select HASH
> - depends on USB_GADGET
> + depends on USB_GADGET_DOWNLOAD
>
> config DFU_OVER_TFTP
> bool
> diff --git a/drivers/usb/gadget/Kconfig b/drivers/usb/gadget/Kconfig
> index 03fe3bca197..9921d3e0a77 100644
> --- a/drivers/usb/gadget/Kconfig
> +++ b/drivers/usb/gadget/Kconfig
> @@ -323,6 +323,7 @@ config SPL_DFU
> bool "Support DFU (Device Firmware Upgrade) in SPL"
> select SPL_HASH
> select SPL_DFU_NO_RESET
> + depends on DFU_OVER_USB
> depends on SPL_RAM_SUPPORT
> help
> This feature enables the DFU (Device Firmware Upgrade) in SPL with
> --
> 2.40.1
More information about the U-Boot
mailing list