[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110823171942.GC10996@legolas.emea.dhcp.ti.com>
Date: Tue, 23 Aug 2011 20:19:43 +0300
From: Felipe Balbi <balbi@...com>
To: Michal Nazarewicz <mnazarewicz@...gle.com>
Cc: Felipe Balbi <balbi@...com>,
Alan Stern <stern@...land.harvard.edu>,
Sebastian Andrzej Siewior <bigeasy@...utronix.de>,
Yang Rui Rui <ruirui.r.yang@...to.com>,
Dave Young <hidave.darkstar@...il.com>,
linux-usb@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCHv3 2/4] usb: gadget: replace "is_dualspeed" with
"max_speed"
Hi,
On Tue, Aug 23, 2011 at 05:26:24PM +0200, Michal Nazarewicz wrote:
> >On Tue, Aug 23, 2011 at 05:07:11PM +0200, Michal Nazarewicz wrote:
> >>If you look at config_buf() in composite.c, you'll notice that composite
> >>just skips functions that do not support current speed. This
> >>means, that if a connection uses high speed but given function
> >>can handle only
> >>full speed, it won't be included in the descriptors.
> >>
> >>config_buf() is called from config_desc() which similarly, iterates over
> >>configurations skipping the ones that do not support given speed.
> >>
> >>Configuration is defined to support given speed if at least one function
> >>that is added to that configuration supports that speed (see
> >>usb_add_function()).
>
> On Tue, 23 Aug 2011 17:11:06 +0200, Felipe Balbi <balbi@...com> wrote:
> >I'm trying to think if this is really what we want. This might mean
> >$current_config will be different depending if we connect it to SS, HS
> >or FS hubs.
>
> What do you mean by $current_config? The bConfigurationValue will be
the currently chosen configuration.
> the same for "the same" configuration regardless of speed but different
> configurations may be available for different speeds and "the same"
> configuration in various speeds might have different functions.
>
> So just for the sake of having something concrete, let's say we have:
>
> Configuration #1 with
> function A supporting FS and HS and
my question is what happens with the HS support on function A
(descriptors, endpoints, etc) when you connect it to a HS hub or to a FS
hub.
> function B supporting FS only.
> Configuration #2 with
> function B supporting FS only.
> Configuration #3 with
> function A supporting FS and HS and
> function C supporting HS only (dunno if that makes sense).
>
> When connected to FS hub, we will return the following:
>
> Configuration #1: A, B
> Configuration #2: B
> Configuration #3: A
>
> When connect to HS hub, we will return the following:
>
> Configuration #1: A
See, I'm not sure this is allowed by USB spec. But I could be wrong. (I
mean having a function disappear)
--
balbi
Download attachment "signature.asc" of type "application/pgp-signature" (491 bytes)
Powered by blists - more mailing lists