Re: [PATCHv3 1/2] usb: USB Type-C connector class

From: Heikki Krogerus
Date: Wed Jun 22 2016 - 10:42:27 EST


On Wed, Jun 22, 2016 at 03:47:03PM +0200, Oliver Neukum wrote:
> On Wed, 2016-06-22 at 14:44 +0300, Heikki Krogerus wrote:
> > If our port is DRD (which would be DRP in the port controller spec),
> > the supported_power_roles will list:
> >
> > device, host
> >
> > And the power role, if the port is Source only, the
> > supported_power_roles will list:
> >
> > source
> >
> > If the port is Sink only, the supported_power_roles will list:
> >
> > sink
> >
> > If our port is DRP, the supported_power_roles will list:
> >
> > source, sink
> >
> > What is there that is missing? We are able to express all the types of
> > "Roles Supported" that the DEVICE_CAPABILITIES define, no?
>
> No, because these are distinct in time. Some ports are DRP so they
> support
>
> device, host
>
> at the same time. Some ports can be switched between DFP and UFP
> they then either support host or device. But you lose the information
> that the ports can be switched.

You can't ever be host and device at the same time. Just like you
can't ever be source and sink at the same time.

Are we now talking about how should a port be advertised to the
partners? So basically, do you want to be able to program the port to
be DFP only, UFP only or DRP from user space?


Thanks,

--
heikki