From: Lukasz Majewski <l.majewski@samsung.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v3 2/3] spl: dfu: move DFU Kconfig to SPL Kconfig
Date: Wed, 16 Nov 2016 15:06:52 +0100 [thread overview]
Message-ID: <20161116150652.44dc3519@amdc2363> (raw)
In-Reply-To: <20161115210246.2245-3-stefan@agner.ch>
Hi Stefan,
> From: Stefan Agner <stefan.agner@toradex.com>
>
> The DFU Kconfig menu entries should be part of the SPL
> Kconfig file. Also avoid using the top level Makefile by
> moving the config dependent build artifacts to the driver/
> and driver/usb/gadget/ Makfiles.
>
> With that, DFU can be built again in SPL if
> CONFIG_SPL_DFU_SUPPORT is enabled.
>
> Fixes: 6ad6102246d8 ("usb:gadget: Disallow DFU in SPL for now")
>
> Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
> Reviewed-by: Simon Glass <sjg@chromium.org>
Acked-by: Lukasz Majewski <l.majewski@samsung.com>
>
> ---
> Tom, I checked size for am335x_evm_usbspl_defconfig, it stays
> fine with this patch.
>
> Changes in v3: None
> Changes in v2:
> - Leave DWC3 config in top level SPL Makefile (as U-Boot does)
>
> Kconfig | 27 ---------------------------
> common/spl/Kconfig | 26 ++++++++++++++++++++++++++
> drivers/Makefile | 3 +++
> drivers/usb/gadget/Makefile | 8 ++++++--
> include/configs/dra7xx_evm.h | 1 -
> scripts/Makefile.spl | 3 ---
> 6 files changed, 35 insertions(+), 33 deletions(-)
>
> diff --git a/Kconfig b/Kconfig
> index 1263d0b..a759e4d 100644
> --- a/Kconfig
> +++ b/Kconfig
> @@ -291,33 +291,6 @@ config FIT_IMAGE_POST_PROCESS
> injected into the FIT creation (i.e. the blobs would have
> been pre- processed before being added to the FIT image).
>
> -config SPL_DFU_SUPPORT
> - bool "Enable SPL with DFU to load binaries to memory device"
> - depends on USB
> - help
> - Currently the SPL does not have capability to load the
> - binaries or boot images to boot devices like
> ram,eMMC,SPI,etc.
> - This feature enables the DFU (Device Firmware Upgarde) in
> SPL with
> - RAM memory device support. The ROM code will load and
> execute
> - the SPL built with dfu. The user can load binaries
> (u-boot/kernel) to
> - selected device partition from host-pc using dfu-utils.
> - This feature will be useful to flash the binaries to
> factory
> - or bare-metal boards using USB interface.
> -
> -choice
> - bool "DFU device selection"
> - depends on SPL_DFU_SUPPORT
> -
> -config SPL_DFU_RAM
> - bool "RAM device"
> - depends on SPL_DFU_SUPPORT
> - help
> - select RAM/DDR memory device for loading binary images
> - (u-boot/kernel) to the selected device partition using
> - DFU and execute the u-boot/kernel from RAM.
> -
> -endchoice
> -
> config SYS_CLK_FREQ
> depends on ARC || ARCH_SUNXI
> int "CPU clock frequency"
> diff --git a/common/spl/Kconfig b/common/spl/Kconfig
> index bb99f1f..54bcba3 100644
> --- a/common/spl/Kconfig
> +++ b/common/spl/Kconfig
> @@ -497,6 +497,32 @@ config SPL_USB_SUPPORT
> config options. This enables loading from USB using a
> configured device.
>
> +config SPL_DFU_SUPPORT
> + bool "Support DFU (Device Firmware Upgarde)"
> + depends on SPL
> + select SPL_HASH_SUPPORT
> + help
> + This feature enables the DFU (Device Firmware Upgarde) in
> SPL with
> + RAM memory device support. The ROM code will load and
> execute
> + the SPL built with dfu. The user can load binaries
> (u-boot/kernel) to
> + selected device partition from host-pc using dfu-utils.
> + This feature is useful to flash the binaries to factory or
> bare-metal
> + boards using USB interface.
> +
> +choice
> + bool "DFU device selection"
> + depends on SPL_DFU_SUPPORT
> +
> +config SPL_DFU_RAM
> + bool "RAM device"
> + depends on SPL_DFU_SUPPORT
> + help
> + select RAM/DDR memory device for loading binary images
> + (u-boot/kernel) to the selected device partition using
> + DFU and execute the u-boot/kernel from RAM.
> +
> +endchoice
> +
> config SPL_WATCHDOG_SUPPORT
> bool "Support watchdog drivers"
> depends on SPL
> diff --git a/drivers/Makefile b/drivers/Makefile
> index 761d0b3..40aba58 100644
> --- a/drivers/Makefile
> +++ b/drivers/Makefile
> @@ -34,6 +34,9 @@ obj-$(CONFIG_SPL_ETH_SUPPORT) += net/phy/
> obj-$(CONFIG_SPL_USBETH_SUPPORT) += net/phy/
> obj-$(CONFIG_SPL_MUSB_NEW_SUPPORT) += usb/musb-new/
> obj-$(CONFIG_SPL_USBETH_SUPPORT) += usb/gadget/
> +obj-$(CONFIG_SPL_DFU_SUPPORT) += usb/gadget/
> +obj-$(CONFIG_SPL_DFU_SUPPORT) += usb/gadget/udc/
> +obj-$(CONFIG_SPL_DFU_SUPPORT) += dfu/
> obj-$(CONFIG_SPL_WATCHDOG_SUPPORT) += watchdog/
> obj-$(CONFIG_SPL_USB_HOST_SUPPORT) += usb/host/
> obj-$(CONFIG_OMAP_USB_PHY) += usb/phy/
> diff --git a/drivers/usb/gadget/Makefile b/drivers/usb/gadget/Makefile
> index acc9964..5b18e8c 100644
> --- a/drivers/usb/gadget/Makefile
> +++ b/drivers/usb/gadget/Makefile
> @@ -8,6 +8,10 @@
> obj-$(CONFIG_USB_GADGET) += epautoconf.o config.o usbstring.o
> obj-$(CONFIG_USB_ETHER) += epautoconf.o config.o usbstring.o
>
> +ifdef CONFIG_SPL_BUILD
> +obj-$(CONFIG_SPL_DFU_SUPPORT) += f_dfu.o
> +endif
> +
> # new USB gadget layer dependencies
> ifdef CONFIG_USB_GADGET
> obj-$(CONFIG_USB_GADGET_AT91) += at91_udc.o
> @@ -18,13 +22,13 @@ obj-$(CONFIG_USB_GADGET_DWC2_OTG_PHY) +=
> dwc2_udc_otg_phy.o obj-$(CONFIG_USB_GADGET_FOTG210) += fotg210.o
> obj-$(CONFIG_CI_UDC) += ci_udc.o
> obj-$(CONFIG_USB_GADGET_DOWNLOAD) += g_dnl.o
> -obj-$(CONFIG_USB_FUNCTION_THOR) += f_thor.o
> ifndef CONFIG_SPL_BUILD
> +obj-$(CONFIG_USB_FUNCTION_THOR) += f_thor.o
> obj-$(CONFIG_USB_FUNCTION_DFU) += f_dfu.o
> -endif
> obj-$(CONFIG_USB_FUNCTION_MASS_STORAGE) += f_mass_storage.o
> obj-$(CONFIG_USB_FUNCTION_FASTBOOT) += f_fastboot.o
> endif
> +endif
> ifdef CONFIG_USB_ETHER
> obj-y += ether.o
> obj-$(CONFIG_USB_ETH_RNDIS) += rndis.o
> diff --git a/include/configs/dra7xx_evm.h
> b/include/configs/dra7xx_evm.h index 798002d..e295a84 100644
> --- a/include/configs/dra7xx_evm.h
> +++ b/include/configs/dra7xx_evm.h
> @@ -133,7 +133,6 @@
> #undef CONFIG_CMD_BOOTD
> #ifdef CONFIG_SPL_DFU_SUPPORT
> #define CONFIG_SPL_LOAD_FIT_ADDRESS 0x80200000
> -#define CONFIG_SPL_HASH_SUPPORT
> #define DFU_ALT_INFO_RAM \
> "dfu_alt_info_ram=" \
> "kernel ram 0x80200000 0x4000000;" \
> diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
> index e0b0117..1e3b60a 100644
> --- a/scripts/Makefile.spl
> +++ b/scripts/Makefile.spl
> @@ -66,9 +66,6 @@ endif
>
> libs-$(CONFIG_SPL_LIBDISK_SUPPORT) += disk/
> libs-y += drivers/
> -libs-$(CONFIG_SPL_DFU_SUPPORT) += drivers/dfu/
> -libs-$(CONFIG_SPL_DFU_SUPPORT) += drivers/usb/gadget/
> -libs-$(CONFIG_SPL_DFU_SUPPORT) += drivers/usb/gadget/udc/
> libs-$(CONFIG_SPL_DFU_SUPPORT) += drivers/usb/dwc3/
> libs-y += dts/
> libs-y += fs/
--
Best regards,
Lukasz Majewski
Samsung R&D Institute Poland (SRPOL) | Linux Platform Group
next prev parent reply other threads:[~2016-11-16 14:06 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-15 21:02 [U-Boot] [PATCH v3 0/3] spl: USB Gadget cleanup Stefan Agner
2016-11-15 21:02 ` [U-Boot] [PATCH v3 1/3] spl: add RAM boot device only if it is actually defined Stefan Agner
2016-11-16 13:44 ` Lukasz Majewski
2016-11-18 1:14 ` Simon Glass
2016-11-18 1:27 ` Stefan Agner
2016-11-19 13:48 ` Simon Glass
2016-11-15 21:02 ` [U-Boot] [PATCH v3 2/3] spl: dfu: move DFU Kconfig to SPL Kconfig Stefan Agner
2016-11-15 21:34 ` Brüns, Stefan
2016-11-16 14:06 ` Lukasz Majewski [this message]
2016-11-15 21:02 ` [U-Boot] [PATCH v3 3/3] spl: add USB Gadget config option Stefan Agner
2016-11-16 14:31 ` Lukasz Majewski
2016-11-16 7:04 ` [U-Boot] [PATCH v3 0/3] spl: USB Gadget cleanup B, Ravi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20161116150652.44dc3519@amdc2363 \
--to=l.majewski@samsung.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.