spl: add USB Gadget config option
authorStefan Agner <stefan.agner@toradex.com>
Mon, 21 Nov 2016 18:58:53 +0000 (10:58 -0800)
committerTom Rini <trini@konsulko.com>
Tue, 29 Nov 2016 00:49:49 +0000 (19:49 -0500)
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>
Acked-by: Lukasz Majewski <l.majewski@samsung.com>
Tested-by: Ravi Babu <ravibabu@ti.com>
common/spl/Kconfig
configs/am335x_evm_usbspl_defconfig
drivers/Makefile
drivers/usb/gadget/Makefile
scripts/Makefile.spl

index 77eadf9..cba51f5 100644 (file)
@@ -492,17 +492,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
@@ -524,9 +513,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.
+
+if SPL_USB_GADGET_SUPPORT
+
+config SPL_USBETH_SUPPORT
+       bool "Support USB Ethernet drivers"
+       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
        select SPL_HASH_SUPPORT
        help
          This feature enables the DFU (Device Firmware Upgarde) in SPL with
@@ -550,6 +557,8 @@ config SPL_DFU_RAM
 
 endchoice
 
+endif
+
 config SPL_WATCHDOG_SUPPORT
        bool "Support watchdog drivers"
        depends on SPL
index 8c28e28..fdb6f77 100644 (file)
@@ -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
index 40aba58..c19fa14 100644 (file)
@@ -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/
index 5b18e8c..0fbbb7c 100644 (file)
@@ -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
index 23b3997..f379713 100644 (file)
@@ -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/