[v2,10/14] cmd: fastboot: Rework fastboot dependency

Message ID e59969582d5644b8f6f927725267bd1d5934acfc.1505242834.git-series.maxime.ripard@free-electrons.com
State Accepted
Commit cfa34996b0beb90e9b63a5b6f89c78123a2d428e
Headers show
Series
  • sunxi: convert musb to the device model and enable usb_ether
Related show

Commit Message

Maxime Ripard Sept. 12, 2017, 7:01 p.m.
Fastboot need a bunch of options to be operating properly, such as the
g_dnl gadget, the fastboot command, and some options that make sense. Since
fastboot is now part of Kconfig, make sure we have them right.

That will also reduce the boilerplate in the defconfigs.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
---
 arch/arm/Kconfig                               | 2 --
 cmd/fastboot/Kconfig                           | 4 ++++
 configs/A13-OLinuXino_defconfig                | 1 -
 configs/A20-OLinuXino-Lime2-eMMC_defconfig     | 1 -
 configs/A20-OLinuXino-Lime2_defconfig          | 1 -
 configs/CHIP_defconfig                         | 1 -
 configs/CHIP_pro_defconfig                     | 1 -
 configs/Cubietruck_defconfig                   | 1 -
 configs/Nintendo_NES_Classic_Edition_defconfig | 1 -
 configs/Sinlinx_SinA33_defconfig               | 1 -
 configs/am335x_boneblack_defconfig             | 2 --
 configs/am335x_boneblack_vboot_defconfig       | 2 --
 configs/am335x_evm_defconfig                   | 2 --
 configs/am335x_evm_nor_defconfig               | 2 --
 configs/am335x_evm_norboot_defconfig           | 2 --
 configs/am335x_evm_spiboot_defconfig           | 2 --
 configs/am335x_evm_usbspl_defconfig            | 2 --
 configs/am57xx_evm_defconfig                   | 2 --
 configs/am57xx_evm_nodt_defconfig              | 3 ---
 configs/am57xx_hs_evm_defconfig                | 2 --
 configs/bcm23550_w1d_defconfig                 | 3 ---
 configs/bcm28155_ap_defconfig                  | 3 ---
 configs/birdland_bav335a_defconfig             | 3 ---
 configs/birdland_bav335b_defconfig             | 3 ---
 configs/cgtqmx6eval_defconfig                  | 3 ---
 configs/chromebit_mickey_defconfig             | 1 -
 configs/chromebook_jerry_defconfig             | 1 -
 configs/chromebook_minnie_defconfig            | 1 -
 configs/dra7xx_evm_defconfig                   | 2 --
 configs/dra7xx_hs_evm_defconfig                | 2 --
 configs/evb-rk3036_defconfig                   | 1 -
 configs/evb-rk3229_defconfig                   | 1 -
 configs/evb-rk3288_defconfig                   | 1 -
 configs/fennec-rk3288_defconfig                | 1 -
 configs/firefly-rk3288_defconfig               | 1 -
 configs/kc1_defconfig                          | 3 ---
 configs/kylin-rk3036_defconfig                 | 1 -
 configs/miqi-rk3288_defconfig                  | 1 -
 configs/mx6qsabrelite_defconfig                | 3 ---
 configs/nitrogen6dl2g_defconfig                | 3 ---
 configs/nitrogen6dl_defconfig                  | 3 ---
 configs/nitrogen6q2g_defconfig                 | 3 ---
 configs/nitrogen6q_defconfig                   | 3 ---
 configs/nitrogen6s1g_defconfig                 | 3 ---
 configs/nitrogen6s_defconfig                   | 3 ---
 configs/omap3_beagle_defconfig                 | 3 ---
 configs/omap3_logic_defconfig                  | 2 --
 configs/parrot_r16_defconfig                   | 1 -
 configs/phycore-rk3288_defconfig               | 1 -
 configs/popmetal-rk3288_defconfig              | 1 -
 configs/rock2_defconfig                        | 1 -
 configs/sniper_defconfig                       | 3 ---
 configs/tinker-rk3288_defconfig                | 1 -
 53 files changed, 4 insertions(+), 97 deletions(-)

Comments

