Re: [PATCH 1/3] usb: USB Type-C Connector Class
From: Oliver Neukum
Date: Thu Feb 18 2016 - 04:24:38 EST
On Thu, 2016-02-18 at 10:47 +0200, Heikki Krogerus wrote:
Hi,
> The modes that can actually be selected have to be supported by both
> the connector and the partner, and this is where I'm putting the ball
> on the userspace at the moment. I'm not offering a list of
> "possible_alternate_modes" where I list the combination, but instead
> expect the userspace to be figure out that on it's own.
>
> Do you think we should add "possible_alternate_modes" file?
No, what do we answer to the DFP if we recieve "Discover SVIDs"?
I don't think that we always should answer with all we physically
can. If, for example, the hardware could do Thunderbolt, but the OS
is not prepared to handle it, we shouldn't offer it. So this is
a policy decision to be made in user space. Hence we need
an API to tell it to the kernel.
> P.S. That reminds me, here's my current draft for the
> Documentation/ABI/. Could you take a look?
OK
Here are my comments:
What: /sys/class/type-c/usbcN/connected
Connection status of the USB Type-C connector usbcN. "yes" when
connected, otherwise "no".
Unnecessarily wordy. 0 and 1 would do
What: /sys/class/type-c/usbcN/current_data_role
Again, 0 and 1 would do
What: /sys/class/type-c/usbcN/partner_alternate_modes
You should say in which number base the values are given.
What: /sys/class/type-c/usbcN/partner_type
That could be combined with "connected"
What: /sys/class/type-c/usbcN/supported_data_roles
A connector can be both. How is that expressed?
What: /sys/class/type-c/usbcN/supported_power_roles
Again, what if it can do both?