USB: composite: Add flag to usb_function to hide its interface during enumeration
authorMike Lockwood <lockwood@android.com>
Fri, 11 Dec 2009 16:24:07 +0000 (11:24 -0500)
committerColin Cross <ccross@android.com>
Tue, 14 Jun 2011 16:08:54 +0000 (09:08 -0700)
Change-Id: Ie999b5190e3e2b6fd23015b8e796cdd178829929

Signed-off-by: Mike Lockwood <lockwood@android.com>
drivers/usb/gadget/composite.c
include/linux/usb/composite.h

index 07bb37ee07aae08b313132a0d4f3bc9d8ca8335d..134d3d50e350027f763a47fecc545b7773071211 100644 (file)
@@ -271,7 +271,7 @@ static int config_buf(struct usb_configuration *config,
                        descriptors = f->hs_descriptors;
                else
                        descriptors = f->descriptors;
-               if (!descriptors || descriptors[0] == NULL) {
+               if (f->hidden || !descriptors || descriptors[0] == NULL) {
                        for (; f != config->interface[interfaceCount];) {
                                interfaceCount++;
                                c->bNumInterfaces--;
index b78cba466d3dcc201755209939c70ce312056f4d..8f5a89f722dd3d1456af52c04596a41138b29c79 100644 (file)
@@ -108,6 +108,7 @@ struct usb_function {
        struct usb_descriptor_header    **hs_descriptors;
 
        struct usb_configuration        *config;
+       int                             hidden;
 
        /* REVISIT:  bind() functions can be marked __init, which
         * makes trouble for section mismatch analysis.  See if