USB: partial USB embedded host support

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>
This commit is contained in:
Robin Getz 2008-03-05 23:17:38 -08:00 committed by Greg Kroah-Hartman
parent b56394bf32
commit 22552b286b
1 changed files with 8 additions and 5 deletions

View 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.