Lukasz Majewski Sept. 13, 2017, 10:43 a.m. | #1
On 09/12/2017 09:01 PM, Maxime Ripard wrote:
> Fastboot need a bunch of options to be operating properly, such as the
> g_dnl gadget, the fastboot command, and some options that make sense. Since
> fastboot is now part of Kconfig, make sure we have them right.
> 
> That will also reduce the boilerplate in the defconfigs.
> 
> Reviewed-by: Simon Glass <sjg@chromium.org>
> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
> ---
>   arch/arm/Kconfig                               | 2 --
>   cmd/fastboot/Kconfig                           | 4 ++++
>   configs/A13-OLinuXino_defconfig                | 1 -
>   configs/A20-OLinuXino-Lime2-eMMC_defconfig     | 1 -
>   configs/A20-OLinuXino-Lime2_defconfig          | 1 -
>   configs/CHIP_defconfig                         | 1 -
>   configs/CHIP_pro_defconfig                     | 1 -
>   configs/Cubietruck_defconfig                   | 1 -
>   configs/Nintendo_NES_Classic_Edition_defconfig | 1 -
>   configs/Sinlinx_SinA33_defconfig               | 1 -
>   configs/am335x_boneblack_defconfig             | 2 --
>   configs/am335x_boneblack_vboot_defconfig       | 2 --
>   configs/am335x_evm_defconfig                   | 2 --
>   configs/am335x_evm_nor_defconfig               | 2 --
>   configs/am335x_evm_norboot_defconfig           | 2 --
>   configs/am335x_evm_spiboot_defconfig           | 2 --
>   configs/am335x_evm_usbspl_defconfig            | 2 --
>   configs/am57xx_evm_defconfig                   | 2 --
>   configs/am57xx_evm_nodt_defconfig              | 3 ---
>   configs/am57xx_hs_evm_defconfig                | 2 --
>   configs/bcm23550_w1d_defconfig                 | 3 ---
>   configs/bcm28155_ap_defconfig                  | 3 ---
>   configs/birdland_bav335a_defconfig             | 3 ---
>   configs/birdland_bav335b_defconfig             | 3 ---
>   configs/cgtqmx6eval_defconfig                  | 3 ---
>   configs/chromebit_mickey_defconfig             | 1 -
>   configs/chromebook_jerry_defconfig             | 1 -
>   configs/chromebook_minnie_defconfig            | 1 -
>   configs/dra7xx_evm_defconfig                   | 2 --
>   configs/dra7xx_hs_evm_defconfig                | 2 --
>   configs/evb-rk3036_defconfig                   | 1 -
>   configs/evb-rk3229_defconfig                   | 1 -
>   configs/evb-rk3288_defconfig                   | 1 -
>   configs/fennec-rk3288_defconfig                | 1 -
>   configs/firefly-rk3288_defconfig               | 1 -
>   configs/kc1_defconfig                          | 3 ---
>   configs/kylin-rk3036_defconfig                 | 1 -
>   configs/miqi-rk3288_defconfig                  | 1 -
>   configs/mx6qsabrelite_defconfig                | 3 ---
>   configs/nitrogen6dl2g_defconfig                | 3 ---
>   configs/nitrogen6dl_defconfig                  | 3 ---
>   configs/nitrogen6q2g_defconfig                 | 3 ---
>   configs/nitrogen6q_defconfig                   | 3 ---
>   configs/nitrogen6s1g_defconfig                 | 3 ---
>   configs/nitrogen6s_defconfig                   | 3 ---
>   configs/omap3_beagle_defconfig                 | 3 ---
>   configs/omap3_logic_defconfig                  | 2 --
>   configs/parrot_r16_defconfig                   | 1 -
>   configs/phycore-rk3288_defconfig               | 1 -
>   configs/popmetal-rk3288_defconfig              | 1 -
>   configs/rock2_defconfig                        | 1 -
>   configs/sniper_defconfig                       | 3 ---
>   configs/tinker-rk3288_defconfig                | 1 -
>   53 files changed, 4 insertions(+), 97 deletions(-)
> 
> diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> index 1eb59c591a54..519f42778a8d 100644
> --- a/arch/arm/Kconfig
> +++ b/arch/arm/Kconfig
> @@ -693,7 +693,6 @@ config ARCH_SUNXI
>   	select USB_STORAGE if DISTRO_DEFAULTS
>   	select USB_KEYBOARD if DISTRO_DEFAULTS
>   	select USE_TINY_PRINTF
> -	imply CMD_FASTBOOT
>   	imply FASTBOOT
>   	imply FAT_WRITE
>   	imply PRE_CONSOLE_BUFFER
> @@ -704,7 +703,6 @@ config ARCH_SUNXI
>   	imply SPL_MMC_SUPPORT if MMC
>   	imply SPL_POWER_SUPPORT
>   	imply SPL_SERIAL_SUPPORT
> -	imply USB_FUNCTION_FASTBOOT
>   	imply USB_GADGET
>   
>   config TARGET_TS4600
> diff --git a/cmd/fastboot/Kconfig b/cmd/fastboot/Kconfig
> index fb0c5da94cdb..5c1186017206 100644
> --- a/cmd/fastboot/Kconfig
> +++ b/cmd/fastboot/Kconfig
> @@ -8,6 +8,10 @@ if FASTBOOT
>   
>   config USB_FUNCTION_FASTBOOT
>   	bool "Enable USB fastboot gadget"
> +	default y
> +	select USB_GADGET_DOWNLOAD
> +	imply ANDROID_BOOT_IMAGE
> +	imply CMD_FASTBOOT
>   	help
>   	  This enables the USB part of the fastboot gadget.
>   
> diff --git a/configs/A13-OLinuXino_defconfig b/configs/A13-OLinuXino_defconfig
> index e55dbff44d36..ed8349000e22 100644
> --- a/configs/A13-OLinuXino_defconfig
> +++ b/configs/A13-OLinuXino_defconfig
> @@ -31,4 +31,3 @@ CONFIG_AXP_ALDO3_VOLT=3300
>   CONFIG_USB_EHCI_HCD=y
>   CONFIG_USB_MUSB_GADGET=y
>   CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
> diff --git a/configs/A20-OLinuXino-Lime2-eMMC_defconfig b/configs/A20-OLinuXino-Lime2-eMMC_defconfig
> index 9491708d80c6..a04037ebe7cc 100644
> --- a/configs/A20-OLinuXino-Lime2-eMMC_defconfig
> +++ b/configs/A20-OLinuXino-Lime2-eMMC_defconfig
> @@ -33,4 +33,3 @@ CONFIG_SCSI=y
>   CONFIG_USB_EHCI_HCD=y
>   CONFIG_USB_MUSB_GADGET=y
>   CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
> diff --git a/configs/A20-OLinuXino-Lime2_defconfig b/configs/A20-OLinuXino-Lime2_defconfig
> index 2bb8ee8c9ebd..f9388a005bcd 100644
> --- a/configs/A20-OLinuXino-Lime2_defconfig
> +++ b/configs/A20-OLinuXino-Lime2_defconfig
> @@ -32,4 +32,3 @@ CONFIG_SCSI=y
>   CONFIG_USB_EHCI_HCD=y
>   CONFIG_USB_MUSB_GADGET=y
>   CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
> diff --git a/configs/CHIP_defconfig b/configs/CHIP_defconfig
> index b9f70d240c3c..5acce42a60f9 100644
> --- a/configs/CHIP_defconfig
> +++ b/configs/CHIP_defconfig
> @@ -22,5 +22,4 @@ CONFIG_AXP_ALDO4_VOLT=3300
>   CONFIG_USB_EHCI_HCD=y
>   CONFIG_USB_MUSB_GADGET=y
>   CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_OF_LIBFDT_OVERLAY=y
> diff --git a/configs/CHIP_pro_defconfig b/configs/CHIP_pro_defconfig
> index 74f6eb10fc01..2303135449b2 100644
> --- a/configs/CHIP_pro_defconfig
> +++ b/configs/CHIP_pro_defconfig
> @@ -27,5 +27,4 @@ CONFIG_AXP_ALDO4_VOLT=3300
>   CONFIG_USB_EHCI_HCD=y
>   CONFIG_USB_MUSB_GADGET=y
>   CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_OF_LIBFDT_OVERLAY=y
> diff --git a/configs/Cubietruck_defconfig b/configs/Cubietruck_defconfig
> index 458e2a9d8b04..3dff02f342d7 100644
> --- a/configs/Cubietruck_defconfig
> +++ b/configs/Cubietruck_defconfig
> @@ -32,4 +32,3 @@ CONFIG_SCSI=y
>   CONFIG_USB_EHCI_HCD=y
>   CONFIG_USB_MUSB_GADGET=y
>   CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
> diff --git a/configs/Nintendo_NES_Classic_Edition_defconfig b/configs/Nintendo_NES_Classic_Edition_defconfig
> index e031dd8f5d5f..26fcffa02f10 100644
> --- a/configs/Nintendo_NES_Classic_Edition_defconfig
> +++ b/configs/Nintendo_NES_Classic_Edition_defconfig
> @@ -22,4 +22,3 @@ CONFIG_AXP_DLDO1_VOLT=3300
>   CONFIG_AXP_ELDO2_VOLT=1800
>   CONFIG_USB_MUSB_GADGET=y
>   CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
> diff --git a/configs/Sinlinx_SinA33_defconfig b/configs/Sinlinx_SinA33_defconfig
> index 143a9b4b6c10..d726b404cc5e 100644
> --- a/configs/Sinlinx_SinA33_defconfig
> +++ b/configs/Sinlinx_SinA33_defconfig
> @@ -27,4 +27,3 @@ CONFIG_DFU_RAM=y
>   CONFIG_USB_EHCI_HCD=y
>   CONFIG_USB_MUSB_GADGET=y
>   CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
> diff --git a/configs/am335x_boneblack_defconfig b/configs/am335x_boneblack_defconfig
> index 85f220329e4e..e17329bc4fda 100644
> --- a/configs/am335x_boneblack_defconfig
> +++ b/configs/am335x_boneblack_defconfig
> @@ -18,7 +18,6 @@ CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
>   CONFIG_AUTOBOOT_DELAY_STR="d"
>   CONFIG_AUTOBOOT_STOP_STR=" "
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
>   # CONFIG_CMD_IMLS is not set
>   CONFIG_CMD_SPL=y
>   # CONFIG_CMD_FLASH is not set
> @@ -41,7 +40,6 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_USBNET_HOST_ADDR="de:ad:be:af:00:00"
>   CONFIG_LZO=y
> diff --git a/configs/am335x_boneblack_vboot_defconfig b/configs/am335x_boneblack_vboot_defconfig
> index 9ba3f7c04d73..4669a68d1471 100644
> --- a/configs/am335x_boneblack_vboot_defconfig
> +++ b/configs/am335x_boneblack_vboot_defconfig
> @@ -21,7 +21,6 @@ CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
>   CONFIG_AUTOBOOT_DELAY_STR="d"
>   CONFIG_AUTOBOOT_STOP_STR=" "
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
>   # CONFIG_CMD_IMLS is not set
>   CONFIG_CMD_SPL=y
>   # CONFIG_CMD_FLASH is not set
> @@ -51,6 +50,5 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_LZO=y
> diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig
> index 8aa3c0de8824..e5363e78f07f 100644
> --- a/configs/am335x_evm_defconfig
> +++ b/configs/am335x_evm_defconfig
> @@ -15,7 +15,6 @@ CONFIG_SPL_MTD_SUPPORT=y
>   CONFIG_SPL_MUSB_NEW_SUPPORT=y
>   CONFIG_SPL_OS_BOOT=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
>   # CONFIG_CMD_IMLS is not set
>   CONFIG_CMD_SPL=y
>   CONFIG_CMD_SPL_NAND_OFS=0x00080000
> @@ -53,7 +52,6 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_RSA=y
>   CONFIG_LZO=y
> diff --git a/configs/am335x_evm_nor_defconfig b/configs/am335x_evm_nor_defconfig
> index b745f2997334..9d226bc8919f 100644
> --- a/configs/am335x_evm_nor_defconfig
> +++ b/configs/am335x_evm_nor_defconfig
> @@ -14,7 +14,6 @@ CONFIG_SPL_MTD_SUPPORT=y
>   CONFIG_SPL_MUSB_NEW_SUPPORT=y
>   CONFIG_SPL_OS_BOOT=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
>   # CONFIG_CMD_IMLS is not set
>   CONFIG_CMD_SPL=y
>   CONFIG_CMD_SPL_NAND_OFS=0x00080000
> @@ -40,7 +39,6 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_LZO=y
>   CONFIG_OF_LIBFDT=y
> diff --git a/configs/am335x_evm_norboot_defconfig b/configs/am335x_evm_norboot_defconfig
> index 9662b6684c1f..e786565c2a17 100644
> --- a/configs/am335x_evm_norboot_defconfig
> +++ b/configs/am335x_evm_norboot_defconfig
> @@ -12,7 +12,6 @@ CONFIG_VERSION_VARIABLE=y
>   CONFIG_ARCH_MISC_INIT=y
>   CONFIG_BOARD_EARLY_INIT_F=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
>   # CONFIG_CMD_IMLS is not set
>   # CONFIG_CMD_SETEXPR is not set
>   CONFIG_CMD_MTDPARTS=y
> @@ -34,7 +33,6 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_USBNET_HOST_ADDR="de:ad:be:af:00:00"
>   CONFIG_LZO=y
> diff --git a/configs/am335x_evm_spiboot_defconfig b/configs/am335x_evm_spiboot_defconfig
> index 5e2c19066daa..0ab48d9647c0 100644
> --- a/configs/am335x_evm_spiboot_defconfig
> +++ b/configs/am335x_evm_spiboot_defconfig
> @@ -16,7 +16,6 @@ CONFIG_SPL=y
>   CONFIG_SPL_STACK_R=y
>   CONFIG_SPL_MUSB_NEW_SUPPORT=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
>   # CONFIG_CMD_IMLS is not set
>   # CONFIG_CMD_FLASH is not set
>   # CONFIG_CMD_SETEXPR is not set
> @@ -38,7 +37,6 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_LZO=y
>   CONFIG_OF_LIBFDT=y
> diff --git a/configs/am335x_evm_usbspl_defconfig b/configs/am335x_evm_usbspl_defconfig
> index d6c21b8e85ee..0674ab0570e8 100644
> --- a/configs/am335x_evm_usbspl_defconfig
> +++ b/configs/am335x_evm_usbspl_defconfig
> @@ -18,7 +18,6 @@ CONFIG_SPL_USB_GADGET_SUPPORT=y
>   CONFIG_SPL_USBETH_SUPPORT=y
>   # CONFIG_SPL_YMODEM_SUPPORT is not set
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
>   # CONFIG_CMD_IMLS is not set
>   CONFIG_CMD_SPL=y
>   CONFIG_CMD_SPL_NAND_OFS=0x00080000
> @@ -44,7 +43,6 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_LZO=y
>   CONFIG_OF_LIBFDT=y
> diff --git a/configs/am57xx_evm_defconfig b/configs/am57xx_evm_defconfig
> index a9ee2e448f3c..07afb9139a77 100644
> --- a/configs/am57xx_evm_defconfig
> +++ b/configs/am57xx_evm_defconfig
> @@ -25,7 +25,6 @@ CONFIG_SPL_DMA_SUPPORT=y
>   CONFIG_SPL_OS_BOOT=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x82000000
>   CONFIG_FASTBOOT_BUF_SIZE=0x2F000000
>   CONFIG_FASTBOOT_USB_DEV=1
> @@ -75,4 +74,3 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
> diff --git a/configs/am57xx_evm_nodt_defconfig b/configs/am57xx_evm_nodt_defconfig
> index ae7c3464e0cb..88b8bc104d08 100644
> --- a/configs/am57xx_evm_nodt_defconfig
> +++ b/configs/am57xx_evm_nodt_defconfig
> @@ -15,8 +15,6 @@ CONFIG_SPL_DMA_SUPPORT=y
>   CONFIG_SPL_OS_BOOT=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x82000000
>   CONFIG_FASTBOOT_BUF_SIZE=0x2F000000
>   CONFIG_FASTBOOT_USB_DEV=1
> @@ -65,6 +63,5 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_FAT_WRITE=y
>   CONFIG_OF_LIBFDT=y
> diff --git a/configs/am57xx_hs_evm_defconfig b/configs/am57xx_hs_evm_defconfig
> index 1047f33237ef..dd5e86212576 100644
> --- a/configs/am57xx_hs_evm_defconfig
> +++ b/configs/am57xx_hs_evm_defconfig
> @@ -30,7 +30,6 @@ CONFIG_SPL_SEPARATE_BSS=y
>   CONFIG_SPL_DMA_SUPPORT=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x82000000
>   CONFIG_FASTBOOT_BUF_SIZE=0x2F000000
>   CONFIG_FASTBOOT_USB_DEV=1
> @@ -78,4 +77,3 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
> diff --git a/configs/bcm23550_w1d_defconfig b/configs/bcm23550_w1d_defconfig
> index 49f7e40d15d9..f7af02f61323 100644
> --- a/configs/bcm23550_w1d_defconfig
> +++ b/configs/bcm23550_w1d_defconfig
> @@ -7,8 +7,6 @@ CONFIG_VERSION_VARIABLE=y
>   # CONFIG_DISPLAY_BOARDINFO is not set
>   CONFIG_HUSH_PARSER=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x80000000
>   CONFIG_FASTBOOT_BUF_SIZE=0x1D000000
>   CONFIG_FASTBOOT_FLASH=y
> @@ -40,5 +38,4 @@ CONFIG_USB_GADGET_PRODUCT_NUM=0x0d02
>   CONFIG_USB_GADGET_BCM_UDC_OTG_PHY=y
>   CONFIG_USB_GADGET_DWC2_OTG=y
>   CONFIG_USB_GADGET_DWC2_OTG_PHY_BUS_WIDTH_8=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_OF_LIBFDT=y
> diff --git a/configs/bcm28155_ap_defconfig b/configs/bcm28155_ap_defconfig
> index 9e17b60e54e4..2d24200096e3 100644
> --- a/configs/bcm28155_ap_defconfig
> +++ b/configs/bcm28155_ap_defconfig
> @@ -8,8 +8,6 @@ CONFIG_VERSION_VARIABLE=y
>   CONFIG_HUSH_PARSER=y
>   # CONFIG_AUTOBOOT is not set
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x80000000
>   CONFIG_FASTBOOT_BUF_SIZE=0x7FF00000
>   CONFIG_FASTBOOT_FLASH=y
> @@ -41,5 +39,4 @@ CONFIG_USB_GADGET_PRODUCT_NUM=0x0d02
>   CONFIG_USB_GADGET_BCM_UDC_OTG_PHY=y
>   CONFIG_USB_GADGET_DWC2_OTG=y
>   CONFIG_USB_GADGET_DWC2_OTG_PHY_BUS_WIDTH_8=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_OF_LIBFDT=y
> diff --git a/configs/birdland_bav335a_defconfig b/configs/birdland_bav335a_defconfig
> index 41b77302155f..828bbd16e6ed 100644
> --- a/configs/birdland_bav335a_defconfig
> +++ b/configs/birdland_bav335a_defconfig
> @@ -24,8 +24,6 @@ CONFIG_SPL_POWER_SUPPORT=y
>   CONFIG_SPL_YMODEM_SUPPORT=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x82000000
>   CONFIG_CMD_BOOTZ=y
>   # CONFIG_CMD_IMLS is not set
> @@ -69,7 +67,6 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_FAT_WRITE=y
>   CONFIG_LZO=y
>   CONFIG_OF_LIBFDT=y
> diff --git a/configs/birdland_bav335b_defconfig b/configs/birdland_bav335b_defconfig
> index 6ecf8d035478..d851575ac619 100644
> --- a/configs/birdland_bav335b_defconfig
> +++ b/configs/birdland_bav335b_defconfig
> @@ -24,8 +24,6 @@ CONFIG_SPL_POWER_SUPPORT=y
>   CONFIG_SPL_YMODEM_SUPPORT=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x82000000
>   CONFIG_CMD_BOOTZ=y
>   # CONFIG_CMD_IMLS is not set
> @@ -69,7 +67,6 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_FAT_WRITE=y
>   CONFIG_LZO=y
>   CONFIG_OF_LIBFDT=y
> diff --git a/configs/cgtqmx6eval_defconfig b/configs/cgtqmx6eval_defconfig
> index b17c30fcd2f6..201a33138cf2 100644
> --- a/configs/cgtqmx6eval_defconfig
> +++ b/configs/cgtqmx6eval_defconfig
> @@ -24,8 +24,6 @@ CONFIG_SPL_I2C_SUPPORT=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_SYS_PROMPT="CGT-QMX6-Quad U-Boot > "
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x12000000
>   CONFIG_CMD_BOOTZ=y
>   # CONFIG_CMD_IMLS is not set
> @@ -61,7 +59,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Congatec"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0525
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
>   CONFIG_CI_UDC=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_HOST_ETHER=y
>   CONFIG_USB_ETHER_ASIX=y
>   # CONFIG_VIDEO_SW_CURSOR is not set
> diff --git a/configs/chromebit_mickey_defconfig b/configs/chromebit_mickey_defconfig
> index fccff80780bc..e061b2615255 100644
> --- a/configs/chromebit_mickey_defconfig
> +++ b/configs/chromebit_mickey_defconfig
> @@ -79,7 +79,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x2207
>   CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
>   CONFIG_USB_GADGET_DWC2_OTG=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_DM_VIDEO=y
>   CONFIG_DISPLAY=y
>   CONFIG_VIDEO_ROCKCHIP=y
> diff --git a/configs/chromebook_jerry_defconfig b/configs/chromebook_jerry_defconfig
> index 18790b30898f..2f6b4e5e3d30 100644
> --- a/configs/chromebook_jerry_defconfig
> +++ b/configs/chromebook_jerry_defconfig
> @@ -80,7 +80,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x2207
>   CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
>   CONFIG_USB_GADGET_DWC2_OTG=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_DM_VIDEO=y
>   CONFIG_DISPLAY=y
>   CONFIG_VIDEO_ROCKCHIP=y
> diff --git a/configs/chromebook_minnie_defconfig b/configs/chromebook_minnie_defconfig
> index fdb992d59252..3b76cb47fb4d 100644
> --- a/configs/chromebook_minnie_defconfig
> +++ b/configs/chromebook_minnie_defconfig
> @@ -79,7 +79,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x2207
>   CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
>   CONFIG_USB_GADGET_DWC2_OTG=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_DM_VIDEO=y
>   CONFIG_DISPLAY=y
>   CONFIG_VIDEO_ROCKCHIP=y
> diff --git a/configs/dra7xx_evm_defconfig b/configs/dra7xx_evm_defconfig
> index 4aca3a4a043a..748948ec8156 100644
> --- a/configs/dra7xx_evm_defconfig
> +++ b/configs/dra7xx_evm_defconfig
> @@ -25,7 +25,6 @@ CONFIG_SPL_DMA_SUPPORT=y
>   CONFIG_SPL_OS_BOOT=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x82000000
>   CONFIG_FASTBOOT_BUF_SIZE=0x2F000000
>   CONFIG_FASTBOOT_FLASH=y
> @@ -93,4 +92,3 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
> diff --git a/configs/dra7xx_hs_evm_defconfig b/configs/dra7xx_hs_evm_defconfig
> index 4d126e09f6a6..d31653e9d1c5 100644
> --- a/configs/dra7xx_hs_evm_defconfig
> +++ b/configs/dra7xx_hs_evm_defconfig
> @@ -30,7 +30,6 @@ CONFIG_SPL_SEPARATE_BSS=y
>   CONFIG_SPL_DMA_SUPPORT=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x82000000
>   CONFIG_FASTBOOT_BUF_SIZE=0x2F000000
>   CONFIG_FASTBOOT_FLASH=y
> @@ -95,4 +94,3 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
> diff --git a/configs/evb-rk3036_defconfig b/configs/evb-rk3036_defconfig
> index 9cce3351f80b..f2c4d8c54303 100644
> --- a/configs/evb-rk3036_defconfig
> +++ b/configs/evb-rk3036_defconfig
> @@ -48,7 +48,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x2207
>   CONFIG_USB_GADGET_PRODUCT_NUM=0x310a
>   CONFIG_USB_GADGET_DWC2_OTG=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_SPL_TINY_MEMSET=y
>   CONFIG_CMD_DHRYSTONE=y
>   CONFIG_ERRNO_STR=y
> diff --git a/configs/evb-rk3229_defconfig b/configs/evb-rk3229_defconfig
> index 61fdacaa1340..2bc9f4a9765b 100644
> --- a/configs/evb-rk3229_defconfig
> +++ b/configs/evb-rk3229_defconfig
> @@ -48,5 +48,4 @@ CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x2207
>   CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
>   CONFIG_USB_GADGET_DWC2_OTG=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_ERRNO_STR=y
> diff --git a/configs/evb-rk3288_defconfig b/configs/evb-rk3288_defconfig
> index 0d91cdd53ff6..d8dadd7ea97e 100644
> --- a/configs/evb-rk3288_defconfig
> +++ b/configs/evb-rk3288_defconfig
> @@ -70,7 +70,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x2207
>   CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
>   CONFIG_USB_GADGET_DWC2_OTG=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_DM_VIDEO=y
>   CONFIG_DISPLAY=y
>   CONFIG_VIDEO_ROCKCHIP=y
> diff --git a/configs/fennec-rk3288_defconfig b/configs/fennec-rk3288_defconfig
> index 51420e5b66db..adc3f7aa70a8 100644
> --- a/configs/fennec-rk3288_defconfig
> +++ b/configs/fennec-rk3288_defconfig
> @@ -73,7 +73,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x2207
>   CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
>   CONFIG_USB_GADGET_DWC2_OTG=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_HOST_ETHER=y
>   CONFIG_USB_ETHER_ASIX=y
>   CONFIG_USB_ETHER_SMSC95XX=y
> diff --git a/configs/firefly-rk3288_defconfig b/configs/firefly-rk3288_defconfig
> index eb42def73fc2..3e95f0fca2b3 100644
> --- a/configs/firefly-rk3288_defconfig
> +++ b/configs/firefly-rk3288_defconfig
> @@ -79,7 +79,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x2207
>   CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
>   CONFIG_USB_GADGET_DWC2_OTG=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_HOST_ETHER=y
>   CONFIG_USB_ETHER_ASIX=y
>   CONFIG_USB_ETHER_SMSC95XX=y
> diff --git a/configs/kc1_defconfig b/configs/kc1_defconfig
> index d27a7f5abbe0..87b3eec4623c 100644
> --- a/configs/kc1_defconfig
> +++ b/configs/kc1_defconfig
> @@ -12,8 +12,6 @@ CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=2
>   CONFIG_HUSH_PARSER=y
>   CONFIG_SYS_PROMPT="kc1 # "
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x82000000
>   CONFIG_FASTBOOT_BUF_SIZE=0x2000000
>   CONFIG_FASTBOOT_FLASH=y
> @@ -45,5 +43,4 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_OF_LIBFDT=y
> diff --git a/configs/kylin-rk3036_defconfig b/configs/kylin-rk3036_defconfig
> index 0904eb14d4fc..5adf5779c728 100644
> --- a/configs/kylin-rk3036_defconfig
> +++ b/configs/kylin-rk3036_defconfig
> @@ -48,7 +48,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x2207
>   CONFIG_USB_GADGET_PRODUCT_NUM=0x310a
>   CONFIG_USB_GADGET_DWC2_OTG=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_HOST_ETHER=y
>   CONFIG_USB_ETHER_ASIX=y
>   CONFIG_USB_ETHER_SMSC95XX=y
> diff --git a/configs/miqi-rk3288_defconfig b/configs/miqi-rk3288_defconfig
> index e607ecd7dd71..e5d1b759256a 100644
> --- a/configs/miqi-rk3288_defconfig
> +++ b/configs/miqi-rk3288_defconfig
> @@ -73,7 +73,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x2207
>   CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
>   CONFIG_USB_GADGET_DWC2_OTG=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_HOST_ETHER=y
>   CONFIG_USB_ETHER_ASIX=y
>   CONFIG_USB_ETHER_SMSC95XX=y
> diff --git a/configs/mx6qsabrelite_defconfig b/configs/mx6qsabrelite_defconfig
> index 92e0a578dfde..3dfe25ebb5c0 100644
> --- a/configs/mx6qsabrelite_defconfig
> +++ b/configs/mx6qsabrelite_defconfig
> @@ -10,8 +10,6 @@ CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
>   CONFIG_BOARD_EARLY_INIT_F=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x12000000
>   CONFIG_CMD_BOOTZ=y
>   # CONFIG_CMD_IMLS is not set
> @@ -53,7 +51,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Boundary"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0525
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
>   CONFIG_CI_UDC=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_USB_ETH_CDC=y
>   # CONFIG_VIDEO_SW_CURSOR is not set
> diff --git a/configs/nitrogen6dl2g_defconfig b/configs/nitrogen6dl2g_defconfig
> index a5fdb48d2452..32c6eea54618 100644
> --- a/configs/nitrogen6dl2g_defconfig
> +++ b/configs/nitrogen6dl2g_defconfig
> @@ -10,8 +10,6 @@ CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
>   CONFIG_BOARD_EARLY_INIT_F=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x12000000
>   CONFIG_CMD_BOOTZ=y
>   # CONFIG_CMD_IMLS is not set
> @@ -50,7 +48,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Boundary"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0525
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
>   CONFIG_CI_UDC=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_USB_ETH_CDC=y
>   # CONFIG_VIDEO_SW_CURSOR is not set
> diff --git a/configs/nitrogen6dl_defconfig b/configs/nitrogen6dl_defconfig
> index 1803bdba888e..8ce2515d3794 100644
> --- a/configs/nitrogen6dl_defconfig
> +++ b/configs/nitrogen6dl_defconfig
> @@ -10,8 +10,6 @@ CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
>   CONFIG_BOARD_EARLY_INIT_F=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x12000000
>   CONFIG_CMD_BOOTZ=y
>   # CONFIG_CMD_IMLS is not set
> @@ -50,7 +48,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Boundary"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0525
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
>   CONFIG_CI_UDC=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_USB_ETH_CDC=y
>   # CONFIG_VIDEO_SW_CURSOR is not set
> diff --git a/configs/nitrogen6q2g_defconfig b/configs/nitrogen6q2g_defconfig
> index 3c9b44023f82..1c149b5edf99 100644
> --- a/configs/nitrogen6q2g_defconfig
> +++ b/configs/nitrogen6q2g_defconfig
> @@ -10,8 +10,6 @@ CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
>   CONFIG_BOARD_EARLY_INIT_F=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x12000000
>   CONFIG_CMD_BOOTZ=y
>   # CONFIG_CMD_IMLS is not set
> @@ -51,7 +49,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Boundary"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0525
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
>   CONFIG_CI_UDC=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_USB_ETH_CDC=y
>   # CONFIG_VIDEO_SW_CURSOR is not set
> diff --git a/configs/nitrogen6q_defconfig b/configs/nitrogen6q_defconfig
> index 82b05febae40..29e59fd71ea0 100644
> --- a/configs/nitrogen6q_defconfig
> +++ b/configs/nitrogen6q_defconfig
> @@ -10,8 +10,6 @@ CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
>   CONFIG_BOARD_EARLY_INIT_F=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x12000000
>   CONFIG_CMD_BOOTZ=y
>   # CONFIG_CMD_IMLS is not set
> @@ -51,7 +49,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Boundary"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0525
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
>   CONFIG_CI_UDC=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_USB_ETH_CDC=y
>   # CONFIG_VIDEO_SW_CURSOR is not set
> diff --git a/configs/nitrogen6s1g_defconfig b/configs/nitrogen6s1g_defconfig
> index 3e4c20357c16..a06d6e12e358 100644
> --- a/configs/nitrogen6s1g_defconfig
> +++ b/configs/nitrogen6s1g_defconfig
> @@ -10,8 +10,6 @@ CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
>   CONFIG_BOARD_EARLY_INIT_F=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x12000000
>   CONFIG_CMD_BOOTZ=y
>   # CONFIG_CMD_IMLS is not set
> @@ -50,7 +48,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Boundary"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0525
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
>   CONFIG_CI_UDC=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_USB_ETH_CDC=y
>   # CONFIG_VIDEO_SW_CURSOR is not set
> diff --git a/configs/nitrogen6s_defconfig b/configs/nitrogen6s_defconfig
> index 107cbfc9bc55..a7a54bbb5e0f 100644
> --- a/configs/nitrogen6s_defconfig
> +++ b/configs/nitrogen6s_defconfig
> @@ -10,8 +10,6 @@ CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
>   CONFIG_BOARD_EARLY_INIT_F=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x12000000
>   CONFIG_CMD_BOOTZ=y
>   # CONFIG_CMD_IMLS is not set
> @@ -50,7 +48,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Boundary"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0525
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
>   CONFIG_CI_UDC=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_USB_ETH_CDC=y
>   # CONFIG_VIDEO_SW_CURSOR is not set
> diff --git a/configs/omap3_beagle_defconfig b/configs/omap3_beagle_defconfig
> index 86967b07fb9c..024e35647304 100644
> --- a/configs/omap3_beagle_defconfig
> +++ b/configs/omap3_beagle_defconfig
> @@ -9,8 +9,6 @@ CONFIG_SPL=y
>   CONFIG_SPL_MTD_SUPPORT=y
>   CONFIG_SPL_OS_BOOT=y
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x82000000
>   # CONFIG_CMD_IMLS is not set
>   CONFIG_CMD_SPL=y
> @@ -51,7 +49,6 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="TI"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_USB_HOST_ETHER=y
>   CONFIG_USB_ETHER_ASIX=y
> diff --git a/configs/omap3_logic_defconfig b/configs/omap3_logic_defconfig
> index b1693be7edd7..4380d6c84220 100644
> --- a/configs/omap3_logic_defconfig
> +++ b/configs/omap3_logic_defconfig
> @@ -15,7 +15,6 @@ CONFIG_SPL_OS_BOOT=y
>   CONFIG_HUSH_PARSER=y
>   CONFIG_SYS_PROMPT="OMAP Logic # "
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x82000000
>   # CONFIG_CMD_IMI is not set
>   # CONFIG_CMD_IMLS is not set
> @@ -48,6 +47,5 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="TI"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_ETHER=y
>   CONFIG_BCH=y
> diff --git a/configs/parrot_r16_defconfig b/configs/parrot_r16_defconfig
> index b36b9efec650..6be57e604e89 100644
> --- a/configs/parrot_r16_defconfig
> +++ b/configs/parrot_r16_defconfig
> @@ -23,4 +23,3 @@ CONFIG_FASTBOOT_FLASH_MMC_DEV=0
>   CONFIG_USB_EHCI_HCD=y
>   CONFIG_USB_MUSB_GADGET=y
>   CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
> diff --git a/configs/phycore-rk3288_defconfig b/configs/phycore-rk3288_defconfig
> index ba50ea9d8665..f9a53fc920d0 100644
> --- a/configs/phycore-rk3288_defconfig
> +++ b/configs/phycore-rk3288_defconfig
> @@ -76,7 +76,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x2207
>   CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
>   CONFIG_USB_GADGET_DWC2_OTG=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_HOST_ETHER=y
>   CONFIG_USB_ETHER_ASIX=y
>   CONFIG_USB_ETHER_SMSC95XX=y
> diff --git a/configs/popmetal-rk3288_defconfig b/configs/popmetal-rk3288_defconfig
> index a8d5cbf70940..5e592e6b918b 100644
> --- a/configs/popmetal-rk3288_defconfig
> +++ b/configs/popmetal-rk3288_defconfig
> @@ -73,7 +73,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x2207
>   CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
>   CONFIG_USB_GADGET_DWC2_OTG=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_HOST_ETHER=y
>   CONFIG_USB_ETHER_ASIX=y
>   CONFIG_USB_ETHER_SMSC95XX=y
> diff --git a/configs/rock2_defconfig b/configs/rock2_defconfig
> index d0ffdc7b0e70..be28c6640c1f 100644
> --- a/configs/rock2_defconfig
> +++ b/configs/rock2_defconfig
> @@ -71,7 +71,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x2207
>   CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
>   CONFIG_USB_GADGET_DWC2_OTG=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_DM_VIDEO=y
>   CONFIG_DISPLAY=y
>   CONFIG_VIDEO_ROCKCHIP=y
> diff --git a/configs/sniper_defconfig b/configs/sniper_defconfig
> index 75371c47ce8e..21254a5ad32b 100644
> --- a/configs/sniper_defconfig
> +++ b/configs/sniper_defconfig
> @@ -13,8 +13,6 @@ CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=2
>   CONFIG_HUSH_PARSER=y
>   CONFIG_SYS_PROMPT="sniper # "
>   CONFIG_FASTBOOT=y
> -CONFIG_USB_FUNCTION_FASTBOOT=y
> -CONFIG_CMD_FASTBOOT=y
>   CONFIG_FASTBOOT_BUF_ADDR=0x82000000
>   CONFIG_FASTBOOT_BUF_SIZE=0x2000000
>   CONFIG_FASTBOOT_FLASH=y
> @@ -46,5 +44,4 @@ CONFIG_USB_GADGET=y
>   CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x0451
>   CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_OF_LIBFDT=y
> diff --git a/configs/tinker-rk3288_defconfig b/configs/tinker-rk3288_defconfig
> index 84fcd8979f20..816fc0189c1d 100644
> --- a/configs/tinker-rk3288_defconfig
> +++ b/configs/tinker-rk3288_defconfig
> @@ -76,7 +76,6 @@ CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
>   CONFIG_USB_GADGET_VENDOR_NUM=0x2207
>   CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
>   CONFIG_USB_GADGET_DWC2_OTG=y
> -CONFIG_USB_GADGET_DOWNLOAD=y
>   CONFIG_USB_HOST_ETHER=y
>   CONFIG_USB_ETHER_ASIX=y
>   CONFIG_USB_ETHER_SMSC95XX=y
> 

