USB: partial USB embedded host support
authorRobin Getz <rgetz@blackfin.uclinux.org>
Thu, 6 Mar 2008 07:17:38 +0000 (23:17 -0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 25 Apr 2008 04:16:40 +0000 (21:16 -0700)
This provides better support for USB "Embedded Host" functionality, which
is a subset of the USB OTG options:

 * External hub support can be disabled;

 * USB peripherals not whitelisted in "otg_whitelist.h" will be rejected
   during enumeration.

These options can allow some savings in software and support.

Signed-off-by: Robin Getz <rgetz@blackfin.uclinux.org>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/usb/core/Kconfig

index c15621d645796e00d51e8dd10575e8bfec673e47..fee864c9e62db87bfef1f08b481d671fa425c305 100644 (file)
@@ -111,14 +111,16 @@ config USB_OTG
 
 config USB_OTG_WHITELIST
        bool "Rely on OTG Targeted Peripherals List"
-       depends on USB_OTG
-       default y
+       depends on USB_OTG || EMBEDDED
+       default y if USB_OTG
+       default n if EMBEDDED
        help
          If you say Y here, the "otg_whitelist.h" file will be used as a
          product whitelist, so USB peripherals not listed there will be
          rejected during enumeration.  This behavior is required by the
          USB OTG specification for all devices not on your product's
-         "Targeted Peripherals List".
+         "Targeted Peripherals List".  "Embedded Hosts" are likewise
+         allowed to support only a limited number of peripherals.
 
          Otherwise, peripherals not listed there will only generate a
          warning and enumeration will continue.  That's more like what
@@ -127,9 +129,10 @@ config USB_OTG_WHITELIST
 
 config USB_OTG_BLACKLIST_HUB
        bool "Disable external hubs"
-       depends on USB_OTG
+       depends on USB_OTG || EMBEDDED
        help
          If you say Y here, then Linux will refuse to enumerate
          external hubs.  OTG hosts are allowed to reduce hardware
-         and software costs by not supporting external hubs.
+         and software costs by not supporting external hubs.  So
+         are "Emedded Hosts" that don't offer OTG support.