* [U-Boot] [PATCH v2 1/3] spl: add RAM boot device only if it is actually defined
2016-11-12 19:13 [U-Boot] [PATCH v2 0/3] spl: USB Gadget cleanup Stefan Agner
@ 2016-11-12 19:13 ` Stefan Agner
2016-11-14 20:44 ` Simon Glass
2016-11-12 19:13 ` [U-Boot] [PATCH v2 2/3] spl: dfu: move DFU Kconfig to SPL Kconfig Stefan Agner
` (2 subsequent siblings)
3 siblings, 1 reply; 11+ messages in thread
From: Stefan Agner @ 2016-11-12 19:13 UTC (permalink / raw)
To: u-boot
From: Stefan Agner <stefan.agner@toradex.com>
Some devices (e.g. dra7xx) support loading to RAM using DFU without
having direct boot from RAM support. Make sure the linker list
does not contain BOOT_DEVICE_RAM if CONFIG_SPL_RAM_SUPPORT is not
enabled.
Fixes: 98136b2f26fa ("spl: Convert spl_ram_load_image() to use linker list")
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
---
Changes in v2:
- Use CONFIG_SPL_RAM_SUPPORT to descide whether to compile the
function in first place.
common/spl/spl.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/common/spl/spl.c b/common/spl/spl.c
index bdb165a..ef17619 100644
--- a/common/spl/spl.c
+++ b/common/spl/spl.c
@@ -174,7 +174,7 @@ __weak void __noreturn jump_to_image_no_args(struct spl_image_info *spl_image)
# define CONFIG_SPL_LOAD_FIT_ADDRESS 0
#endif
-#if defined(CONFIG_SPL_RAM_DEVICE) || defined(CONFIG_SPL_DFU_SUPPORT)
+#if defined(CONFIG_SPL_RAM_SUPPORT) || defined(CONFIG_SPL_DFU_SUPPORT)
static ulong spl_ram_load_read(struct spl_load_info *load, ulong sector,
ulong count, void *buf)
{
@@ -220,7 +220,9 @@ static int spl_ram_load_image(struct spl_image_info *spl_image,
return 0;
}
+#if defined(CONFIG_SPL_RAM_SUPPORT)
SPL_LOAD_IMAGE_METHOD(0, BOOT_DEVICE_RAM, spl_ram_load_image);
+#endif
#if defined(CONFIG_SPL_DFU_SUPPORT)
SPL_LOAD_IMAGE_METHOD(0, BOOT_DEVICE_DFU, spl_ram_load_image);
#endif
--
2.10.2
^ permalink raw reply related [flat|nested] 11+ messages in thread* [U-Boot] [PATCH v2 1/3] spl: add RAM boot device only if it is actually defined
2016-11-12 19:13 ` [U-Boot] [PATCH v2 1/3] spl: add RAM boot device only if it is actually defined Stefan Agner
@ 2016-11-14 20:44 ` Simon Glass
2016-11-14 22:44 ` Stefan Agner
0 siblings, 1 reply; 11+ messages in thread
From: Simon Glass @ 2016-11-14 20:44 UTC (permalink / raw)
To: u-boot
Hi Stefan,
On 12 November 2016 at 12:13, Stefan Agner <stefan@agner.ch> wrote:
> From: Stefan Agner <stefan.agner@toradex.com>
>
> Some devices (e.g. dra7xx) support loading to RAM using DFU without
> having direct boot from RAM support. Make sure the linker list
> does not contain BOOT_DEVICE_RAM if CONFIG_SPL_RAM_SUPPORT is not
> enabled.
>
> Fixes: 98136b2f26fa ("spl: Convert spl_ram_load_image() to use linker list")
>
> Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
> ---
>
> Changes in v2:
> - Use CONFIG_SPL_RAM_SUPPORT to descide whether to compile the
> function in first place.
>
> common/spl/spl.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
Instead of this, how about moving it into its own file and putting
that condition in the Makefile?
Regards,
Simon
^ permalink raw reply [flat|nested] 11+ messages in thread* [U-Boot] [PATCH v2 1/3] spl: add RAM boot device only if it is actually defined
2016-11-14 20:44 ` Simon Glass
@ 2016-11-14 22:44 ` Stefan Agner
2016-11-15 0:33 ` Simon Glass
0 siblings, 1 reply; 11+ messages in thread
From: Stefan Agner @ 2016-11-14 22:44 UTC (permalink / raw)
To: u-boot
On 2016-11-14 12:44, Simon Glass wrote:
> Hi Stefan,
>
> On 12 November 2016 at 12:13, Stefan Agner <stefan@agner.ch> wrote:
>> From: Stefan Agner <stefan.agner@toradex.com>
>>
>> Some devices (e.g. dra7xx) support loading to RAM using DFU without
>> having direct boot from RAM support. Make sure the linker list
>> does not contain BOOT_DEVICE_RAM if CONFIG_SPL_RAM_SUPPORT is not
>> enabled.
>>
>> Fixes: 98136b2f26fa ("spl: Convert spl_ram_load_image() to use linker list")
>>
>> Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
>> ---
>>
>> Changes in v2:
>> - Use CONFIG_SPL_RAM_SUPPORT to descide whether to compile the
>> function in first place.
>>
>> common/spl/spl.c | 4 +++-
>> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> Instead of this, how about moving it into its own file and putting
> that condition in the Makefile?
Generally a good idea.
What I don't like to much that we have two orthogonal config options
using that same function...
We probably should have something like:
CONFIG_SPL_RAM_SUPPORT
CONFIG_SPL_RAM_ONLY_SUPPORT depends on CONFIG_SPL_RAM_SUPPORT
CONFIG_SPL_DFU_SUPPORT depends on CONFIG_SPL_RAM_SUPPORT
Then we could use a single config option (CONFIG_SPL_RAM_SUPPORT) for
the new file.
However, that is beyond bug fixing, and I'd rather prefer to have it in
a separate patch, what do you think?
--
Stefan
^ permalink raw reply [flat|nested] 11+ messages in thread* [U-Boot] [PATCH v2 1/3] spl: add RAM boot device only if it is actually defined
2016-11-14 22:44 ` Stefan Agner
@ 2016-11-15 0:33 ` Simon Glass
0 siblings, 0 replies; 11+ messages in thread
From: Simon Glass @ 2016-11-15 0:33 UTC (permalink / raw)
To: u-boot
Hi Stefan,
On 14 November 2016 at 15:44, Stefan Agner <stefan@agner.ch> wrote:
> On 2016-11-14 12:44, Simon Glass wrote:
>> Hi Stefan,
>>
>> On 12 November 2016 at 12:13, Stefan Agner <stefan@agner.ch> wrote:
>>> From: Stefan Agner <stefan.agner@toradex.com>
>>>
>>> Some devices (e.g. dra7xx) support loading to RAM using DFU without
>>> having direct boot from RAM support. Make sure the linker list
>>> does not contain BOOT_DEVICE_RAM if CONFIG_SPL_RAM_SUPPORT is not
>>> enabled.
>>>
>>> Fixes: 98136b2f26fa ("spl: Convert spl_ram_load_image() to use linker list")
>>>
>>> Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
>>> ---
>>>
>>> Changes in v2:
>>> - Use CONFIG_SPL_RAM_SUPPORT to descide whether to compile the
>>> function in first place.
>>>
>>> common/spl/spl.c | 4 +++-
>>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> Instead of this, how about moving it into its own file and putting
>> that condition in the Makefile?
>
> Generally a good idea.
>
> What I don't like to much that we have two orthogonal config options
> using that same function...
>
> We probably should have something like:
>
> CONFIG_SPL_RAM_SUPPORT
> CONFIG_SPL_RAM_ONLY_SUPPORT depends on CONFIG_SPL_RAM_SUPPORT
> CONFIG_SPL_DFU_SUPPORT depends on CONFIG_SPL_RAM_SUPPORT
>
> Then we could use a single config option (CONFIG_SPL_RAM_SUPPORT) for
> the new file.
>
> However, that is beyond bug fixing, and I'd rather prefer to have it in
> a separate patch, what do you think?
That's fine with me.
Regards,
Simon
^ permalink raw reply [flat|nested] 11+ messages in thread
* [U-Boot] [PATCH v2 2/3] spl: dfu: move DFU Kconfig to SPL Kconfig
2016-11-12 19:13 [U-Boot] [PATCH v2 0/3] spl: USB Gadget cleanup Stefan Agner
2016-11-12 19:13 ` [U-Boot] [PATCH v2 1/3] spl: add RAM boot device only if it is actually defined Stefan Agner
@ 2016-11-12 19:13 ` Stefan Agner
2016-11-14 20:44 ` Simon Glass
2016-11-12 19:13 ` [U-Boot] [PATCH v2 3/3] spl: add USB Gadget config option Stefan Agner
2016-11-15 8:52 ` [U-Boot] [PATCH v2 0/3] spl: USB Gadget cleanup B, Ravi
3 siblings, 1 reply; 11+ messages in thread
From: Stefan Agner @ 2016-11-12 19:13 UTC (permalink / raw)
To: u-boot
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>
---
Tom, I checked size for am335x_evm_usbspl_defconfig, it stays
fine with this patch.
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/
--
2.10.2
^ permalink raw reply related [flat|nested] 11+ messages in thread* [U-Boot] [PATCH v2 2/3] spl: dfu: move DFU Kconfig to SPL Kconfig
2016-11-12 19:13 ` [U-Boot] [PATCH v2 2/3] spl: dfu: move DFU Kconfig to SPL Kconfig Stefan Agner
@ 2016-11-14 20:44 ` Simon Glass
0 siblings, 0 replies; 11+ messages in thread
From: Simon Glass @ 2016-11-14 20:44 UTC (permalink / raw)
To: u-boot
On 12 November 2016 at 12:13, Stefan Agner <stefan@agner.ch> wrote:
> 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>
>
> ---
> Tom, I checked size for am335x_evm_usbspl_defconfig, it stays
> fine with this patch.
>
> 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(-)
Reviewed-by: Simon Glass <sjg@chromium.org>
^ permalink raw reply [flat|nested] 11+ messages in thread
* [U-Boot] [PATCH v2 3/3] spl: add USB Gadget config option
2016-11-12 19:13 [U-Boot] [PATCH v2 0/3] spl: USB Gadget cleanup Stefan Agner
2016-11-12 19:13 ` [U-Boot] [PATCH v2 1/3] spl: add RAM boot device only if it is actually defined Stefan Agner
2016-11-12 19:13 ` [U-Boot] [PATCH v2 2/3] spl: dfu: move DFU Kconfig to SPL Kconfig Stefan Agner
@ 2016-11-12 19:13 ` Stefan Agner
2016-11-15 8:52 ` [U-Boot] [PATCH v2 0/3] spl: USB Gadget cleanup B, Ravi
3 siblings, 0 replies; 11+ messages in thread
From: Stefan Agner @ 2016-11-12 19:13 UTC (permalink / raw)
To: u-boot
From: Stefan Agner <stefan.agner@toradex.com>
Introduce USB Gadget config option. This allows to combine Makefile
entries for SPL_USBETH_SUPPORT and SPL_DFU_SUPPORT.
Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
---
Changes in v2: None
common/spl/Kconfig | 31 +++++++++++++++++++------------
configs/am335x_evm_usbspl_defconfig | 1 +
drivers/Makefile | 5 ++---
drivers/usb/gadget/Makefile | 3 ++-
scripts/Makefile.spl | 2 +-
5 files changed, 25 insertions(+), 17 deletions(-)
diff --git a/common/spl/Kconfig b/common/spl/Kconfig
index 54bcba3..7d0aec0 100644
--- a/common/spl/Kconfig
+++ b/common/spl/Kconfig
@@ -465,17 +465,6 @@ config SPL_SPI_SUPPORT
enable SPI drivers that are needed for other purposes also, such
as a SPI PMIC.
-config SPL_USBETH_SUPPORT
- bool "Support USB Ethernet drivers"
- depends on SPL
- help
- Enable access to the USB network subsystem and associated
- drivers in SPL. This permits SPL to load U-Boot over a
- USB-connected Ethernet link (such as a USB Ethernet dongle) rather
- than from an onboard peripheral. Environment support is required
- since the network stack uses a number of environment variables.
- See also SPL_NET_SUPPORT and SPL_ETH_SUPPORT.
-
config SPL_USB_HOST_SUPPORT
bool "Support USB host drivers"
depends on SPL
@@ -497,9 +486,27 @@ config SPL_USB_SUPPORT
config options. This enables loading from USB using a configured
device.
+config SPL_USB_GADGET_SUPPORT
+ bool "Suppport USB Gadget drivers"
+ depends on SPL
+ help
+ Enable USB Gadget API which allows to enable USB device functions
+ in SPL.
+
+config SPL_USBETH_SUPPORT
+ bool "Support USB Ethernet drivers"
+ depends on SPL_GADGET_SUPPORT
+ help
+ Enable access to the USB network subsystem and associated
+ drivers in SPL. This permits SPL to load U-Boot over a
+ USB-connected Ethernet link (such as a USB Ethernet dongle) rather
+ than from an onboard peripheral. Environment support is required
+ since the network stack uses a number of environment variables.
+ See also SPL_NET_SUPPORT and SPL_ETH_SUPPORT.
+
config SPL_DFU_SUPPORT
bool "Support DFU (Device Firmware Upgarde)"
- depends on SPL
+ depends on SPL_GADGET_SUPPORT
select SPL_HASH_SUPPORT
help
This feature enables the DFU (Device Firmware Upgarde) in SPL with
diff --git a/configs/am335x_evm_usbspl_defconfig b/configs/am335x_evm_usbspl_defconfig
index 8c28e28..fdb6f77 100644
--- a/configs/am335x_evm_usbspl_defconfig
+++ b/configs/am335x_evm_usbspl_defconfig
@@ -12,6 +12,7 @@ CONFIG_SPL_MTD_SUPPORT=y
CONFIG_SPL_MUSB_NEW_SUPPORT=y
CONFIG_SPL_NET_SUPPORT=y
CONFIG_SPL_OS_BOOT=y
+CONFIG_SPL_GADGET_SUPPORT=y
CONFIG_SPL_USBETH_SUPPORT=y
CONFIG_HUSH_PARSER=y
CONFIG_CMD_BOOTZ=y
diff --git a/drivers/Makefile b/drivers/Makefile
index 40aba58..c19fa14 100644
--- a/drivers/Makefile
+++ b/drivers/Makefile
@@ -33,9 +33,8 @@ obj-$(CONFIG_SPL_ETH_SUPPORT) += net/
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_USB_GADGET_SUPPORT) += usb/gadget/
+obj-$(CONFIG_SPL_USB_GADGET_SUPPORT) += usb/gadget/udc/
obj-$(CONFIG_SPL_DFU_SUPPORT) += dfu/
obj-$(CONFIG_SPL_WATCHDOG_SUPPORT) += watchdog/
obj-$(CONFIG_SPL_USB_HOST_SUPPORT) += usb/host/
diff --git a/drivers/usb/gadget/Makefile b/drivers/usb/gadget/Makefile
index 5b18e8c..0fbbb7c 100644
--- a/drivers/usb/gadget/Makefile
+++ b/drivers/usb/gadget/Makefile
@@ -9,6 +9,7 @@ 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_USB_GADGET_SUPPORT) += g_dnl.o
obj-$(CONFIG_SPL_DFU_SUPPORT) += f_dfu.o
endif
@@ -21,8 +22,8 @@ obj-$(CONFIG_USB_GADGET_DWC2_OTG) += dwc2_udc_otg.o
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
ifndef CONFIG_SPL_BUILD
+obj-$(CONFIG_USB_GADGET_DOWNLOAD) += g_dnl.o
obj-$(CONFIG_USB_FUNCTION_THOR) += f_thor.o
obj-$(CONFIG_USB_FUNCTION_DFU) += f_dfu.o
obj-$(CONFIG_USB_FUNCTION_MASS_STORAGE) += f_mass_storage.o
diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl
index 1e3b60a..0ca8430 100644
--- a/scripts/Makefile.spl
+++ b/scripts/Makefile.spl
@@ -66,7 +66,7 @@ endif
libs-$(CONFIG_SPL_LIBDISK_SUPPORT) += disk/
libs-y += drivers/
-libs-$(CONFIG_SPL_DFU_SUPPORT) += drivers/usb/dwc3/
+libs-$(CONFIG_SPL_USB_GADGET_SUPPORT) += drivers/usb/dwc3/
libs-y += dts/
libs-y += fs/
libs-$(CONFIG_SPL_POST_MEM_SUPPORT) += post/drivers/
--
2.10.2
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [U-Boot] [PATCH v2 0/3] spl: USB Gadget cleanup
2016-11-12 19:13 [U-Boot] [PATCH v2 0/3] spl: USB Gadget cleanup Stefan Agner
` (2 preceding siblings ...)
2016-11-12 19:13 ` [U-Boot] [PATCH v2 3/3] spl: add USB Gadget config option Stefan Agner
@ 2016-11-15 8:52 ` B, Ravi
2016-11-15 20:40 ` Stefan Agner
3 siblings, 1 reply; 11+ messages in thread
From: B, Ravi @ 2016-11-15 8:52 UTC (permalink / raw)
To: u-boot
Stefan
> From: Stefan Agner <stefan.agner@toradex.com>
>This patchset cleans up the SPL USB Gadget Kconfig and Makfile.
>The first two patches are actual fixes and we might consider to add these two for the v2016.11 release. The third one adds a new config option for cleaner structure. I plan to add another USB function with SPL support which is the reason I looked into this...
>Build tested using buildman for all boards on powerpc mips and arm. No new errors or warnings:
>Building 4 commits for 1072 boards (8 threads, 1 job per thread)
>4044 0 244 /4288 P1022DS_NAND
>This patchset is probably most interesting for am335x_evm_usbspl_defconfig (CONFIG_SPL_USBETH_SUPPORT) And the board with which SPL DFU support has been introduced dra7xx_evm_defconfig (CONFIG_SPL_DFU_SUPPORT, not set by default)
>Due to lack of any of this hardware I did not run the binaries!
>Since it is mostly Makefile shuffling I don't expect any runtime behavior changes... If anyone (maybe Ravi or Lukasz, afaik you worked on the SPL DFU support for dra7xx_evm) could test the patchset on actual hardware I would be glad!
Sure, I will test SPL-DFU with this patches on dra7xx platform.
But I see SPL-DFU does not compile (dra7xx_evm_defconfig) in current mainline. Due to other patches came in, and also SPL-DFU disabled, I agree reason to reduce spl image size limit ("usb:gadget: Disallow DFU in SPL for now" commit:6ad6a10), need to compile out dfu gadget when SPL-DFU not selected.
First I will fix the spl-dfu compile issue and then will test this patch series.
Regards
Ravi
^ permalink raw reply [flat|nested] 11+ messages in thread* [U-Boot] [PATCH v2 0/3] spl: USB Gadget cleanup
2016-11-15 8:52 ` [U-Boot] [PATCH v2 0/3] spl: USB Gadget cleanup B, Ravi
@ 2016-11-15 20:40 ` Stefan Agner
2016-11-16 7:07 ` B, Ravi
0 siblings, 1 reply; 11+ messages in thread
From: Stefan Agner @ 2016-11-15 20:40 UTC (permalink / raw)
To: u-boot
On 2016-11-15 00:52, B, Ravi wrote:
> Stefan
>
>> From: Stefan Agner <stefan.agner@toradex.com>
>
>>This patchset cleans up the SPL USB Gadget Kconfig and Makfile.
>>The first two patches are actual fixes and we might consider to add these two for the v2016.11 release. The third one adds a new config option for cleaner structure. I plan to add another USB function with SPL support which is the reason I looked into this...
>
>>Build tested using buildman for all boards on powerpc mips and arm. No new errors or warnings:
>>Building 4 commits for 1072 boards (8 threads, 1 job per thread)
> >4044 0 244 /4288 P1022DS_NAND
>
>>This patchset is probably most interesting for am335x_evm_usbspl_defconfig (CONFIG_SPL_USBETH_SUPPORT) And the board with which SPL DFU support has been introduced dra7xx_evm_defconfig (CONFIG_SPL_DFU_SUPPORT, not set by default)
>
>>Due to lack of any of this hardware I did not run the binaries!
>>Since it is mostly Makefile shuffling I don't expect any runtime behavior changes... If anyone (maybe Ravi or Lukasz, afaik you worked on the SPL DFU support for dra7xx_evm) could test the patchset on actual hardware I would be glad!
>
> Sure, I will test SPL-DFU with this patches on dra7xx platform.
>
> But I see SPL-DFU does not compile (dra7xx_evm_defconfig) in current
> mainline. Due to other patches came in, and also SPL-DFU disabled, I
> agree reason to reduce spl image size limit ("usb:gadget: Disallow DFU
> in SPL for now" commit:6ad6a10), need to compile out dfu gadget when
> SPL-DFU not selected.
> First I will fix the spl-dfu compile issue and then will test this patch series.
This patchset fixes exactly that issue! No need to fix it twice :-)
I just tested it again, and actually realized that I made an error in
the third patch which does not allow to select SPL_DFU_SUPPORT.
Adding this:
config SPL_DFU_SUPPORT
bool "Support DFU (Device Firmware Upgarde)"
- depends on SPL_GADGET_SUPPORT
+ depends on SPL_USB_GADGET_SUPPORT
select SPL_HASH_SUPPORT
help
This feature enables the DFU (Device Firmware Upgarde) in SPL
with
Allows to select SPL / TPL ---> Suppport USB Gadget drivers, and
Support DFU (Device Firmware Upgarde). This compiles fine now.
Will send a v3 which integrates that fix.
--
Stefan
^ permalink raw reply [flat|nested] 11+ messages in thread* [U-Boot] [PATCH v2 0/3] spl: USB Gadget cleanup
2016-11-15 20:40 ` Stefan Agner
@ 2016-11-16 7:07 ` B, Ravi
0 siblings, 0 replies; 11+ messages in thread
From: B, Ravi @ 2016-11-16 7:07 UTC (permalink / raw)
To: u-boot
Hi Stephen
>>Adding this:
> >config SPL_DFU_SUPPORT
> > bool "Support DFU (Device Firmware Upgarde)"
>- depends on SPL_GADGET_SUPPORT
>+ depends on SPL_USB_GADGET_SUPPORT
> select SPL_HASH_SUPPORT
> help
> This feature enables the DFU (Device Firmware Upgarde) in SPL with
>Allows to select SPL / TPL ---> Suppport USB Gadget drivers, and Support DFU (Device Firmware Upgarde). This compiles fine now.
>Will send a v3 which integrates that fix.
Now compiles for dra7x platform. Thanks for v3 patches.
Regards
Ravi
^ permalink raw reply [flat|nested] 11+ messages in thread