Reviewed-by: Ɓukasz Majewski <lukma@denx.de>

Patch

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 1eb59c591a54..519f42778a8d 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -693,7 +693,6 @@  config ARCH_SUNXI
 	select USB_STORAGE if DISTRO_DEFAULTS
 	select USB_KEYBOARD if DISTRO_DEFAULTS
 	select USE_TINY_PRINTF
-	imply CMD_FASTBOOT
 	imply FASTBOOT
 	imply FAT_WRITE
 	imply PRE_CONSOLE_BUFFER
@@ -704,7 +703,6 @@  config ARCH_SUNXI
 	imply SPL_MMC_SUPPORT if MMC
 	imply SPL_POWER_SUPPORT
 	imply SPL_SERIAL_SUPPORT
-	imply USB_FUNCTION_FASTBOOT
 	imply USB_GADGET
 
 config TARGET_TS4600
diff --git a/cmd/fastboot/Kconfig b/cmd/fastboot/Kconfig
index fb0c5da94cdb..5c1186017206 100644
--- a/cmd/fastboot/Kconfig
+++ b/cmd/fastboot/Kconfig
@@ -8,6 +8,10 @@  if FASTBOOT
 
 config USB_FUNCTION_FASTBOOT
 	bool "Enable USB fastboot gadget"
