2019-01-17 01:23:50 -07:00
|
|
|
# SPDX-License-Identifier: GPL-2.0
|
2005-04-16 15:20:36 -07:00
|
|
|
#
|
|
|
|
# USB Core configuration
|
|
|
|
#
|
2007-11-26 23:11:55 -07:00
|
|
|
config USB_ANNOUNCE_NEW_DEVICES
|
|
|
|
bool "USB announce new devices"
|
|
|
|
help
|
|
|
|
Say Y here if you want the USB core to always announce the
|
|
|
|
idVendor, idProduct, Manufacturer, Product, and SerialNumber
|
|
|
|
strings for every new USB device to the syslog. This option is
|
|
|
|
usually used by distro vendors to help with debugging and to
|
|
|
|
let users know what specific device was added to the machine
|
|
|
|
in what location.
|
|
|
|
|
|
|
|
If you do not want this kind of information sent to the system
|
|
|
|
log, or have any doubts about this, say N here.
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
comment "Miscellaneous USB options"
|
|
|
|
|
2013-03-13 15:57:31 -07:00
|
|
|
config USB_DEFAULT_PERSIST
|
|
|
|
bool "Enable USB persist by default"
|
|
|
|
default y
|
|
|
|
help
|
2013-09-29 04:54:15 -07:00
|
|
|
Say N here if you don't want USB power session persistence
|
2013-03-13 15:57:31 -07:00
|
|
|
enabled by default. If you say N it will make suspended USB
|
|
|
|
devices that lose power get reenumerated as if they had been
|
|
|
|
unplugged, causing any mounted filesystems to be lost. The
|
|
|
|
persist feature can still be enabled for individual devices
|
|
|
|
through the power/persist sysfs node. See
|
2017-04-05 06:23:15 -07:00
|
|
|
Documentation/driver-api/usb/persist.rst for more info.
|
2013-03-13 15:57:31 -07:00
|
|
|
|
|
|
|
If you have any questions about this, say Y here, only say N
|
|
|
|
if you know exactly what you are doing.
|
|
|
|
|
2020-09-28 08:22:17 -07:00
|
|
|
config USB_FEW_INIT_RETRIES
|
|
|
|
bool "Limit USB device initialization to only a few retries"
|
|
|
|
help
|
|
|
|
When a new USB device is detected, the kernel tries very hard
|
|
|
|
to initialize and enumerate it, with lots of nested retry loops.
|
|
|
|
This almost always works, but when it fails it can take a long time.
|
|
|
|
This option tells the kernel to make only a few retry attempts,
|
|
|
|
so that the total time required for a failed initialization is
|
|
|
|
no more than 30 seconds (as required by the USB OTG spec).
|
|
|
|
|
|
|
|
Say N here unless you require new-device enumeration failure to
|
|
|
|
occur within 30 seconds (as might be needed in an embedded
|
|
|
|
application).
|
|
|
|
|
2005-04-16 15:20:36 -07:00
|
|
|
config USB_DYNAMIC_MINORS
|
2008-03-08 01:12:44 -07:00
|
|
|
bool "Dynamic USB minor allocation"
|
2005-04-16 15:20:36 -07:00
|
|
|
help
|
|
|
|
If you say Y here, the USB subsystem will use dynamic minor
|
|
|
|
allocation for any device that uses the USB major number.
|
|
|
|
This means that you can have more than 16 of a single type
|
|
|
|
of device (like USB printers).
|
|
|
|
|
|
|
|
If you are unsure about this, say N here.
|
|
|
|
|
|
|
|
config USB_OTG
|
2010-12-16 02:02:24 -07:00
|
|
|
bool "OTG support"
|
2014-12-12 16:44:04 -07:00
|
|
|
depends on PM
|
2010-12-16 02:02:24 -07:00
|
|
|
help
|
|
|
|
The most notable feature of USB OTG is support for a
|
|
|
|
"Dual-Role" device, which can act as either a device
|
|
|
|
or a host. The initial role is decided by the type of
|
|
|
|
plug inserted and can be changed later when two dual
|
|
|
|
role devices talk to each other.
|
|
|
|
|
|
|
|
Select this only if your board has Mini-AB/Micro-AB
|
|
|
|
connector.
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2020-06-18 02:43:00 -07:00
|
|
|
config USB_OTG_PRODUCTLIST
|
2014-08-18 18:51:54 -07:00
|
|
|
bool "Rely on OTG and EH Targeted Peripherals List"
|
|
|
|
depends on USB
|
2005-04-16 15:20:36 -07:00
|
|
|
help
|
2020-06-18 02:43:00 -07:00
|
|
|
If you say Y here, the "otg_productlist.h" file will be used as a
|
|
|
|
product list, so USB peripherals not listed there will be
|
2005-04-16 15:20:36 -07:00
|
|
|
rejected during enumeration. This behavior is required by the
|
2014-08-18 18:51:54 -07:00
|
|
|
USB OTG and EH specification for all devices not on your product's
|
2008-03-06 00:17:38 -07:00
|
|
|
"Targeted Peripherals List". "Embedded Hosts" are likewise
|
|
|
|
allowed to support only a limited number of peripherals.
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2020-06-18 02:42:54 -07:00
|
|
|
config USB_OTG_DISABLE_EXTERNAL_HUB
|
2006-04-02 11:18:09 -07:00
|
|
|
bool "Disable external hubs"
|
2011-01-20 15:44:16 -07:00
|
|
|
depends on USB_OTG || EXPERT
|
2006-04-02 11:18:09 -07:00
|
|
|
help
|
|
|
|
If you say Y here, then Linux will refuse to enumerate
|
|
|
|
external hubs. OTG hosts are allowed to reduce hardware
|
2008-03-06 00:17:38 -07:00
|
|
|
and software costs by not supporting external hubs. So
|
2008-09-08 01:14:47 -07:00
|
|
|
are "Embedded Hosts" that don't offer OTG support.
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2014-04-28 17:35:59 -07:00
|
|
|
config USB_OTG_FSM
|
|
|
|
tristate "USB 2.0 OTG FSM implementation"
|
2015-11-18 20:47:47 -07:00
|
|
|
depends on USB && USB_OTG
|
2014-04-28 17:35:59 -07:00
|
|
|
select USB_PHY
|
|
|
|
help
|
|
|
|
Implements OTG Finite State Machine as specified in On-The-Go
|
|
|
|
and Embedded Host Supplement to the USB Revision 2.0 Specification.
|
2016-09-16 07:13:48 -07:00
|
|
|
|
|
|
|
config USB_LEDS_TRIGGER_USBPORT
|
|
|
|
tristate "USB port LED trigger"
|
|
|
|
depends on USB && LEDS_TRIGGERS
|
|
|
|
help
|
|
|
|
This driver allows LEDs to be controlled by USB events. Enabling this
|
|
|
|
trigger allows specifying list of USB ports that should turn on LED
|
|
|
|
when some USB device gets connected.
|
2019-03-01 09:43:20 -07:00
|
|
|
|
|
|
|
config USB_AUTOSUSPEND_DELAY
|
|
|
|
int "Default autosuspend delay"
|
|
|
|
depends on USB
|
|
|
|
default 2
|
|
|
|
help
|
|
|
|
The default autosuspend delay in seconds. Can be overridden
|
|
|
|
with the usbcore.autosuspend command line or module parameter.
|
|
|
|
|
|
|
|
The default value Linux has always had is 2 seconds. Change
|
|
|
|
this value if you want a different delay and cannot modify
|
|
|
|
the command line or module parameter.
|
2024-01-05 04:49:56 -07:00
|
|
|
|
|
|
|
config USB_DEFAULT_AUTHORIZATION_MODE
|
|
|
|
int "Default authorization mode for USB devices"
|
|
|
|
range 0 2
|
|
|
|
default 1
|
|
|
|
depends on USB
|
|
|
|
help
|
|
|
|
Select the default USB device authorization mode. Can be overridden
|
|
|
|
with usbcore.authorized_default command line or module parameter.
|
|
|
|
|
2024-02-13 05:45:18 -07:00
|
|
|
This option allows you to choose whether USB devices that are
|
|
|
|
connected to the system can be used by default, or if they are
|
|
|
|
locked down.
|
2024-01-05 04:49:56 -07:00
|
|
|
|
2024-02-13 05:45:18 -07:00
|
|
|
With value 0 all connected USB devices with the exception of root
|
|
|
|
hub require user space authorization before they can be used.
|
|
|
|
|
|
|
|
With value 1 (default) no user space authorization is required to
|
|
|
|
use connected USB devices.
|
|
|
|
|
|
|
|
With value 2 all connected USB devices with exception of internal
|
|
|
|
USB devices require user space authorization before they can be
|
|
|
|
used. Note that in this mode the differentiation between internal
|
|
|
|
and external USB devices relies on ACPI, and on systems without
|
|
|
|
ACPI selecting value 2 is analogous to selecting value 0.
|
|
|
|
|
|
|
|
If unsure, keep the default value.
|