mirror of
https://github.com/smaeul/u-boot.git
synced 2025-10-18 14:48:17 +01:00
Merge branch 'next' of https://source.denx.de/u-boot/custodians/u-boot-usb into next
- USB and SPL related Kconfig clean-up / re-organization
This commit is contained in:
commit
51148de673
@ -1345,96 +1345,6 @@ config SPL_THERMAL
|
|||||||
automatic power-off when the temperature gets too high or low. Other
|
automatic power-off when the temperature gets too high or low. Other
|
||||||
devices may be discrete but connected on a suitable bus.
|
devices may be discrete but connected on a suitable bus.
|
||||||
|
|
||||||
config SPL_USB_HOST
|
|
||||||
bool "Support USB host drivers"
|
|
||||||
help
|
|
||||||
Enable access to USB (Universal Serial Bus) host devices so that
|
|
||||||
SPL can load U-Boot from a connected USB peripheral, such as a USB
|
|
||||||
flash stick. While USB takes a little longer to start up than most
|
|
||||||
buses, it is very flexible since many different types of storage
|
|
||||||
device can be attached. This option enables the drivers in
|
|
||||||
drivers/usb/host as part of an SPL build.
|
|
||||||
|
|
||||||
config SPL_USB_STORAGE
|
|
||||||
bool "Support loading from USB"
|
|
||||||
depends on SPL_USB_HOST
|
|
||||||
help
|
|
||||||
Enable support for USB devices in SPL. This allows use of USB
|
|
||||||
devices such as hard drives and flash drivers for loading U-Boot.
|
|
||||||
The actual drivers are enabled separately using the normal U-Boot
|
|
||||||
config options. This enables loading from USB using a configured
|
|
||||||
device.
|
|
||||||
|
|
||||||
config SYS_USB_FAT_BOOT_PARTITION
|
|
||||||
int "Partition on USB to use to load U-Boot from"
|
|
||||||
depends on SPL_USB_STORAGE
|
|
||||||
default 1
|
|
||||||
help
|
|
||||||
Partition on the USB storage device to load U-Boot from
|
|
||||||
|
|
||||||
config SPL_USB_GADGET
|
|
||||||
bool "Suppport USB Gadget drivers"
|
|
||||||
help
|
|
||||||
Enable USB Gadget API which allows to enable USB device functions
|
|
||||||
in SPL.
|
|
||||||
|
|
||||||
if SPL_USB_GADGET
|
|
||||||
|
|
||||||
config SPL_USB_ETHER
|
|
||||||
bool "Support USB Ethernet drivers"
|
|
||||||
depends on SPL_NET
|
|
||||||
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 and SPL_ETH.
|
|
||||||
|
|
||||||
config SPL_DFU
|
|
||||||
bool "Support DFU (Device Firmware Upgrade)"
|
|
||||||
select SPL_HASH
|
|
||||||
select SPL_DFU_NO_RESET
|
|
||||||
depends on SPL_RAM_SUPPORT
|
|
||||||
help
|
|
||||||
This feature enables the DFU (Device Firmware Upgrade) 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
|
|
||||||
|
|
||||||
config SPL_DFU_RAM
|
|
||||||
bool "RAM device"
|
|
||||||
depends on SPL_DFU && SPL_RAM_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_USB_SDP_SUPPORT
|
|
||||||
bool "Support SDP (Serial Download Protocol)"
|
|
||||||
depends on SPL_SERIAL
|
|
||||||
help
|
|
||||||
Enable Serial Download Protocol (SDP) device support in SPL. This
|
|
||||||
allows to download images into memory and execute (jump to) them
|
|
||||||
using the same protocol as implemented by the i.MX family's boot ROM.
|
|
||||||
|
|
||||||
config SPL_SDP_USB_DEV
|
|
||||||
int "SDP USB controller index"
|
|
||||||
default 0
|
|
||||||
depends on SPL_USB_SDP_SUPPORT
|
|
||||||
help
|
|
||||||
Some boards have USB controller other than 0. Define this option
|
|
||||||
so it can be used in compiled environment.
|
|
||||||
endif
|
|
||||||
|
|
||||||
config SPL_WATCHDOG
|
config SPL_WATCHDOG
|
||||||
bool "Support watchdog drivers"
|
bool "Support watchdog drivers"
|
||||||
imply SPL_WDT if !HW_WATCHDOG
|
imply SPL_WDT if !HW_WATCHDOG
|
||||||
|
@ -126,6 +126,28 @@ config USB_HUB_DEBOUNCE_TIMEOUT
|
|||||||
value = 1s because some usb device needs around 1.5s to be initialized
|
value = 1s because some usb device needs around 1.5s to be initialized
|
||||||
and a 2s value should solve detection issue on problematic USB keys.
|
and a 2s value should solve detection issue on problematic USB keys.
|
||||||
|
|
||||||
|
if SPL_USB_HOST
|
||||||
|
|
||||||
|
comment "USB peripherals in SPL"
|
||||||
|
|
||||||
|
config SPL_USB_STORAGE
|
||||||
|
bool "Support loading from USB"
|
||||||
|
help
|
||||||
|
Enable support for USB devices in SPL. This allows use of USB
|
||||||
|
devices such as hard drives and flash drivers for loading U-Boot.
|
||||||
|
The actual drivers are enabled separately using the normal U-Boot
|
||||||
|
config options. This enables loading from USB using a configured
|
||||||
|
device.
|
||||||
|
|
||||||
|
config SYS_USB_FAT_BOOT_PARTITION
|
||||||
|
int "Partition on USB to use to load U-Boot from"
|
||||||
|
depends on SPL_USB_STORAGE
|
||||||
|
default 1
|
||||||
|
help
|
||||||
|
Partition on the USB storage device to load U-Boot from.
|
||||||
|
|
||||||
|
endif
|
||||||
|
|
||||||
if USB_KEYBOARD
|
if USB_KEYBOARD
|
||||||
|
|
||||||
config USB_KEYBOARD_FN_KEYS
|
config USB_KEYBOARD_FN_KEYS
|
||||||
|
@ -36,6 +36,12 @@ menuconfig USB_GADGET
|
|||||||
peripheral/device side bus controller, and a "gadget driver" for
|
peripheral/device side bus controller, and a "gadget driver" for
|
||||||
your peripheral protocol.
|
your peripheral protocol.
|
||||||
|
|
||||||
|
config SPL_USB_GADGET
|
||||||
|
bool "USB Gadget Support in SPL"
|
||||||
|
help
|
||||||
|
Enable USB Gadget API which allows to enable USB device functions
|
||||||
|
in SPL.
|
||||||
|
|
||||||
if USB_GADGET
|
if USB_GADGET
|
||||||
|
|
||||||
config USB_GADGET_MANUFACTURER
|
config USB_GADGET_MANUFACTURER
|
||||||
@ -265,3 +271,85 @@ config USBNET_HOST_ADDR
|
|||||||
endif # USB_ETHER
|
endif # USB_ETHER
|
||||||
|
|
||||||
endif # USB_GADGET
|
endif # USB_GADGET
|
||||||
|
|
||||||
|
if SPL_USB_GADGET
|
||||||
|
|
||||||
|
config SPL_USB_ETHER
|
||||||
|
bool "Support USB Ethernet drivers in SPL"
|
||||||
|
depends on SPL_NET
|
||||||
|
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 and SPL_ETH.
|
||||||
|
|
||||||
|
if SPL_USB_ETHER
|
||||||
|
|
||||||
|
choice
|
||||||
|
prompt "USB Ethernet Gadget Model in SPL"
|
||||||
|
default SPL_USB_ETH_RNDIS
|
||||||
|
help
|
||||||
|
There is several models (protocols) to implement Ethernet over USB
|
||||||
|
devices. The main ones are Microsoft's RNDIS and USB's CDC-Ethernet
|
||||||
|
(also called CDC-ECM). RNDIS is obviously compatible with Windows,
|
||||||
|
while CDC-ECM is not. Most other operating systems support both, so
|
||||||
|
if inter-operability is a concern, RNDIS is to be preferred.
|
||||||
|
|
||||||
|
config SPL_USB_ETH_RNDIS
|
||||||
|
bool "RNDIS Protocol"
|
||||||
|
help
|
||||||
|
The RNDIS (Remote Network Driver Interface Specification) is a
|
||||||
|
Microsoft proprietary protocol to create an Ethernet device over USB.
|
||||||
|
Windows obviously supports it, as well as all the major operating
|
||||||
|
systems, so it's the best option for compatibility.
|
||||||
|
|
||||||
|
endchoice
|
||||||
|
|
||||||
|
endif # SPL_USB_ETHER
|
||||||
|
|
||||||
|
config SPL_DFU
|
||||||
|
bool "Support DFU (Device Firmware Upgrade) in SPL"
|
||||||
|
select SPL_HASH
|
||||||
|
select SPL_DFU_NO_RESET
|
||||||
|
depends on SPL_RAM_SUPPORT
|
||||||
|
help
|
||||||
|
This feature enables the DFU (Device Firmware Upgrade) 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 in SPL"
|
||||||
|
depends on SPL_DFU
|
||||||
|
|
||||||
|
config SPL_DFU_RAM
|
||||||
|
bool "RAM device"
|
||||||
|
depends on SPL_DFU && SPL_RAM_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_USB_SDP_SUPPORT
|
||||||
|
bool "Support SDP (Serial Download Protocol) in SPL"
|
||||||
|
depends on SPL_SERIAL
|
||||||
|
help
|
||||||
|
Enable Serial Download Protocol (SDP) device support in SPL. This
|
||||||
|
allows to download images into memory and execute (jump to) them
|
||||||
|
using the same protocol as implemented by the i.MX family's boot ROM.
|
||||||
|
|
||||||
|
config SPL_SDP_USB_DEV
|
||||||
|
int "SDP USB controller index in SPL"
|
||||||
|
default 0
|
||||||
|
depends on SPL_USB_SDP_SUPPORT
|
||||||
|
help
|
||||||
|
Some boards have USB controller other than 0. Define this option
|
||||||
|
so it can be used in compiled environment.
|
||||||
|
|
||||||
|
endif # SPL_USB_GADGET
|
||||||
|
@ -3,8 +3,9 @@
|
|||||||
# (C) Copyright 2000-2007
|
# (C) Copyright 2000-2007
|
||||||
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
|
||||||
|
|
||||||
obj-$(CONFIG_USB_GADGET) += epautoconf.o config.o usbstring.o
|
obj-$(CONFIG_$(SPL_TPL_)USB_GADGET) += epautoconf.o config.o usbstring.o
|
||||||
obj-$(CONFIG_USB_ETHER) += epautoconf.o config.o usbstring.o
|
obj-$(CONFIG_$(SPL_TPL_)USB_ETHER) += epautoconf.o config.o usbstring.o ether.o
|
||||||
|
obj-$(CONFIG_$(SPL_TPL_)USB_ETH_RNDIS) += rndis.o
|
||||||
|
|
||||||
ifdef CONFIG_SPL_BUILD
|
ifdef CONFIG_SPL_BUILD
|
||||||
obj-$(CONFIG_SPL_USB_GADGET) += g_dnl.o
|
obj-$(CONFIG_SPL_USB_GADGET) += g_dnl.o
|
||||||
@ -34,9 +35,6 @@ endif
|
|||||||
|
|
||||||
obj-$(CONFIG_CI_UDC) += ci_udc.o
|
obj-$(CONFIG_CI_UDC) += ci_udc.o
|
||||||
|
|
||||||
obj-$(CONFIG_USB_ETHER) += ether.o
|
|
||||||
obj-$(CONFIG_USB_ETH_RNDIS) += rndis.o
|
|
||||||
|
|
||||||
# Devices not related to the new gadget layer depend on CONFIG_USB_DEVICE
|
# Devices not related to the new gadget layer depend on CONFIG_USB_DEVICE
|
||||||
# This is really only N900 and USBTTY now.
|
# This is really only N900 and USBTTY now.
|
||||||
obj-$(CONFIG_USB_DEVICE) += core.o ep0.o
|
obj-$(CONFIG_USB_DEVICE) += core.o ep0.o
|
||||||
|
@ -6,6 +6,19 @@ comment "USB Host Controller Drivers"
|
|||||||
config USB_HOST
|
config USB_HOST
|
||||||
bool
|
bool
|
||||||
select DM_USB
|
select DM_USB
|
||||||
|
help
|
||||||
|
Enable access to USB (Universal Serial Bus) host devices so that
|
||||||
|
SPL can load U-Boot from a connected USB peripheral, such as a USB
|
||||||
|
flash stick. While USB takes a little longer to start up than most
|
||||||
|
buses, it is very flexible since many different types of storage
|
||||||
|
device can be attached.
|
||||||
|
|
||||||
|
config SPL_USB_HOST
|
||||||
|
bool "Support USB host drivers"
|
||||||
|
depends on SPL
|
||||||
|
help
|
||||||
|
For detailed help see USB_HOST Kconfig symbol. This option enables
|
||||||
|
the drivers in drivers/usb/host as part of an SPL build.
|
||||||
|
|
||||||
config USB_XHCI_HCD
|
config USB_XHCI_HCD
|
||||||
bool "xHCI HCD (USB 3.0) support"
|
bool "xHCI HCD (USB 3.0) support"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user