+	default y
+	select USB_GADGET_DOWNLOAD
+	imply ANDROID_BOOT_IMAGE
+	imply CMD_FASTBOOT
 	help
 	  This enables the USB part of the fastboot gadget.
 
diff --git a/configs/A13-OLinuXino_defconfig b/configs/A13-OLinuXino_defconfig
index e55dbff44d36..ed8349000e22 100644
--- a/configs/A13-OLinuXino_defconfig
+++ b/configs/A13-OLinuXino_defconfig
@@ -31,4 +31,3 @@  CONFIG_AXP_ALDO3_VOLT=3300
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_MUSB_GADGET=y
 CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
-CONFIG_USB_GADGET_DOWNLOAD=y
diff --git a/configs/A20-OLinuXino-Lime2-eMMC_defconfig b/configs/A20-OLinuXino-Lime2-eMMC_defconfig
index 9491708d80c6..a04037ebe7cc 100644
--- a/configs/A20-OLinuXino-Lime2-eMMC_defconfig
+++ b/configs/A20-OLinuXino-Lime2-eMMC_defconfig
@@ -33,4 +33,3 @@  CONFIG_SCSI=y
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_MUSB_GADGET=y
 CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
-CONFIG_USB_GADGET_DOWNLOAD=y
diff --git a/configs/A20-OLinuXino-Lime2_defconfig b/configs/A20-OLinuXino-Lime2_defconfig
index 2bb8ee8c9ebd..f9388a005bcd 100644
--- a/configs/A20-OLinuXino-Lime2_defconfig
+++ b/configs/A20-OLinuXino-Lime2_defconfig
@@ -32,4 +32,3 @@  CONFIG_SCSI=y
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_MUSB_GADGET=y
 CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
