lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <644d890b-86e8-f05a-cd4c-32937d971a45@roeck-us.net>
Date:   Wed, 23 Oct 2019 06:44:39 -0700
From:   Guenter Roeck <linux@...ck-us.net>
To:     Heikki Krogerus <heikki.krogerus@...ux.intel.com>,
        Puma Hsu <pumahsu@...gle.com>
Cc:     gregkh@...uxfoundation.org, badhri@...gle.com, kyletso@...gle.com,
        albertccwang@...gle.com, rickyniu@...gle.com,
        linux-usb@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH V2] usb: typec: Add sysfs node to show connector
 orientation

On 10/23/19 1:32 AM, Heikki Krogerus wrote:
> +Guenter
> 
> On Tue, Oct 22, 2019 at 04:59:24PM +0800, Puma Hsu wrote:
>> Export the Type-C connector orientation so that user space
>> can get this information.
>>
>> Signed-off-by: Puma Hsu <pumahsu@...gle.com>
>> ---
>>   Documentation/ABI/testing/sysfs-class-typec | 11 +++++++++++
>>   drivers/usb/typec/class.c                   | 18 ++++++++++++++++++
>>   2 files changed, 29 insertions(+)
>>
>> diff --git a/Documentation/ABI/testing/sysfs-class-typec b/Documentation/ABI/testing/sysfs-class-typec
>> index d7647b258c3c..b22f71801671 100644
>> --- a/Documentation/ABI/testing/sysfs-class-typec
>> +++ b/Documentation/ABI/testing/sysfs-class-typec
>> @@ -108,6 +108,17 @@ Contact:	Heikki Krogerus <heikki.krogerus@...ux.intel.com>
>>   Description:
>>   		Revision number of the supported USB Type-C specification.
>>   
>> +What:		/sys/class/typec/<port>/connector_orientation
>> +Date:		October 2019
>> +Contact:	Puma Hsu <pumahsu@...gle.com>
>> +Description:
>> +		Indicates which typec connector orientation is configured now.
>> +		cc1 is defined as "normal" and cc2 is defined as "reversed".
>> +
>> +		Valid value:
>> +		- unknown (nothing configured)
> 
> "unknown" means we do not know the orientation.
> 
>> +		- normal (configured in cc1 side)
>> +		- reversed (configured in cc2 side)
> 
> Guenter, do you think "connector_orientation" OK. I proposed it, but
> I'm now wondering if something like "polarity" would be better?
> 

Yes, or just "orientation". I don't see the value in the "connector_" prefix.
I also wonder if "unknown" is really correct. Is it really unknown, or
does it mean that the port is disconnected ?

Guenter

>>   USB Type-C partner devices (eg. /sys/class/typec/port0-partner/)
>>   
>> diff --git a/drivers/usb/typec/class.c b/drivers/usb/typec/class.c
>> index 94a3eda62add..911d06676aeb 100644
>> --- a/drivers/usb/typec/class.c
>> +++ b/drivers/usb/typec/class.c >> @@ -1245,6 +1245,23 @@ static ssize_t usb_power_delivery_revision_show(struct device *dev,
>>   }
>>   static DEVICE_ATTR_RO(usb_power_delivery_revision);
>>   
>> +static const char * const typec_connector_orientation[] = {
>> +	[TYPEC_ORIENTATION_NONE]		= "unknown",
>> +	[TYPEC_ORIENTATION_NORMAL]		= "normal",
>> +	[TYPEC_ORIENTATION_REVERSE]		= "reversed",
>> +};
>> +
>> +static ssize_t connector_orientation_show(struct device *dev,
>> +						struct device_attribute *attr,
>> +						char *buf)
>> +{
>> +	struct typec_port *p = to_typec_port(dev);
>> +
>> +	return sprintf(buf, "%s\n",
>> +		       typec_connector_orientation[p->orientation]);
>> +}
>> +static DEVICE_ATTR_RO(connector_orientation);
>> +
>>   static struct attribute *typec_attrs[] = {
>>   	&dev_attr_data_role.attr,
>>   	&dev_attr_power_operation_mode.attr,
>> @@ -1255,6 +1272,7 @@ static struct attribute *typec_attrs[] = {
>>   	&dev_attr_usb_typec_revision.attr,
>>   	&dev_attr_vconn_source.attr,
>>   	&dev_attr_port_type.attr,
>> +	&dev_attr_connector_orientation.attr,
>>   	NULL,
>>   };
>>   ATTRIBUTE_GROUPS(typec);
> 
> thanks,
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