xref: /linux/drivers/usb/core/Kconfig (revision 4f48203881ce947a0cbd8ae7b1a1a1b04aaa3766)
11da177e4SLinus Torvalds#
21da177e4SLinus Torvalds# USB Core configuration
31da177e4SLinus Torvalds#
41da177e4SLinus Torvaldsconfig USB_DEBUG
51da177e4SLinus Torvalds	bool "USB verbose debug messages"
61da177e4SLinus Torvalds	depends on USB
71da177e4SLinus Torvalds	help
81da177e4SLinus Torvalds	  Say Y here if you want the USB core & hub drivers to produce a bunch
91da177e4SLinus Torvalds	  of debug messages to the system log. Select this if you are having a
101da177e4SLinus Torvalds	  problem with USB support and want to see more of what is going on.
111da177e4SLinus Torvalds
12f2a383e4SGreg Kroah-Hartmanconfig USB_ANNOUNCE_NEW_DEVICES
13f2a383e4SGreg Kroah-Hartman	bool "USB announce new devices"
14f2a383e4SGreg Kroah-Hartman	depends on USB
15f2a383e4SGreg Kroah-Hartman	default N
16f2a383e4SGreg Kroah-Hartman	help
17f2a383e4SGreg Kroah-Hartman	  Say Y here if you want the USB core to always announce the
18f2a383e4SGreg Kroah-Hartman	  idVendor, idProduct, Manufacturer, Product, and SerialNumber
19f2a383e4SGreg Kroah-Hartman	  strings for every new USB device to the syslog.  This option is
20f2a383e4SGreg Kroah-Hartman	  usually used by distro vendors to help with debugging and to
21f2a383e4SGreg Kroah-Hartman	  let users know what specific device was added to the machine
22f2a383e4SGreg Kroah-Hartman	  in what location.
23f2a383e4SGreg Kroah-Hartman
24f2a383e4SGreg Kroah-Hartman	  If you do not want this kind of information sent to the system
25f2a383e4SGreg Kroah-Hartman	  log, or have any doubts about this, say N here.
26f2a383e4SGreg Kroah-Hartman
271da177e4SLinus Torvaldscomment "Miscellaneous USB options"
281da177e4SLinus Torvalds	depends on USB
291da177e4SLinus Torvalds
30*4f482038SJulius Wernerconfig USB_DEFAULT_PERSIST
31*4f482038SJulius Werner	bool "Enable USB persist by default"
32*4f482038SJulius Werner	depends on USB
33*4f482038SJulius Werner	default y
34*4f482038SJulius Werner	help
35*4f482038SJulius Werner	  Say N here if you don't want USB power session persistance
36*4f482038SJulius Werner	  enabled by default.  If you say N it will make suspended USB
37*4f482038SJulius Werner	  devices that lose power get reenumerated as if they had been
38*4f482038SJulius Werner	  unplugged, causing any mounted filesystems to be lost.  The
39*4f482038SJulius Werner	  persist feature can still be enabled for individual devices
40*4f482038SJulius Werner	  through the power/persist sysfs node. See
41*4f482038SJulius Werner	  Documentation/usb/persist.txt for more info.
42*4f482038SJulius Werner
43*4f482038SJulius Werner	  If you have any questions about this, say Y here, only say N
44*4f482038SJulius Werner	  if you know exactly what you are doing.
45*4f482038SJulius Werner
461da177e4SLinus Torvaldsconfig USB_DYNAMIC_MINORS
47b6719996SRobert P. J. Day	bool "Dynamic USB minor allocation"
48b6719996SRobert P. J. Day	depends on USB
491da177e4SLinus Torvalds	help
501da177e4SLinus Torvalds	  If you say Y here, the USB subsystem will use dynamic minor
511da177e4SLinus Torvalds	  allocation for any device that uses the USB major number.
521da177e4SLinus Torvalds	  This means that you can have more than 16 of a single type
531da177e4SLinus Torvalds	  of device (like USB printers).
541da177e4SLinus Torvalds
551da177e4SLinus Torvalds	  If you are unsure about this, say N here.
561da177e4SLinus Torvalds
571da177e4SLinus Torvaldsconfig USB_OTG
58f4ce9084SPavankumar Kondeti	bool "OTG support"
59eb83be98SGreg Kroah-Hartman	depends on USB
606d602610SAnand Gadiyar	depends on USB_SUSPEND
611da177e4SLinus Torvalds	default n
62f4ce9084SPavankumar Kondeti	help
63f4ce9084SPavankumar Kondeti	  The most notable feature of USB OTG is support for a
64f4ce9084SPavankumar Kondeti	  "Dual-Role" device, which can act as either a device
65f4ce9084SPavankumar Kondeti	  or a host. The initial role is decided by the type of
66f4ce9084SPavankumar Kondeti	  plug inserted and can be changed later when two dual
67f4ce9084SPavankumar Kondeti	  role devices talk to each other.
681da177e4SLinus Torvalds
69f4ce9084SPavankumar Kondeti	  Select this only if your board has Mini-AB/Micro-AB
70f4ce9084SPavankumar Kondeti	  connector.
711da177e4SLinus Torvalds
721da177e4SLinus Torvaldsconfig USB_OTG_WHITELIST
731da177e4SLinus Torvalds	bool "Rely on OTG Targeted Peripherals List"
746a108a14SDavid Rientjes	depends on USB_OTG || EXPERT
7522552b28SRobin Getz	default y if USB_OTG
761da177e4SLinus Torvalds	help
771da177e4SLinus Torvalds	  If you say Y here, the "otg_whitelist.h" file will be used as a
781da177e4SLinus Torvalds	  product whitelist, so USB peripherals not listed there will be
791da177e4SLinus Torvalds	  rejected during enumeration.  This behavior is required by the
801da177e4SLinus Torvalds	  USB OTG specification for all devices not on your product's
8122552b28SRobin Getz	  "Targeted Peripherals List".  "Embedded Hosts" are likewise
8222552b28SRobin Getz	  allowed to support only a limited number of peripherals.
831da177e4SLinus Torvalds
841da177e4SLinus Torvalds	  Otherwise, peripherals not listed there will only generate a
851da177e4SLinus Torvalds	  warning and enumeration will continue.  That's more like what
861da177e4SLinus Torvalds	  normal Linux-USB hosts do (other than the warning), and is
871da177e4SLinus Torvalds	  convenient for many stages of product development.
881da177e4SLinus Torvalds
8989ccbdc9SDavid Brownellconfig USB_OTG_BLACKLIST_HUB
9089ccbdc9SDavid Brownell	bool "Disable external hubs"
916a108a14SDavid Rientjes	depends on USB_OTG || EXPERT
9289ccbdc9SDavid Brownell	help
9389ccbdc9SDavid Brownell	  If you say Y here, then Linux will refuse to enumerate
9489ccbdc9SDavid Brownell	  external hubs.  OTG hosts are allowed to reduce hardware
9522552b28SRobin Getz	  and software costs by not supporting external hubs.  So
96bc45df95SPeter Korsgaard	  are "Embedded Hosts" that don't offer OTG support.
971da177e4SLinus Torvalds
98