From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752220AbcFVKS7 (ORCPT ); Wed, 22 Jun 2016 06:18:59 -0400 Received: from mx2.suse.de ([195.135.220.15]:37077 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751883AbcFVKS5 (ORCPT ); Wed, 22 Jun 2016 06:18:57 -0400 Message-ID: <1466590495.12516.10.camel@suse.com> Subject: Re: [PATCHv3 1/2] usb: USB Type-C connector class From: Oliver Neukum To: Heikki Krogerus Cc: Felipe Balbi , Greg KH , Guenter Roeck , linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org Date: Wed, 22 Jun 2016 12:14:55 +0200 In-Reply-To: <20160622095016.GB19856@kuha.fi.intel.com> References: <1466520711-125758-1-git-send-email-heikki.krogerus@linux.intel.com> <1466520711-125758-2-git-send-email-heikki.krogerus@linux.intel.com> <1466540705.2014.11.camel@suse.com> <20160622095016.GB19856@kuha.fi.intel.com> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.12.11 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 2016-06-22 at 12:50 +0300, Heikki Krogerus wrote: > On Tue, Jun 21, 2016 at 10:25:05PM +0200, Oliver Neukum wrote: > > On Tue, 2016-06-21 at 17:51 +0300, Heikki Krogerus wrote: > > > +What: /sys/class/typec//supported_data_roles > > > +Data: June 2016 > > > +Contact: Heikki Krogerus > > > +Description: > > > + Lists the USB data roles, host or device, the port is > > > capable > > > + of supporting. > > > > On third thought, this is a problem. Looking at 4.4.8.1 > > DEVICE_CAPABILITIES (Required) of USB Type-C Port Controller > > Interface Specification we lack capability. > > > > A port that can do DRP is not the same thing as a port that > > can be switched between DFP and UFP. We cannot express that. > > What do you mean? DRP means we support and are able to swap the data No. That is the error. We support them concurrently. And that is not obvious. It is perfectly possible to support both but not concurrently. > role, but it just does not mean we can act as both source and sink. And > that information we already get from separate attribute: > "supported_power_roles". But it is different. Suppose we have a port that can be switched between UFP and DFP, as the spec defines. If it is switched to DFP and we plug in a DFP it will not work. UFP into UFP has the same result. Plugging it into a DRP will always work. It is true that both support host and device, but the capability of the ports is different. And that is not expressed. Regards Oliver