Messages in this thread | | | Subject | Re: [PATCH] usb: typec: Defer checking of valid power role swap to low level drivers | From | Guenter Roeck <> | Date | Fri, 19 May 2017 06:27:58 -0700 |
| |
On 05/19/2017 03:35 AM, Heikki Krogerus wrote: > On Thu, May 18, 2017 at 02:08:53PM -0700, Badhri Jagan Sridharan wrote: >> On Thu, May 18, 2017 at 9:51 AM, Guenter Roeck <linux@roeck-us.net> wrote: >>> On Thu, May 18, 2017 at 11:13:51AM +0200, Oliver Neukum wrote: >>>> Am Mittwoch, den 17.05.2017, 02:36 -0700 schrieb Guenter Roeck: >>>>> On 05/17/2017 12:34 AM, Oliver Neukum wrote: >>>>>> >>>>>> Am Mittwoch, den 17.05.2017, 00:32 -0700 schrieb Badhri Jagan >>>>>> Sridharan: >>>>>> >>>>>> Hi, >>>>>> >>>>>>> >>>>>>> "Two independent set of mechanisms are defined to allow a USB Type-C >>>>>>> DRP to functionally swap power and data roles. When USB PD is >>>>>>> supported, power and data role swapping is performed as a subsequent >>>>>>> step following the initial connection process. For non-PD implementations, >>>>>>> power/data role swapping can optionally be dealt with as part of the initial >>>>>>> connection process." >>>>>> >>>>>> Well, as I read it, without PD once a connection is established, you >>>>>> are stuck with your role. So it seems to me that blocking a later >>>>>> attempt to change it makes sense. >>>>>> >>>>> >>>>> That seems to be a harsh and not very user friendly reading of the specification. >>>>> >>>>> I would argue that the user doesn't care if the partner supports PD or not >>>>> when selecting a role, and I would prefer to provide an implementation which is >>>>> as user friendly as possible. >>>> >>>> Data role, no question, you are right. >>>> Power role is a different question. A switch of power role with PD should >>>> not lead to a disconnect. Any other method might. So equating them does >>>> not look like a good idea. >>>> >>> >>> Not really sure I can follow. If a partner does not support PD, there is no >>> real distinction between data role and power role, or am I missing something ? >>> >>> Are you saying that, if a partner does not support PD, user space should >>> request a data role swap instead, and that this would be acceptable for you ? >>> >>> I don't really understand the difference - a data role swap doesn't cause >>> a disconnect either if the partner supports PD, and it would still result >>> in a disconnect/reconnect sequence if the partner does not support PD - >>> but if it works for you, fine with me. >>> >>> Badhri, would that work for us ? >> >> Yes Geunter that should work as well. Requesting non-pd role swap either through >> current_power_role or current_data_role is virtually the same. > > So if I understood this correctly, we'll skip this change, right? > Yes.
Thanks, Guenter
| |