2019-01-17 08:23:50 +00:00
|
|
|
# SPDX-License-Identifier: GPL-2.0
|
2005-04-16 22:20:36 +00:00
|
|
|
#
|
|
|
|
# USB device configuration
|
|
|
|
#
|
|
|
|
|
2013-08-10 01:17:48 +00:00
|
|
|
config USB_OHCI_BIG_ENDIAN_DESC
|
|
|
|
bool
|
|
|
|
|
|
|
|
config USB_OHCI_BIG_ENDIAN_MMIO
|
|
|
|
bool
|
|
|
|
|
|
|
|
config USB_OHCI_LITTLE_ENDIAN
|
|
|
|
bool
|
2021-08-18 07:11:37 +00:00
|
|
|
default n if PPC_MPC52xx
|
2013-08-10 01:17:48 +00:00
|
|
|
default y
|
|
|
|
|
|
|
|
config USB_EHCI_BIG_ENDIAN_MMIO
|
|
|
|
bool
|
|
|
|
|
|
|
|
config USB_EHCI_BIG_ENDIAN_DESC
|
|
|
|
bool
|
|
|
|
|
2018-01-31 22:24:45 +00:00
|
|
|
config USB_UHCI_BIG_ENDIAN_MMIO
|
|
|
|
bool
|
|
|
|
|
|
|
|
config USB_UHCI_BIG_ENDIAN_DESC
|
|
|
|
bool
|
|
|
|
|
2012-03-22 21:01:07 +00:00
|
|
|
menuconfig USB_SUPPORT
|
|
|
|
bool "USB support"
|
|
|
|
depends on HAS_IOMEM
|
|
|
|
default y
|
2020-06-13 16:50:22 +00:00
|
|
|
help
|
2012-03-22 21:01:07 +00:00
|
|
|
This option adds core support for Universal Serial Bus (USB).
|
|
|
|
You will also need drivers from the following menu to make use of it.
|
|
|
|
|
2012-03-13 22:58:05 +00:00
|
|
|
if USB_SUPPORT
|
|
|
|
|
2019-08-29 09:22:36 +00:00
|
|
|
source "drivers/usb/common/Kconfig"
|
2012-03-13 22:58:05 +00:00
|
|
|
|
|
|
|
config USB_ARCH_HAS_HCD
|
2013-06-04 17:42:22 +00:00
|
|
|
def_bool y
|
2012-03-13 22:58:05 +00:00
|
|
|
|
2005-04-16 22:20:36 +00:00
|
|
|
config USB
|
|
|
|
tristate "Support for Host-side USB"
|
|
|
|
depends on USB_ARCH_HAS_HCD
|
2019-05-29 10:28:40 +00:00
|
|
|
select GENERIC_ALLOCATOR
|
2016-03-23 16:45:08 +00:00
|
|
|
select USB_COMMON
|
2009-04-24 08:12:18 +00:00
|
|
|
select NLS # for UTF-8 strings
|
2020-06-13 16:50:22 +00:00
|
|
|
help
|
2005-04-16 22:20:36 +00:00
|
|
|
Universal Serial Bus (USB) is a specification for a serial bus
|
|
|
|
subsystem which offers higher speeds and more features than the
|
|
|
|
traditional PC serial port. The bus supplies power to peripherals
|
|
|
|
and allows for hot swapping. Up to 127 USB peripherals can be
|
|
|
|
connected to a single USB host in a tree structure.
|
|
|
|
|
|
|
|
The USB host is the root of the tree, the peripherals are the
|
|
|
|
leaves and the inner nodes are special USB devices called hubs.
|
|
|
|
Most PCs now have USB host ports, used to connect peripherals
|
|
|
|
such as scanners, keyboards, mice, modems, cameras, disks,
|
|
|
|
flash memory, network links, and printers to the PC.
|
|
|
|
|
|
|
|
Say Y here if your computer has a host-side USB port and you want
|
|
|
|
to use USB devices. You then need to say Y to at least one of the
|
|
|
|
Host Controller Driver (HCD) options below. Choose a USB 1.1
|
|
|
|
controller, such as "UHCI HCD support" or "OHCI HCD support",
|
|
|
|
and "EHCI HCD (USB 2.0) support" except for older systems that
|
|
|
|
do not have USB 2.0 support. It doesn't normally hurt to select
|
|
|
|
them all if you are not certain.
|
|
|
|
|
|
|
|
If your system has a device-side USB port, used in the peripheral
|
|
|
|
side of the USB protocol, see the "USB Gadget" framework instead.
|
|
|
|
|
|
|
|
After choosing your HCD, then select drivers for the USB peripherals
|
|
|
|
you'll be using. You may want to check out the information provided
|
|
|
|
in <file:Documentation/usb/> and especially the links given in
|
2019-06-18 21:05:38 +00:00
|
|
|
<file:Documentation/usb/usb-help.rst>.
|
2005-04-16 22:20:36 +00:00
|
|
|
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
|
|
module will be called usbcore.
|
|
|
|
|
2017-02-25 11:20:55 +00:00
|
|
|
config USB_PCI
|
|
|
|
bool "PCI based USB host interface"
|
|
|
|
depends on PCI
|
|
|
|
default y
|
2020-06-13 16:50:22 +00:00
|
|
|
help
|
2017-10-17 16:54:52 +00:00
|
|
|
Many embedded system SOCs (e.g. freescale T2080) have both
|
|
|
|
PCI and USB modules with the USB module directly controlled by
|
|
|
|
registers and having no relationship to the PCI module.
|
2017-02-25 11:20:55 +00:00
|
|
|
|
2017-10-17 16:54:52 +00:00
|
|
|
If you have such a device you may say N here and PCI related code
|
|
|
|
will not be built in the USB driver.
|
2017-02-25 11:20:55 +00:00
|
|
|
|
2023-09-11 12:56:52 +00:00
|
|
|
config USB_PCI_AMD
|
|
|
|
bool "AMD PCI USB host support"
|
|
|
|
depends on USB_PCI && HAS_IOPORT
|
|
|
|
default X86 || MACH_LOONGSON64 || PPC_PASEMI
|
|
|
|
help
|
|
|
|
Enable workarounds for USB implementation quirks in SB600/SB700/SB800
|
|
|
|
and later south bridge implementations. These are common on x86 PCs
|
|
|
|
with AMD CPUs but rarely used elsewhere, with the exception of a few
|
|
|
|
powerpc and mips desktop machines.
|
|
|
|
|
2013-04-09 12:29:25 +00:00
|
|
|
if USB
|
2005-04-16 22:20:36 +00:00
|
|
|
|
2013-04-09 12:29:25 +00:00
|
|
|
source "drivers/usb/core/Kconfig"
|
usb: Introduce DesignWare USB3 DRD Driver
The DesignWare USB3 is a highly
configurable IP Core which can be
instantiated as Dual-Role Device (DRD),
Peripheral Only and Host Only (XHCI)
configurations.
Several other parameters can be configured
like amount of FIFO space, amount of TX and
RX endpoints, amount of Host Interrupters,
etc.
The current driver has been validated with
a virtual model of version 1.73a of that core
and with an FPGA burned with version 1.83a
of the DRD core. We have support for PCIe
bus, which is used on FPGA prototyping, and
for the OMAP5, more adaptation (or glue)
layers can be easily added and the driver
is half prepared to handle any possible
configuration the HW engineer has chosen
considering we have the information on
one of the GHWPARAMS registers to do
runtime checking of certain features.
More runtime checks can, and should, be added
in order to make this driver even more flexible
with regards to number of endpoints, FIFO sizes,
transfer types, etc.
While this supports only the device side, for
now, we will add support for Host side (xHCI -
see the updated series Sebastian has sent [1])
and OTG after we have it all stabilized.
[1] http://marc.info/?l=linux-usb&m=131341992020339&w=2
Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-08-19 15:10:58 +00:00
|
|
|
|
2008-07-21 19:44:50 +00:00
|
|
|
source "drivers/usb/mon/Kconfig"
|
|
|
|
|
2005-04-16 22:20:36 +00:00
|
|
|
source "drivers/usb/host/Kconfig"
|
|
|
|
|
2011-04-04 04:44:59 +00:00
|
|
|
source "drivers/usb/renesas_usbhs/Kconfig"
|
|
|
|
|
2005-04-16 22:20:36 +00:00
|
|
|
source "drivers/usb/class/Kconfig"
|
|
|
|
|
|
|
|
source "drivers/usb/storage/Kconfig"
|
|
|
|
|
|
|
|
source "drivers/usb/image/Kconfig"
|
|
|
|
|
2014-08-20 04:31:00 +00:00
|
|
|
source "drivers/usb/usbip/Kconfig"
|
|
|
|
|
2013-04-09 12:29:25 +00:00
|
|
|
endif
|
|
|
|
|
2022-10-23 14:47:06 +00:00
|
|
|
comment "USB dual-mode controller drivers"
|
|
|
|
|
2019-08-26 11:19:30 +00:00
|
|
|
source "drivers/usb/cdns3/Kconfig"
|
|
|
|
|
2022-10-23 14:47:06 +00:00
|
|
|
source "drivers/usb/fotg210/Kconfig"
|
|
|
|
|
2016-10-19 02:28:23 +00:00
|
|
|
source "drivers/usb/mtu3/Kconfig"
|
|
|
|
|
2013-12-22 03:08:33 +00:00
|
|
|
source "drivers/usb/musb/Kconfig"
|
|
|
|
|
2013-04-09 12:29:25 +00:00
|
|
|
source "drivers/usb/dwc3/Kconfig"
|
|
|
|
|
2014-01-13 21:50:09 +00:00
|
|
|
source "drivers/usb/dwc2/Kconfig"
|
|
|
|
|
2013-04-09 12:29:25 +00:00
|
|
|
source "drivers/usb/chipidea/Kconfig"
|
|
|
|
|
2015-01-20 22:56:02 +00:00
|
|
|
source "drivers/usb/isp1760/Kconfig"
|
|
|
|
|
2005-04-16 22:20:36 +00:00
|
|
|
comment "USB port drivers"
|
2013-04-09 12:29:25 +00:00
|
|
|
|
|
|
|
if USB
|
2005-04-16 22:20:36 +00:00
|
|
|
|
|
|
|
source "drivers/usb/serial/Kconfig"
|
|
|
|
|
|
|
|
source "drivers/usb/misc/Kconfig"
|
|
|
|
|
|
|
|
source "drivers/usb/atm/Kconfig"
|
|
|
|
|
2013-04-09 12:29:25 +00:00
|
|
|
endif # USB
|
|
|
|
|
|
|
|
source "drivers/usb/phy/Kconfig"
|
|
|
|
|
2005-04-16 22:20:36 +00:00
|
|
|
source "drivers/usb/gadget/Kconfig"
|
|
|
|
|
2017-03-21 11:56:47 +00:00
|
|
|
source "drivers/usb/typec/Kconfig"
|
|
|
|
|
2018-03-20 12:57:10 +00:00
|
|
|
source "drivers/usb/roles/Kconfig"
|
|
|
|
|
2007-05-11 06:04:13 +00:00
|
|
|
endif # USB_SUPPORT
|