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

From: Rajaram R
Date: Wed Jun 29 2016 - 06:51:56 EST


On Wed, Jun 29, 2016 at 4:00 PM, Heikki Krogerus
<heikki.krogerus@xxxxxxxxxxxxxxx> wrote:
> On Wed, Jun 29, 2016 at 02:21:10PM +0530, Rajaram R wrote:
>> On Mon, Jun 27, 2016 at 5:43 PM, Heikki Krogerus
>> <heikki.krogerus@xxxxxxxxxxxxxxx> wrote:
>> > Hi,
>> >
>> > On Mon, Jun 27, 2016 at 03:51:08PM +0530, Rajaram R wrote:
>> >> May be I am missing user or usage of the driver.. I see this driver is
>> >> providing limited information of the Type-C connectors or the port
>> >> partner
>> >
>> > Yes, this interface can't provide directly information received from
>> > PD commands like Discover Identity. We will have to present the
>> > partners even when USB PD is not supported and in a consistent
>> > fashion. Some details will be available in any case indirectly. Like
>> > if there are modes, there will be devices presenting them, and the
>> > product type in case of partners will be the partner type.
>>
>> Agree. What is the end use of this driver? IMO end use case will
>> decide what attributes to be shared. Since we are terming this as a
>> universal representation for user space we may need to expose details
>> such as Discovery details say Vendor ID, Product ID, Super Speed
>> support etc which are not related to alt mode. In the legacy drivers
>> complete descriptors of the device is available for user space to
>> build applications.
>
> The details about the USB connection are out side the scope the this
> class, and in most cases the port driver will not even have them at
> their disposal. We can determine that the connector is in USB mode,
> and that's about it.
>
> But those details will in any case be exposed by the USB subsystem, so
> why should we duplicate them? The user space has been so far relying
> on getting the details from the normal interfaces the USB subsystem
> provides and that should not change.

Apologize for bringing in USB example. I used it to as an example to
say that complete device details are exposed to user space by other
drivers.

Sticking to the current topic/context more details of Type-C
port/partner, a detailed information(with restrictions) will help
build more user applications.

>
>
> Thanks,
>
> --
> heikki