-CONFIG_USB_GADGET_DOWNLOAD=y
diff --git a/configs/CHIP_defconfig b/configs/CHIP_defconfig
index b9f70d240c3c..5acce42a60f9 100644
--- a/configs/CHIP_defconfig
+++ b/configs/CHIP_defconfig
@@ -22,5 +22,4 @@  CONFIG_AXP_ALDO4_VOLT=3300
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_MUSB_GADGET=y
 CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_OF_LIBFDT_OVERLAY=y
diff --git a/configs/CHIP_pro_defconfig b/configs/CHIP_pro_defconfig
index 74f6eb10fc01..2303135449b2 100644
--- a/configs/CHIP_pro_defconfig
+++ b/configs/CHIP_pro_defconfig
@@ -27,5 +27,4 @@  CONFIG_AXP_ALDO4_VOLT=3300
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_MUSB_GADGET=y
 CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_OF_LIBFDT_OVERLAY=y
diff --git a/configs/Cubietruck_defconfig b/configs/Cubietruck_defconfig
index 458e2a9d8b04..3dff02f342d7 100644
--- a/configs/Cubietruck_defconfig
+++ b/configs/Cubietruck_defconfig
@@ -32,4 +32,3 @@  CONFIG_SCSI=y
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_MUSB_GADGET=y
 CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
