162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 262306a36Sopenharmony_ci# 362306a36Sopenharmony_ci# USB device configuration 462306a36Sopenharmony_ci# 562306a36Sopenharmony_ci 662306a36Sopenharmony_ciconfig USB_OHCI_BIG_ENDIAN_DESC 762306a36Sopenharmony_ci bool 862306a36Sopenharmony_ci 962306a36Sopenharmony_ciconfig USB_OHCI_BIG_ENDIAN_MMIO 1062306a36Sopenharmony_ci bool 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ciconfig USB_OHCI_LITTLE_ENDIAN 1362306a36Sopenharmony_ci bool 1462306a36Sopenharmony_ci default n if PPC_MPC52xx 1562306a36Sopenharmony_ci default y 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ciconfig USB_EHCI_BIG_ENDIAN_MMIO 1862306a36Sopenharmony_ci bool 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_ciconfig USB_EHCI_BIG_ENDIAN_DESC 2162306a36Sopenharmony_ci bool 2262306a36Sopenharmony_ci 2362306a36Sopenharmony_ciconfig USB_UHCI_BIG_ENDIAN_MMIO 2462306a36Sopenharmony_ci bool 2562306a36Sopenharmony_ci 2662306a36Sopenharmony_ciconfig USB_UHCI_BIG_ENDIAN_DESC 2762306a36Sopenharmony_ci bool 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_cimenuconfig USB_SUPPORT 3062306a36Sopenharmony_ci bool "USB support" 3162306a36Sopenharmony_ci depends on HAS_IOMEM 3262306a36Sopenharmony_ci default y 3362306a36Sopenharmony_ci help 3462306a36Sopenharmony_ci This option adds core support for Universal Serial Bus (USB). 3562306a36Sopenharmony_ci You will also need drivers from the following menu to make use of it. 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ciif USB_SUPPORT 3862306a36Sopenharmony_ci 3962306a36Sopenharmony_cisource "drivers/usb/common/Kconfig" 4062306a36Sopenharmony_ci 4162306a36Sopenharmony_ciconfig USB_ARCH_HAS_HCD 4262306a36Sopenharmony_ci def_bool y 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ciconfig USB 4562306a36Sopenharmony_ci tristate "Support for Host-side USB" 4662306a36Sopenharmony_ci depends on USB_ARCH_HAS_HCD 4762306a36Sopenharmony_ci select GENERIC_ALLOCATOR 4862306a36Sopenharmony_ci select USB_COMMON 4962306a36Sopenharmony_ci select NLS # for UTF-8 strings 5062306a36Sopenharmony_ci help 5162306a36Sopenharmony_ci Universal Serial Bus (USB) is a specification for a serial bus 5262306a36Sopenharmony_ci subsystem which offers higher speeds and more features than the 5362306a36Sopenharmony_ci traditional PC serial port. The bus supplies power to peripherals 5462306a36Sopenharmony_ci and allows for hot swapping. Up to 127 USB peripherals can be 5562306a36Sopenharmony_ci connected to a single USB host in a tree structure. 5662306a36Sopenharmony_ci 5762306a36Sopenharmony_ci The USB host is the root of the tree, the peripherals are the 5862306a36Sopenharmony_ci leaves and the inner nodes are special USB devices called hubs. 5962306a36Sopenharmony_ci Most PCs now have USB host ports, used to connect peripherals 6062306a36Sopenharmony_ci such as scanners, keyboards, mice, modems, cameras, disks, 6162306a36Sopenharmony_ci flash memory, network links, and printers to the PC. 6262306a36Sopenharmony_ci 6362306a36Sopenharmony_ci Say Y here if your computer has a host-side USB port and you want 6462306a36Sopenharmony_ci to use USB devices. You then need to say Y to at least one of the 6562306a36Sopenharmony_ci Host Controller Driver (HCD) options below. Choose a USB 1.1 6662306a36Sopenharmony_ci controller, such as "UHCI HCD support" or "OHCI HCD support", 6762306a36Sopenharmony_ci and "EHCI HCD (USB 2.0) support" except for older systems that 6862306a36Sopenharmony_ci do not have USB 2.0 support. It doesn't normally hurt to select 6962306a36Sopenharmony_ci them all if you are not certain. 7062306a36Sopenharmony_ci 7162306a36Sopenharmony_ci If your system has a device-side USB port, used in the peripheral 7262306a36Sopenharmony_ci side of the USB protocol, see the "USB Gadget" framework instead. 7362306a36Sopenharmony_ci 7462306a36Sopenharmony_ci After choosing your HCD, then select drivers for the USB peripherals 7562306a36Sopenharmony_ci you'll be using. You may want to check out the information provided 7662306a36Sopenharmony_ci in <file:Documentation/usb/> and especially the links given in 7762306a36Sopenharmony_ci <file:Documentation/usb/usb-help.rst>. 7862306a36Sopenharmony_ci 7962306a36Sopenharmony_ci To compile this driver as a module, choose M here: the 8062306a36Sopenharmony_ci module will be called usbcore. 8162306a36Sopenharmony_ci 8262306a36Sopenharmony_ciconfig USB_PCI 8362306a36Sopenharmony_ci bool "PCI based USB host interface" 8462306a36Sopenharmony_ci depends on PCI 8562306a36Sopenharmony_ci default y 8662306a36Sopenharmony_ci help 8762306a36Sopenharmony_ci Many embedded system SOCs (e.g. freescale T2080) have both 8862306a36Sopenharmony_ci PCI and USB modules with the USB module directly controlled by 8962306a36Sopenharmony_ci registers and having no relationship to the PCI module. 9062306a36Sopenharmony_ci 9162306a36Sopenharmony_ci If you have such a device you may say N here and PCI related code 9262306a36Sopenharmony_ci will not be built in the USB driver. 9362306a36Sopenharmony_ci 9462306a36Sopenharmony_ciif USB 9562306a36Sopenharmony_ci 9662306a36Sopenharmony_cisource "drivers/usb/core/Kconfig" 9762306a36Sopenharmony_ci 9862306a36Sopenharmony_cisource "drivers/usb/mon/Kconfig" 9962306a36Sopenharmony_ci 10062306a36Sopenharmony_cisource "drivers/usb/host/Kconfig" 10162306a36Sopenharmony_ci 10262306a36Sopenharmony_cisource "drivers/usb/renesas_usbhs/Kconfig" 10362306a36Sopenharmony_ci 10462306a36Sopenharmony_cisource "drivers/usb/class/Kconfig" 10562306a36Sopenharmony_ci 10662306a36Sopenharmony_cisource "drivers/usb/storage/Kconfig" 10762306a36Sopenharmony_ci 10862306a36Sopenharmony_cisource "drivers/usb/image/Kconfig" 10962306a36Sopenharmony_ci 11062306a36Sopenharmony_cisource "drivers/usb/usbip/Kconfig" 11162306a36Sopenharmony_ci 11262306a36Sopenharmony_ciendif 11362306a36Sopenharmony_ci 11462306a36Sopenharmony_cicomment "USB dual-mode controller drivers" 11562306a36Sopenharmony_ci 11662306a36Sopenharmony_cisource "drivers/usb/cdns3/Kconfig" 11762306a36Sopenharmony_ci 11862306a36Sopenharmony_cisource "drivers/usb/fotg210/Kconfig" 11962306a36Sopenharmony_ci 12062306a36Sopenharmony_cisource "drivers/usb/mtu3/Kconfig" 12162306a36Sopenharmony_ci 12262306a36Sopenharmony_cisource "drivers/usb/musb/Kconfig" 12362306a36Sopenharmony_ci 12462306a36Sopenharmony_cisource "drivers/usb/dwc3/Kconfig" 12562306a36Sopenharmony_ci 12662306a36Sopenharmony_cisource "drivers/usb/dwc2/Kconfig" 12762306a36Sopenharmony_ci 12862306a36Sopenharmony_cisource "drivers/usb/chipidea/Kconfig" 12962306a36Sopenharmony_ci 13062306a36Sopenharmony_cisource "drivers/usb/isp1760/Kconfig" 13162306a36Sopenharmony_ci 13262306a36Sopenharmony_cicomment "USB port drivers" 13362306a36Sopenharmony_ci 13462306a36Sopenharmony_ciif USB 13562306a36Sopenharmony_ci 13662306a36Sopenharmony_cisource "drivers/usb/serial/Kconfig" 13762306a36Sopenharmony_ci 13862306a36Sopenharmony_cisource "drivers/usb/misc/Kconfig" 13962306a36Sopenharmony_ci 14062306a36Sopenharmony_cisource "drivers/usb/atm/Kconfig" 14162306a36Sopenharmony_ci 14262306a36Sopenharmony_ciendif # USB 14362306a36Sopenharmony_ci 14462306a36Sopenharmony_cisource "drivers/usb/phy/Kconfig" 14562306a36Sopenharmony_ci 14662306a36Sopenharmony_cisource "drivers/usb/gadget/Kconfig" 14762306a36Sopenharmony_ci 14862306a36Sopenharmony_cisource "drivers/usb/typec/Kconfig" 14962306a36Sopenharmony_ci 15062306a36Sopenharmony_cisource "drivers/usb/roles/Kconfig" 15162306a36Sopenharmony_ci 15262306a36Sopenharmony_ciendif # USB_SUPPORT 153