mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-28 15:41:40 +00:00
fcd9220d66
At the moment we use "select" in each Allwinner SoC's Kconfig section to include the USB PHY driver in the build. This means it cannot be disabled via Kconfig, although USB is not really a strictly required core functionality, and a particular board might not even include USB ports. Rework the Kconfig part by removing the "select" lines for each SoC's section, and instead letting it default to "y" in the PHY driver section itself. We use "depends on !" to exclude the few SoCs we don't support (yet). The Allwinner V3s does not enable USB (PHY) support at the moment, even though it should work: let the PHY default to "n" to keep the current behaviour. Also the MUSB USB driver directly calls some functions from the PHY driver, so let the former depend on the PHY driver. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jernej Skrabec <jernej.skrabec@gmail.com> Tested-by: Sam Edwards <CFSworks@gmail.com>
113 lines
3.2 KiB
Text
113 lines
3.2 KiB
Text
#
|
|
# MUSB Controller Driver
|
|
#
|
|
comment "MUSB Controller Driver"
|
|
|
|
config USB_MUSB_HOST
|
|
bool "MUSB host mode support"
|
|
depends on DM && OF_CONTROL
|
|
select SPL_SPRINTF if SPL
|
|
select TPL_SPRINTF if TPL
|
|
select USB_HOST
|
|
help
|
|
Enables the MUSB USB dual-role controller in host mode.
|
|
|
|
config USB_MUSB_GADGET
|
|
bool "MUSB gadget mode support"
|
|
depends on USB_GADGET
|
|
select USB_GADGET_DUALSPEED
|
|
select SPL_SPRINTF if SPL
|
|
select TPL_SPRINTF if TPL
|
|
help
|
|
Enables the MUSB USB dual-role controller in gadget mode.
|
|
|
|
if USB_MUSB_HOST || USB_MUSB_GADGET
|
|
config USB_MUSB_DA8XX
|
|
bool "Enable DA8xx MUSB Controller"
|
|
depends on ARCH_DAVINCI
|
|
help
|
|
Say y here to enable support for the dual role high
|
|
speed USB controller based on the Mentor Graphics
|
|
silicon IP.
|
|
|
|
config USB_MUSB_TI
|
|
bool "Enable TI OTG USB controller"
|
|
depends on AM33XX
|
|
select USB_MUSB_DSPS
|
|
help
|
|
Say y here to enable support for the dual role high
|
|
speed USB controller based on the Mentor Graphics
|
|
silicon IP.
|
|
|
|
config USB_MUSB_OMAP2PLUS
|
|
tristate "OMAP2430 and onwards"
|
|
depends on ARCH_OMAP2PLUS
|
|
|
|
config USB_MUSB_AM35X
|
|
bool "AM35x"
|
|
|
|
config USB_MUSB_DSPS
|
|
bool "TI DSPS platforms"
|
|
|
|
config USB_MUSB_MT85XX
|
|
bool "Enable Mediatek MT85XX DRC USB controller"
|
|
depends on ARCH_MEDIATEK
|
|
help
|
|
Say y to enable Mediatek MT85XX USB DRC controller support
|
|
if it is available on your Mediatek MUSB IP based platform.
|
|
DMA controllers are ignored. This driver follow musb-new
|
|
driver and usb gadget framework.
|
|
|
|
config USB_MUSB_PIC32
|
|
bool "Enable Microchip PIC32 DRC USB controller"
|
|
depends on MACH_PIC32
|
|
help
|
|
Say y to enable PIC32 USB DRC controller support
|
|
if it is available on your Microchip PIC32 platform.
|
|
|
|
config USB_MUSB_SUNXI
|
|
bool "Enable sunxi OTG / DRC USB controller"
|
|
depends on ARCH_SUNXI
|
|
depends on PHY_SUN4I_USB
|
|
select USB_MUSB_PIO_ONLY
|
|
default y
|
|
---help---
|
|
Say y here to enable support for the sunxi OTG / DRC USB controller
|
|
used on almost all sunxi boards.
|
|
|
|
config USB_MUSB_UX500
|
|
bool "Enable ST-Ericsson Ux500 USB controller"
|
|
depends on DM_USB && DM_USB_GADGET && ARCH_U8500
|
|
default y
|
|
help
|
|
Say y to enable support for the MUSB OTG USB controller used in
|
|
ST-Ericsson Ux500. The driver supports either gadget or host mode
|
|
based on the selection of CONFIG_USB_MUSB_HOST.
|
|
|
|
config USB_MUSB_DISABLE_BULK_COMBINE_SPLIT
|
|
bool "Disable MUSB bulk split/combine"
|
|
default y
|
|
help
|
|
On TI AM335x devices, MUSB has bulk split/combine feature enabled
|
|
in the ConfigData register, but the current MUSB driver does not
|
|
support it yet. Select this option to disable the feature until the
|
|
driver adds the support.
|
|
|
|
endif
|
|
|
|
config USB_MUSB_PIO_ONLY
|
|
bool "Disable DMA (always use PIO)"
|
|
default y if USB_MUSB_AM35X || USB_MUSB_PIC32 || USB_MUSB_OMAP2PLUS || USB_MUSB_DSPS || USB_MUSB_SUNXI || USB_MUSB_MT85XX || USB_MUSB_UX500
|
|
help
|
|
All data is copied between memory and FIFO by the CPU.
|
|
DMA controllers are ignored.
|
|
|
|
config USB_MUSB_FIXED_CONFIGDATA
|
|
bool "Hardcode MUSB CONFIGDATA register"
|
|
depends on USB_MUSB_SUNXI
|
|
default n if MACH_SUN4I || MACH_SUN5I || MACH_SUN6I || MACH_SUN7I || MACH_SUN8I_A23
|
|
default y
|
|
help
|
|
Newer Allwinner SoCs do not implement the MUSB_CONFIGDATA register,
|
|
so it always reads 0. Select this option to override this and
|
|
return a hardcoded value instead.
|