-CONFIG_USB_GADGET_DOWNLOAD=y
diff --git a/configs/Nintendo_NES_Classic_Edition_defconfig b/configs/Nintendo_NES_Classic_Edition_defconfig
index e031dd8f5d5f..26fcffa02f10 100644
--- a/configs/Nintendo_NES_Classic_Edition_defconfig
+++ b/configs/Nintendo_NES_Classic_Edition_defconfig
@@ -22,4 +22,3 @@  CONFIG_AXP_DLDO1_VOLT=3300
 CONFIG_AXP_ELDO2_VOLT=1800
 CONFIG_USB_MUSB_GADGET=y
 CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
-CONFIG_USB_GADGET_DOWNLOAD=y
diff --git a/configs/Sinlinx_SinA33_defconfig b/configs/Sinlinx_SinA33_defconfig
index 143a9b4b6c10..d726b404cc5e 100644
--- a/configs/Sinlinx_SinA33_defconfig
+++ b/configs/Sinlinx_SinA33_defconfig
@@ -27,4 +27,3 @@  CONFIG_DFU_RAM=y
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_MUSB_GADGET=y
 CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
-CONFIG_USB_GADGET_DOWNLOAD=y
diff --git a/configs/am335x_boneblack_defconfig b/configs/am335x_boneblack_defconfig
index 85f220329e4e..e17329bc4fda 100644
--- a/configs/am335x_boneblack_defconfig
+++ b/configs/am335x_boneblack_defconfig
@@ -18,7 +18,6 @@  CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_DELAY_STR="d"
 CONFIG_AUTOBOOT_STOP_STR=" "
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL=y
 # CONFIG_CMD_FLASH is not set
@@ -41,7 +40,6 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_USBNET_HOST_ADDR="de:ad:be:af:00:00"
 CONFIG_LZO=y
diff --git a/configs/am335x_boneblack_vboot_defconfig b/configs/am335x_boneblack_vboot_defconfig
index 9ba3f7c04d73..4669a68d1471 100644
--- a/configs/am335x_boneblack_vboot_defconfig
+++ b/configs/am335x_boneblack_vboot_defconfig
@@ -21,7 +21,6 @@  CONFIG_AUTOBOOT_PROMPT="Press SPACE to abort autoboot in %d seconds\n"
 CONFIG_AUTOBOOT_DELAY_STR="d"
 CONFIG_AUTOBOOT_STOP_STR=" "
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL=y
 # CONFIG_CMD_FLASH is not set
@@ -51,6 +50,5 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_LZO=y
diff --git a/configs/am335x_evm_defconfig b/configs/am335x_evm_defconfig
index 8aa3c0de8824..e5363e78f07f 100644
--- a/configs/am335x_evm_defconfig
+++ b/configs/am335x_evm_defconfig
@@ -15,7 +15,6 @@  CONFIG_SPL_MTD_SUPPORT=y
 CONFIG_SPL_MUSB_NEW_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL=y
 CONFIG_CMD_SPL_NAND_OFS=0x00080000
@@ -53,7 +52,6 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_RSA=y
 CONFIG_LZO=y
diff --git a/configs/am335x_evm_nor_defconfig b/configs/am335x_evm_nor_defconfig
index b745f2997334..9d226bc8919f 100644
--- a/configs/am335x_evm_nor_defconfig
+++ b/configs/am335x_evm_nor_defconfig
@@ -14,7 +14,6 @@  CONFIG_SPL_MTD_SUPPORT=y
 CONFIG_SPL_MUSB_NEW_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL=y
 CONFIG_CMD_SPL_NAND_OFS=0x00080000
@@ -40,7 +39,6 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_LZO=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/am335x_evm_norboot_defconfig b/configs/am335x_evm_norboot_defconfig
index 9662b6684c1f..e786565c2a17 100644
--- a/configs/am335x_evm_norboot_defconfig
+++ b/configs/am335x_evm_norboot_defconfig
@@ -12,7 +12,6 @@  CONFIG_VERSION_VARIABLE=y
 CONFIG_ARCH_MISC_INIT=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_SETEXPR is not set
 CONFIG_CMD_MTDPARTS=y
@@ -34,7 +33,6 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_USBNET_HOST_ADDR="de:ad:be:af:00:00"
 CONFIG_LZO=y
diff --git a/configs/am335x_evm_spiboot_defconfig b/configs/am335x_evm_spiboot_defconfig
index 5e2c19066daa..0ab48d9647c0 100644
--- a/configs/am335x_evm_spiboot_defconfig
+++ b/configs/am335x_evm_spiboot_defconfig
@@ -16,7 +16,6 @@  CONFIG_SPL=y
 CONFIG_SPL_STACK_R=y
 CONFIG_SPL_MUSB_NEW_SUPPORT=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
 # CONFIG_CMD_IMLS is not set
 # CONFIG_CMD_FLASH is not set
 # CONFIG_CMD_SETEXPR is not set
@@ -38,7 +37,6 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_LZO=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/am335x_evm_usbspl_defconfig b/configs/am335x_evm_usbspl_defconfig
index d6c21b8e85ee..0674ab0570e8 100644
--- a/configs/am335x_evm_usbspl_defconfig
+++ b/configs/am335x_evm_usbspl_defconfig
@@ -18,7 +18,6 @@  CONFIG_SPL_USB_GADGET_SUPPORT=y
 CONFIG_SPL_USBETH_SUPPORT=y
 # CONFIG_SPL_YMODEM_SUPPORT is not set
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL=y
 CONFIG_CMD_SPL_NAND_OFS=0x00080000
@@ -44,7 +43,6 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_LZO=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/am57xx_evm_defconfig b/configs/am57xx_evm_defconfig
index a9ee2e448f3c..07afb9139a77 100644
--- a/configs/am57xx_evm_defconfig
+++ b/configs/am57xx_evm_defconfig
@@ -25,7 +25,6 @@  CONFIG_SPL_DMA_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x82000000
 CONFIG_FASTBOOT_BUF_SIZE=0x2F000000
 CONFIG_FASTBOOT_USB_DEV=1
@@ -75,4 +74,3 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
diff --git a/configs/am57xx_evm_nodt_defconfig b/configs/am57xx_evm_nodt_defconfig
index ae7c3464e0cb..88b8bc104d08 100644
--- a/configs/am57xx_evm_nodt_defconfig
+++ b/configs/am57xx_evm_nodt_defconfig
@@ -15,8 +15,6 @@  CONFIG_SPL_DMA_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x82000000
 CONFIG_FASTBOOT_BUF_SIZE=0x2F000000
 CONFIG_FASTBOOT_USB_DEV=1
@@ -65,6 +63,5 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_FAT_WRITE=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/am57xx_hs_evm_defconfig b/configs/am57xx_hs_evm_defconfig
index 1047f33237ef..dd5e86212576 100644
--- a/configs/am57xx_hs_evm_defconfig
+++ b/configs/am57xx_hs_evm_defconfig
@@ -30,7 +30,6 @@  CONFIG_SPL_SEPARATE_BSS=y
 CONFIG_SPL_DMA_SUPPORT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x82000000
 CONFIG_FASTBOOT_BUF_SIZE=0x2F000000
 CONFIG_FASTBOOT_USB_DEV=1
@@ -78,4 +77,3 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
diff --git a/configs/bcm23550_w1d_defconfig b/configs/bcm23550_w1d_defconfig
index 49f7e40d15d9..f7af02f61323 100644
--- a/configs/bcm23550_w1d_defconfig
+++ b/configs/bcm23550_w1d_defconfig
@@ -7,8 +7,6 @@  CONFIG_VERSION_VARIABLE=y
 # CONFIG_DISPLAY_BOARDINFO is not set
 CONFIG_HUSH_PARSER=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x80000000
 CONFIG_FASTBOOT_BUF_SIZE=0x1D000000
 CONFIG_FASTBOOT_FLASH=y
@@ -40,5 +38,4 @@  CONFIG_USB_GADGET_PRODUCT_NUM=0x0d02
 CONFIG_USB_GADGET_BCM_UDC_OTG_PHY=y
 CONFIG_USB_GADGET_DWC2_OTG=y
 CONFIG_USB_GADGET_DWC2_OTG_PHY_BUS_WIDTH_8=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/bcm28155_ap_defconfig b/configs/bcm28155_ap_defconfig
index 9e17b60e54e4..2d24200096e3 100644
--- a/configs/bcm28155_ap_defconfig
+++ b/configs/bcm28155_ap_defconfig
@@ -8,8 +8,6 @@  CONFIG_VERSION_VARIABLE=y
 CONFIG_HUSH_PARSER=y
 # CONFIG_AUTOBOOT is not set
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x80000000
 CONFIG_FASTBOOT_BUF_SIZE=0x7FF00000
 CONFIG_FASTBOOT_FLASH=y
