|  | # SPDX-License-Identifier: GPL-2.0 | 
|  | # | 
|  | # USB device configuration | 
|  | # | 
|  |  | 
|  | config USB_OHCI_BIG_ENDIAN_DESC | 
|  | bool | 
|  |  | 
|  | config USB_OHCI_BIG_ENDIAN_MMIO | 
|  | bool | 
|  |  | 
|  | config USB_OHCI_LITTLE_ENDIAN | 
|  | bool | 
|  | default n if PPC_MPC52xx | 
|  | default y | 
|  |  | 
|  | config USB_EHCI_BIG_ENDIAN_MMIO | 
|  | bool | 
|  |  | 
|  | config USB_EHCI_BIG_ENDIAN_DESC | 
|  | bool | 
|  |  | 
|  | config USB_UHCI_BIG_ENDIAN_MMIO | 
|  | bool | 
|  |  | 
|  | config USB_UHCI_BIG_ENDIAN_DESC | 
|  | bool | 
|  |  | 
|  | menuconfig USB_SUPPORT | 
|  | bool "USB support" | 
|  | depends on HAS_IOMEM | 
|  | default y | 
|  | help | 
|  | This option adds core support for Universal Serial Bus (USB). | 
|  | You will also need drivers from the following menu to make use of it. | 
|  |  | 
|  | if USB_SUPPORT | 
|  |  | 
|  | source "drivers/usb/common/Kconfig" | 
|  |  | 
|  | config USB_ARCH_HAS_HCD | 
|  | def_bool y | 
|  |  | 
|  | config USB | 
|  | tristate "Support for Host-side USB" | 
|  | depends on USB_ARCH_HAS_HCD | 
|  | select GENERIC_ALLOCATOR | 
|  | select USB_COMMON | 
|  | select NLS  # for UTF-8 strings | 
|  | help | 
|  | 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 | 
|  | <file:Documentation/usb/usb-help.rst>. | 
|  |  | 
|  | To compile this driver as a module, choose M here: the | 
|  | module will be called usbcore. | 
|  |  | 
|  | config USB_PCI | 
|  | bool "PCI based USB host interface" | 
|  | depends on PCI | 
|  | default y | 
|  | help | 
|  | 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. | 
|  |  | 
|  | If you have such a device you may say N here and PCI related code | 
|  | will not be built in the USB driver. | 
|  |  | 
|  | 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. | 
|  |  | 
|  | if USB | 
|  |  | 
|  | source "drivers/usb/core/Kconfig" | 
|  |  | 
|  | source "drivers/usb/mon/Kconfig" | 
|  |  | 
|  | source "drivers/usb/host/Kconfig" | 
|  |  | 
|  | source "drivers/usb/renesas_usbhs/Kconfig" | 
|  |  | 
|  | source "drivers/usb/class/Kconfig" | 
|  |  | 
|  | source "drivers/usb/storage/Kconfig" | 
|  |  | 
|  | source "drivers/usb/image/Kconfig" | 
|  |  | 
|  | source "drivers/usb/usbip/Kconfig" | 
|  |  | 
|  | endif | 
|  |  | 
|  | comment "USB dual-mode controller drivers" | 
|  |  | 
|  | source "drivers/usb/cdns3/Kconfig" | 
|  |  | 
|  | source "drivers/usb/fotg210/Kconfig" | 
|  |  | 
|  | source "drivers/usb/mtu3/Kconfig" | 
|  |  | 
|  | source "drivers/usb/musb/Kconfig" | 
|  |  | 
|  | source "drivers/usb/dwc3/Kconfig" | 
|  |  | 
|  | source "drivers/usb/dwc2/Kconfig" | 
|  |  | 
|  | source "drivers/usb/chipidea/Kconfig" | 
|  |  | 
|  | source "drivers/usb/isp1760/Kconfig" | 
|  |  | 
|  | comment "USB port drivers" | 
|  |  | 
|  | if USB | 
|  |  | 
|  | source "drivers/usb/serial/Kconfig" | 
|  |  | 
|  | source "drivers/usb/misc/Kconfig" | 
|  |  | 
|  | source "drivers/usb/atm/Kconfig" | 
|  |  | 
|  | endif # USB | 
|  |  | 
|  | source "drivers/usb/phy/Kconfig" | 
|  |  | 
|  | source "drivers/usb/gadget/Kconfig" | 
|  |  | 
|  | source "drivers/usb/typec/Kconfig" | 
|  |  | 
|  | source "drivers/usb/roles/Kconfig" | 
|  |  | 
|  | endif # USB_SUPPORT |