@@ -41,5 +39,4 @@  CONFIG_USB_GADGET_PRODUCT_NUM=0x0d02
 CONFIG_USB_GADGET_BCM_UDC_OTG_PHY=y
 CONFIG_USB_GADGET_DWC2_OTG=y
 CONFIG_USB_GADGET_DWC2_OTG_PHY_BUS_WIDTH_8=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/birdland_bav335a_defconfig b/configs/birdland_bav335a_defconfig
index 41b77302155f..828bbd16e6ed 100644
--- a/configs/birdland_bav335a_defconfig
+++ b/configs/birdland_bav335a_defconfig
@@ -24,8 +24,6 @@  CONFIG_SPL_POWER_SUPPORT=y
 CONFIG_SPL_YMODEM_SUPPORT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x82000000
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
@@ -69,7 +67,6 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_FAT_WRITE=y
 CONFIG_LZO=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/birdland_bav335b_defconfig b/configs/birdland_bav335b_defconfig
index 6ecf8d035478..d851575ac619 100644
--- a/configs/birdland_bav335b_defconfig
+++ b/configs/birdland_bav335b_defconfig
@@ -24,8 +24,6 @@  CONFIG_SPL_POWER_SUPPORT=y
 CONFIG_SPL_YMODEM_SUPPORT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x82000000
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
@@ -69,7 +67,6 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_FAT_WRITE=y
 CONFIG_LZO=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/cgtqmx6eval_defconfig b/configs/cgtqmx6eval_defconfig
index b17c30fcd2f6..201a33138cf2 100644
--- a/configs/cgtqmx6eval_defconfig
+++ b/configs/cgtqmx6eval_defconfig
@@ -24,8 +24,6 @@  CONFIG_SPL_I2C_SUPPORT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="CGT-QMX6-Quad U-Boot > "
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x12000000
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
@@ -61,7 +59,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Congatec"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0525
 CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
 CONFIG_CI_UDC=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_HOST_ETHER=y
 CONFIG_USB_ETHER_ASIX=y
 # CONFIG_VIDEO_SW_CURSOR is not set
diff --git a/configs/chromebit_mickey_defconfig b/configs/chromebit_mickey_defconfig
index fccff80780bc..e061b2615255 100644
--- a/configs/chromebit_mickey_defconfig
+++ b/configs/chromebit_mickey_defconfig
@@ -79,7 +79,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
 CONFIG_USB_GADGET_VENDOR_NUM=0x2207
 CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
 CONFIG_USB_GADGET_DWC2_OTG=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_DM_VIDEO=y
 CONFIG_DISPLAY=y
 CONFIG_VIDEO_ROCKCHIP=y
diff --git a/configs/chromebook_jerry_defconfig b/configs/chromebook_jerry_defconfig
index 18790b30898f..2f6b4e5e3d30 100644
--- a/configs/chromebook_jerry_defconfig
+++ b/configs/chromebook_jerry_defconfig
@@ -80,7 +80,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
 CONFIG_USB_GADGET_VENDOR_NUM=0x2207
 CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
 CONFIG_USB_GADGET_DWC2_OTG=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_DM_VIDEO=y
 CONFIG_DISPLAY=y
 CONFIG_VIDEO_ROCKCHIP=y
diff --git a/configs/chromebook_minnie_defconfig b/configs/chromebook_minnie_defconfig
index fdb992d59252..3b76cb47fb4d 100644
--- a/configs/chromebook_minnie_defconfig
+++ b/configs/chromebook_minnie_defconfig
@@ -79,7 +79,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
 CONFIG_USB_GADGET_VENDOR_NUM=0x2207
 CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
 CONFIG_USB_GADGET_DWC2_OTG=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_DM_VIDEO=y
 CONFIG_DISPLAY=y
 CONFIG_VIDEO_ROCKCHIP=y
diff --git a/configs/dra7xx_evm_defconfig b/configs/dra7xx_evm_defconfig
index 4aca3a4a043a..748948ec8156 100644
--- a/configs/dra7xx_evm_defconfig
+++ b/configs/dra7xx_evm_defconfig
@@ -25,7 +25,6 @@  CONFIG_SPL_DMA_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x82000000
 CONFIG_FASTBOOT_BUF_SIZE=0x2F000000
 CONFIG_FASTBOOT_FLASH=y
@@ -93,4 +92,3 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
diff --git a/configs/dra7xx_hs_evm_defconfig b/configs/dra7xx_hs_evm_defconfig
index 4d126e09f6a6..d31653e9d1c5 100644
--- a/configs/dra7xx_hs_evm_defconfig
+++ b/configs/dra7xx_hs_evm_defconfig
@@ -30,7 +30,6 @@  CONFIG_SPL_SEPARATE_BSS=y
 CONFIG_SPL_DMA_SUPPORT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x82000000
 CONFIG_FASTBOOT_BUF_SIZE=0x2F000000
 CONFIG_FASTBOOT_FLASH=y
@@ -95,4 +94,3 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
diff --git a/configs/evb-rk3036_defconfig b/configs/evb-rk3036_defconfig
index 9cce3351f80b..f2c4d8c54303 100644
--- a/configs/evb-rk3036_defconfig
+++ b/configs/evb-rk3036_defconfig
@@ -48,7 +48,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
 CONFIG_USB_GADGET_VENDOR_NUM=0x2207
 CONFIG_USB_GADGET_PRODUCT_NUM=0x310a
 CONFIG_USB_GADGET_DWC2_OTG=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_SPL_TINY_MEMSET=y
 CONFIG_CMD_DHRYSTONE=y
 CONFIG_ERRNO_STR=y
diff --git a/configs/evb-rk3229_defconfig b/configs/evb-rk3229_defconfig
index 61fdacaa1340..2bc9f4a9765b 100644
--- a/configs/evb-rk3229_defconfig
+++ b/configs/evb-rk3229_defconfig
@@ -48,5 +48,4 @@  CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
 CONFIG_USB_GADGET_VENDOR_NUM=0x2207
 CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
 CONFIG_USB_GADGET_DWC2_OTG=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_ERRNO_STR=y
diff --git a/configs/evb-rk3288_defconfig b/configs/evb-rk3288_defconfig
index 0d91cdd53ff6..d8dadd7ea97e 100644
--- a/configs/evb-rk3288_defconfig
+++ b/configs/evb-rk3288_defconfig
@@ -70,7 +70,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
 CONFIG_USB_GADGET_VENDOR_NUM=0x2207
 CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
 CONFIG_USB_GADGET_DWC2_OTG=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_DM_VIDEO=y
 CONFIG_DISPLAY=y
 CONFIG_VIDEO_ROCKCHIP=y
diff --git a/configs/fennec-rk3288_defconfig b/configs/fennec-rk3288_defconfig
index 51420e5b66db..adc3f7aa70a8 100644
--- a/configs/fennec-rk3288_defconfig
+++ b/configs/fennec-rk3288_defconfig
@@ -73,7 +73,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
 CONFIG_USB_GADGET_VENDOR_NUM=0x2207
 CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
 CONFIG_USB_GADGET_DWC2_OTG=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_HOST_ETHER=y
 CONFIG_USB_ETHER_ASIX=y
 CONFIG_USB_ETHER_SMSC95XX=y
diff --git a/configs/firefly-rk3288_defconfig b/configs/firefly-rk3288_defconfig
index eb42def73fc2..3e95f0fca2b3 100644
--- a/configs/firefly-rk3288_defconfig
+++ b/configs/firefly-rk3288_defconfig
@@ -79,7 +79,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
 CONFIG_USB_GADGET_VENDOR_NUM=0x2207
 CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
 CONFIG_USB_GADGET_DWC2_OTG=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_HOST_ETHER=y
 CONFIG_USB_ETHER_ASIX=y
 CONFIG_USB_ETHER_SMSC95XX=y
diff --git a/configs/kc1_defconfig b/configs/kc1_defconfig
index d27a7f5abbe0..87b3eec4623c 100644
--- a/configs/kc1_defconfig
+++ b/configs/kc1_defconfig
@@ -12,8 +12,6 @@  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=2
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="kc1 # "
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x82000000
 CONFIG_FASTBOOT_BUF_SIZE=0x2000000
 CONFIG_FASTBOOT_FLASH=y
@@ -45,5 +43,4 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/kylin-rk3036_defconfig b/configs/kylin-rk3036_defconfig
index 0904eb14d4fc..5adf5779c728 100644
--- a/configs/kylin-rk3036_defconfig
+++ b/configs/kylin-rk3036_defconfig
@@ -48,7 +48,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
 CONFIG_USB_GADGET_VENDOR_NUM=0x2207
 CONFIG_USB_GADGET_PRODUCT_NUM=0x310a
 CONFIG_USB_GADGET_DWC2_OTG=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_HOST_ETHER=y
 CONFIG_USB_ETHER_ASIX=y
 CONFIG_USB_ETHER_SMSC95XX=y
diff --git a/configs/miqi-rk3288_defconfig b/configs/miqi-rk3288_defconfig
index e607ecd7dd71..e5d1b759256a 100644
--- a/configs/miqi-rk3288_defconfig
+++ b/configs/miqi-rk3288_defconfig
@@ -73,7 +73,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
 CONFIG_USB_GADGET_VENDOR_NUM=0x2207
 CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
 CONFIG_USB_GADGET_DWC2_OTG=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_HOST_ETHER=y
 CONFIG_USB_ETHER_ASIX=y
 CONFIG_USB_ETHER_SMSC95XX=y
diff --git a/configs/mx6qsabrelite_defconfig b/configs/mx6qsabrelite_defconfig
index 92e0a578dfde..3dfe25ebb5c0 100644
--- a/configs/mx6qsabrelite_defconfig
+++ b/configs/mx6qsabrelite_defconfig
@@ -10,8 +10,6 @@  CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_HUSH_PARSER=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x12000000
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
@@ -53,7 +51,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Boundary"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0525
 CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
 CONFIG_CI_UDC=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_USB_ETH_CDC=y
 # CONFIG_VIDEO_SW_CURSOR is not set
diff --git a/configs/nitrogen6dl2g_defconfig b/configs/nitrogen6dl2g_defconfig
index a5fdb48d2452..32c6eea54618 100644
--- a/configs/nitrogen6dl2g_defconfig
+++ b/configs/nitrogen6dl2g_defconfig
@@ -10,8 +10,6 @@  CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_HUSH_PARSER=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x12000000
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
@@ -50,7 +48,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Boundary"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0525
 CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
 CONFIG_CI_UDC=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_USB_ETH_CDC=y
 # CONFIG_VIDEO_SW_CURSOR is not set
diff --git a/configs/nitrogen6dl_defconfig b/configs/nitrogen6dl_defconfig
index 1803bdba888e..8ce2515d3794 100644
--- a/configs/nitrogen6dl_defconfig
+++ b/configs/nitrogen6dl_defconfig
@@ -10,8 +10,6 @@  CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_HUSH_PARSER=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x12000000
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
@@ -50,7 +48,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Boundary"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0525
 CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
 CONFIG_CI_UDC=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_USB_ETH_CDC=y
 # CONFIG_VIDEO_SW_CURSOR is not set
diff --git a/configs/nitrogen6q2g_defconfig b/configs/nitrogen6q2g_defconfig
index 3c9b44023f82..1c149b5edf99 100644
--- a/configs/nitrogen6q2g_defconfig
+++ b/configs/nitrogen6q2g_defconfig
@@ -10,8 +10,6 @@  CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_HUSH_PARSER=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x12000000
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
@@ -51,7 +49,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Boundary"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0525
 CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
 CONFIG_CI_UDC=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_USB_ETH_CDC=y
 # CONFIG_VIDEO_SW_CURSOR is not set
diff --git a/configs/nitrogen6q_defconfig b/configs/nitrogen6q_defconfig
index 82b05febae40..29e59fd71ea0 100644
--- a/configs/nitrogen6q_defconfig
+++ b/configs/nitrogen6q_defconfig
@@ -10,8 +10,6 @@  CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_HUSH_PARSER=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x12000000
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
@@ -51,7 +49,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Boundary"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0525
 CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
 CONFIG_CI_UDC=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_USB_ETH_CDC=y
 # CONFIG_VIDEO_SW_CURSOR is not set
diff --git a/configs/nitrogen6s1g_defconfig b/configs/nitrogen6s1g_defconfig
index 3e4c20357c16..a06d6e12e358 100644
--- a/configs/nitrogen6s1g_defconfig
+++ b/configs/nitrogen6s1g_defconfig
@@ -10,8 +10,6 @@  CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_HUSH_PARSER=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x12000000
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
@@ -50,7 +48,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Boundary"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0525
 CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
 CONFIG_CI_UDC=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_USB_ETH_CDC=y
 # CONFIG_VIDEO_SW_CURSOR is not set
diff --git a/configs/nitrogen6s_defconfig b/configs/nitrogen6s_defconfig
index 107cbfc9bc55..a7a54bbb5e0f 100644
--- a/configs/nitrogen6s_defconfig
+++ b/configs/nitrogen6s_defconfig
@@ -10,8 +10,6 @@  CONFIG_SYS_CONSOLE_OVERWRITE_ROUTINE=y
 CONFIG_BOARD_EARLY_INIT_F=y
 CONFIG_HUSH_PARSER=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x12000000
 CONFIG_CMD_BOOTZ=y
 # CONFIG_CMD_IMLS is not set
@@ -50,7 +48,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Boundary"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0525
 CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
 CONFIG_CI_UDC=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_USB_ETH_CDC=y
 # CONFIG_VIDEO_SW_CURSOR is not set
diff --git a/configs/omap3_beagle_defconfig b/configs/omap3_beagle_defconfig
index 86967b07fb9c..024e35647304 100644
--- a/configs/omap3_beagle_defconfig
+++ b/configs/omap3_beagle_defconfig
@@ -9,8 +9,6 @@  CONFIG_SPL=y
 CONFIG_SPL_MTD_SUPPORT=y
 CONFIG_SPL_OS_BOOT=y
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x82000000
 # CONFIG_CMD_IMLS is not set
 CONFIG_CMD_SPL=y
@@ -51,7 +49,6 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="TI"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_USB_HOST_ETHER=y
 CONFIG_USB_ETHER_ASIX=y
diff --git a/configs/omap3_logic_defconfig b/configs/omap3_logic_defconfig
index b1693be7edd7..4380d6c84220 100644
--- a/configs/omap3_logic_defconfig
+++ b/configs/omap3_logic_defconfig
@@ -15,7 +15,6 @@  CONFIG_SPL_OS_BOOT=y
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="OMAP Logic # "
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x82000000
 # CONFIG_CMD_IMI is not set
 # CONFIG_CMD_IMLS is not set
@@ -48,6 +47,5 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="TI"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_ETHER=y
 CONFIG_BCH=y
diff --git a/configs/parrot_r16_defconfig b/configs/parrot_r16_defconfig
index b36b9efec650..6be57e604e89 100644
--- a/configs/parrot_r16_defconfig
+++ b/configs/parrot_r16_defconfig
@@ -23,4 +23,3 @@  CONFIG_FASTBOOT_FLASH_MMC_DEV=0
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_MUSB_GADGET=y
 CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y
-CONFIG_USB_GADGET_DOWNLOAD=y
diff --git a/configs/phycore-rk3288_defconfig b/configs/phycore-rk3288_defconfig
index ba50ea9d8665..f9a53fc920d0 100644
--- a/configs/phycore-rk3288_defconfig
+++ b/configs/phycore-rk3288_defconfig
@@ -76,7 +76,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
 CONFIG_USB_GADGET_VENDOR_NUM=0x2207
 CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
 CONFIG_USB_GADGET_DWC2_OTG=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_HOST_ETHER=y
 CONFIG_USB_ETHER_ASIX=y
 CONFIG_USB_ETHER_SMSC95XX=y
diff --git a/configs/popmetal-rk3288_defconfig b/configs/popmetal-rk3288_defconfig
index a8d5cbf70940..5e592e6b918b 100644
--- a/configs/popmetal-rk3288_defconfig
+++ b/configs/popmetal-rk3288_defconfig
@@ -73,7 +73,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
 CONFIG_USB_GADGET_VENDOR_NUM=0x2207
 CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
 CONFIG_USB_GADGET_DWC2_OTG=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_HOST_ETHER=y
 CONFIG_USB_ETHER_ASIX=y
 CONFIG_USB_ETHER_SMSC95XX=y
diff --git a/configs/rock2_defconfig b/configs/rock2_defconfig
index d0ffdc7b0e70..be28c6640c1f 100644
--- a/configs/rock2_defconfig
+++ b/configs/rock2_defconfig
@@ -71,7 +71,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
 CONFIG_USB_GADGET_VENDOR_NUM=0x2207
 CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
 CONFIG_USB_GADGET_DWC2_OTG=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_DM_VIDEO=y
 CONFIG_DISPLAY=y
 CONFIG_VIDEO_ROCKCHIP=y
diff --git a/configs/sniper_defconfig b/configs/sniper_defconfig
index 75371c47ce8e..21254a5ad32b 100644
--- a/configs/sniper_defconfig
+++ b/configs/sniper_defconfig
@@ -13,8 +13,6 @@  CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION=2
 CONFIG_HUSH_PARSER=y
 CONFIG_SYS_PROMPT="sniper # "
 CONFIG_FASTBOOT=y
-CONFIG_USB_FUNCTION_FASTBOOT=y
-CONFIG_CMD_FASTBOOT=y
 CONFIG_FASTBOOT_BUF_ADDR=0x82000000
 CONFIG_FASTBOOT_BUF_SIZE=0x2000000
 CONFIG_FASTBOOT_FLASH=y
@@ -46,5 +44,4 @@  CONFIG_USB_GADGET=y
 CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
 CONFIG_USB_GADGET_VENDOR_NUM=0x0451
 CONFIG_USB_GADGET_PRODUCT_NUM=0xd022
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_OF_LIBFDT=y
diff --git a/configs/tinker-rk3288_defconfig b/configs/tinker-rk3288_defconfig
index 84fcd8979f20..816fc0189c1d 100644
--- a/configs/tinker-rk3288_defconfig
+++ b/configs/tinker-rk3288_defconfig
@@ -76,7 +76,6 @@  CONFIG_USB_GADGET_MANUFACTURER="Rockchip"
 CONFIG_USB_GADGET_VENDOR_NUM=0x2207
 CONFIG_USB_GADGET_PRODUCT_NUM=0x320a
 CONFIG_USB_GADGET_DWC2_OTG=y
-CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_USB_HOST_ETHER=y
 CONFIG_USB_ETHER_ASIX=y
 CONFIG_USB_ETHER_SMSC95XX=y