RE: [PATCH v5 01/14] dt-bindings: connector: add properties for typec

2018-05-17 Thread Jun Li
Hi
> -Original Message-
> From: Peter Chen
> Sent: 2018年5月16日 15:22
> To: Jun Li <jun...@nxp.com>; robh...@kernel.org; gre...@linuxfoundation.org;
> heikki.kroge...@linux.intel.com; li...@roeck-us.net
> Cc: a.ha...@samsung.com; cw00.c...@samsung.com;
> shufan_...@richtek.com; gso...@gmail.com; devicet...@vger.kernel.org;
> linux-usb@vger.kernel.org; dl-linux-imx <linux-...@nxp.com>
> Subject: RE: [PATCH v5 01/14] dt-bindings: connector: add properties for typec
> 
> 
> > Add bingdings supported by current typec driver, so user can pass all
> > those properties via dt.
> >
> 
> %s/bingdings/bindings

Will change

Thanks
Li Jun
> 
> Peter


RE: [PATCH v5 01/14] dt-bindings: connector: add properties for typec

2018-05-16 Thread Peter Chen
  
> Add bingdings supported by current typec driver, so user can pass all those
> properties via dt.
> 

%s/bingdings/bindings

Peter
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH v5 01/14] dt-bindings: connector: add properties for typec

2018-05-14 Thread Jun Li
Hi
> -Original Message-
> From: Mats Karrman [mailto:mats.dev.l...@gmail.com]
> Sent: 2018年5月12日 3:49
> To: Jun Li <jun...@nxp.com>; robh...@kernel.org; gre...@linuxfoundation.org;
> heikki.kroge...@linux.intel.com; li...@roeck-us.net
> Cc: a.ha...@samsung.com; cw00.c...@samsung.com;
> shufan_...@richtek.com; Peter Chen <peter.c...@nxp.com>;
> gso...@gmail.com; devicet...@vger.kernel.org; linux-usb@vger.kernel.org;
> dl-linux-imx <linux-...@nxp.com>
> Subject: Re: [PATCH v5 01/14] dt-bindings: connector: add properties for typec
> 
> Hi Li Jun,
> 
> On 2018-05-03 02:24, Li Jun wrote:
> 
> > Add bingdings supported by current typec driver, so user can pass all
> > those properties via dt.
> >
> > Signed-off-by: Li Jun <jun...@nxp.com>
> > ---
> >   .../bindings/connector/usb-connector.txt   | 44
> +++
> >   include/dt-bindings/usb/pd.h   | 62
> ++
> >   2 files changed, 106 insertions(+)
> >
> > diff --git
> > a/Documentation/devicetree/bindings/connector/usb-connector.txt
> > b/Documentation/devicetree/bindings/connector/usb-connector.txt
> > index e1463f1..4b19de6d0 100644
> > --- a/Documentation/devicetree/bindings/connector/usb-connector.txt
> > +++ b/Documentation/devicetree/bindings/connector/usb-connector.txt
> > @@ -15,6 +15,33 @@ Optional properties:
> >   - type: size of the connector, should be specified in case of USB-A, USB-B
> > non-fullsize connectors: "mini", "micro".
> >
> > +Optional properties for usb-c-connector:
> > +- power-role: should be one of "source", "sink" or "dual"(DRP) if
> > +typec
> > +  connector has power support.
> > +- try-power-role: preferred power role if "dual"(DRP) can support
> > +Try.SNK
> > +  or Try.SRC, should be "sink" for Try.SNK or "source" for Try.SRC.
> > +- data-role: should be one of "host", "device", "dual"(DRD) if typec
> > +  connector supports USB data.
> > +
> > +Required properties for usb-c-connector with power delivery support:
> > +- source-pdos: An array of u32 with each entry providing supported
> > +power
> > +  source data object(PDO), the detailed bit definitions of PDO can be
> > +found
> > +  in "Universal Serial Bus Power Delivery Specification" chapter
> > +6.4.1.2
> > +  Source_Capabilities Message, the order of each entry(PDO) should
> > +follow
> > +  the PD spec chapter 6.4.1. Required for power source and power dual
> role.
> > +  User can specify the source PDO array via PDO_FIXED/BATT/VAR()
> > +defined in
> > +  dt-bindings/usb/pd.h.
> > +- sink-pdos: An array of u32 with each entry providing supported
> > +power
> > +  sink data object(PDO), the detailed bit definitions of PDO can be
> > +found
> > +  in "Universal Serial Bus Power Delivery Specification" chapter
> > +6.4.1.3
> > +  Sink Capabilities Message, the order of each entry(PDO) should
> > +follow
> > +  the PD spec chapter 6.4.1. Required for power sink and power dual role.
> > +  User can specify the sink PDO array via PDO_FIXED/BATT/VAR()
> > +defined in
> > +  dt-bindings/usb/pd.h.
> > +- op-sink-microwatt: Sink required operating power in microwatt, if
> > +source
> > +  can't offer the power, Capability Mismatch is set, required for
> > +power
> 
> ...set. Required...
> (new sentence, otherwise it's unclear what is required; op-sink-microwatt or
> Capability Mismatch set)

OK, will update as you suggested.

Thanks
Li Jun
N�r��yb�X��ǧv�^�)޺{.n�+{��^n�r���z���h�&���G���h�(�階�ݢj"���m��z�ޖ���f���h���~�m�

Re: [PATCH v5 01/14] dt-bindings: connector: add properties for typec

2018-05-11 Thread Mats Karrman

Hi Li Jun,

On 2018-05-03 02:24, Li Jun wrote:


Add bingdings supported by current typec driver, so user can pass
all those properties via dt.

Signed-off-by: Li Jun 
---
  .../bindings/connector/usb-connector.txt   | 44 +++
  include/dt-bindings/usb/pd.h   | 62 ++
  2 files changed, 106 insertions(+)

diff --git a/Documentation/devicetree/bindings/connector/usb-connector.txt 
b/Documentation/devicetree/bindings/connector/usb-connector.txt
index e1463f1..4b19de6d0 100644
--- a/Documentation/devicetree/bindings/connector/usb-connector.txt
+++ b/Documentation/devicetree/bindings/connector/usb-connector.txt
@@ -15,6 +15,33 @@ Optional properties:
  - type: size of the connector, should be specified in case of USB-A, USB-B
non-fullsize connectors: "mini", "micro".
  
+Optional properties for usb-c-connector:

+- power-role: should be one of "source", "sink" or "dual"(DRP) if typec
+  connector has power support.
+- try-power-role: preferred power role if "dual"(DRP) can support Try.SNK
+  or Try.SRC, should be "sink" for Try.SNK or "source" for Try.SRC.
+- data-role: should be one of "host", "device", "dual"(DRD) if typec
+  connector supports USB data.
+
+Required properties for usb-c-connector with power delivery support:
+- source-pdos: An array of u32 with each entry providing supported power
+  source data object(PDO), the detailed bit definitions of PDO can be found
+  in "Universal Serial Bus Power Delivery Specification" chapter 6.4.1.2
+  Source_Capabilities Message, the order of each entry(PDO) should follow
+  the PD spec chapter 6.4.1. Required for power source and power dual role.
+  User can specify the source PDO array via PDO_FIXED/BATT/VAR() defined in
+  dt-bindings/usb/pd.h.
+- sink-pdos: An array of u32 with each entry providing supported power
+  sink data object(PDO), the detailed bit definitions of PDO can be found
+  in "Universal Serial Bus Power Delivery Specification" chapter 6.4.1.3
+  Sink Capabilities Message, the order of each entry(PDO) should follow
+  the PD spec chapter 6.4.1. Required for power sink and power dual role.
+  User can specify the sink PDO array via PDO_FIXED/BATT/VAR() defined in
+  dt-bindings/usb/pd.h.
+- op-sink-microwatt: Sink required operating power in microwatt, if source
+  can't offer the power, Capability Mismatch is set, required for power


...set. Required...
(new sentence, otherwise it's unclear what is required; op-sink-microwatt or
Capability Mismatch set)

BR // Mats


+  sink and power dual role.
+
  Required nodes:
  - any data bus to the connector should be modeled using the OF graph bindings
specified in bindings/graph.txt, unless the bus is between parent node and
@@ -73,3 +100,20 @@ ccic: s2mm005@33 {
};
};
  };
+
+3. USB-C connector attached to a typec port controller(ptn5110), which has
+power delivery support and enables drp.
+
+typec: ptn5110@50 {
+   ...
+   usb_con: connector {
+   compatible = "usb-c-connector";
+   label = "USB-C";
+   power-role = "dual";
+   try-power-role = "sink";
+   source-pdos = ;
+   sink-pdos = ;
+   op-sink-microwatt = <1000>;
+   };
+};
diff --git a/include/dt-bindings/usb/pd.h b/include/dt-bindings/usb/pd.h
new file mode 100644
index 000..7b7a92f
--- /dev/null
+++ b/include/dt-bindings/usb/pd.h
@@ -0,0 +1,62 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+#ifndef __DT_POWER_DELIVERY_H
+#define __DT_POWER_DELIVERY_H
+
+/* Power delivery Power Data Object definitions */
+#define PDO_TYPE_FIXED 0
+#define PDO_TYPE_BATT  1
+#define PDO_TYPE_VAR   2
+#define PDO_TYPE_APDO  3
+
+#define PDO_TYPE_SHIFT 30
+#define PDO_TYPE_MASK  0x3
+
+#define PDO_TYPE(t)((t) << PDO_TYPE_SHIFT)
+
+#define PDO_VOLT_MASK  0x3ff
+#define PDO_CURR_MASK  0x3ff
+#define PDO_PWR_MASK   0x3ff
+
+#define PDO_FIXED_DUAL_ROLE(1 << 29) /* Power role swap supported */
+#define PDO_FIXED_SUSPEND  (1 << 28) /* USB Suspend supported (Source) */
+#define PDO_FIXED_HIGHER_CAP   (1 << 28) /* Requires more than vSafe5V (Sink) 
*/
+#define PDO_FIXED_EXTPOWER (1 << 27) /* Externally powered */
+#define PDO_FIXED_USB_COMM (1 << 26) /* USB communications capable */
+#define PDO_FIXED_DATA_SWAP(1 << 25) /* Data role swap supported */
+#define PDO_FIXED_VOLT_SHIFT   10  /* 50mV units */
+#define PDO_FIXED_CURR_SHIFT   0   /* 10mA units */
+
+#define PDO_FIXED_VOLT(mv) mv) / 50) & PDO_VOLT_MASK) << 
PDO_FIXED_VOLT_SHIFT)
+#define PDO_FIXED_CURR(ma) ma) / 10) & PDO_CURR_MASK) << 
PDO_FIXED_CURR_SHIFT)
+
+#define PDO_FIXED(mv, ma, flags)   \
+   

RE: [PATCH v5 01/14] dt-bindings: connector: add properties for typec

2018-05-09 Thread Jun Li
Hi
> -Original Message-
> From: Oliver Neukum [mailto:oneu...@suse.com]
> Sent: 2018年5月8日 18:03
> To: Jun Li <jun...@nxp.com>; robh...@kernel.org;
> heikki.kroge...@linux.intel.com; gre...@linuxfoundation.org;
> li...@roeck-us.net
> Cc: gso...@gmail.com; dl-linux-imx <linux-...@nxp.com>; Peter Chen
> <peter.c...@nxp.com>; shufan_...@richtek.com; a.ha...@samsung.com;
> cw00.c...@samsung.com; devicet...@vger.kernel.org;
> linux-usb@vger.kernel.org
> Subject: Re: [PATCH v5 01/14] dt-bindings: connector: add properties for typec
> 
> Am Freitag, den 04.05.2018, 08:59 + schrieb Jun Li:
> >
> > > > > Can one implement a device that can operate as either DFP or
> > > > > UFP, but not implements the dynamic role switch that a DRP must
> support?
> > > >
> > > > You mean a port with DRD on data but not DRP on power?
> > > >
> > > > The data-role is newly added as the data role is not coupled with
> > > > power
> > >
> > > No, I meant data role. As far as I can tell for a DRP you need to
> > > implement the detection logic described in chapter 4 of the spec.
> >
> > Could you please point me the "detection logic" of typec spec chapter
> > 4 you are referring to?
> 
> Chapter 4.5.2.2, especially state diagramms 4.15 and 4.16

Figure 4-15 Connection State Diagram: DRP
That's DRP case without try-power-role present, a simple DRP(Dual-Role-Power).

Figure 4-16 Connection State Diagram: DRP with Accessory and Try.SRC Support
That's DRP with try-power-role = "source"

> 
> It just seems to me that a DRP and a physical port that can be switched
> between UFP and DFP are not the same thing, but can be implemented.

Yes, they are different, the former is DRP(Dual-Role-Power, power-role = 
"dual"),
and the latter is DRD(Dual-Role-Data, data-role = "dual"). If a port can support
both DRP and DRD, I think current tcpm already can support it.
If a typec port only can sink power(power-role = "sink") but can support UFP
and UFP switch on data (data-role = "dual"), in this case, we only can switch
the data roles via dr_swap or sys, current tcpm may need more change to
adapt the separation of power role and data role, but anyway all this can be
implemented as you said.

Thanks
Li Jun
> 
>   Regards
>   Oliver



Re: [PATCH v5 01/14] dt-bindings: connector: add properties for typec

2018-05-08 Thread Oliver Neukum
Am Freitag, den 04.05.2018, 08:59 + schrieb Jun Li:
> 
> > > > Can one implement a device that can operate as either DFP or UFP,
> > > > but not implements the dynamic role switch that a DRP must support?
> > > 
> > > You mean a port with DRD on data but not DRP on power?
> > > 
> > > The data-role is newly added as the data role is not coupled with
> > > power
> > 
> > No, I meant data role. As far as I can tell for a DRP you need to implement 
> > the
> > detection logic described in chapter 4 of the spec.
> 
> Could you please point me the "detection logic" of typec spec chapter 4
> you are referring to?

Chapter 4.5.2.2, especially state diagramms 4.15 and 4.16

It just seems to me that a DRP and a physical port that can be switched
between UFP and DFP are not the same thing, but can be implemented.

Regards
Oliver

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH v5 01/14] dt-bindings: connector: add properties for typec

2018-05-07 Thread Jun Li

> -Original Message-
> From: Rob Herring [mailto:r...@kernel.org]
> Sent: 2018年5月7日 23:59
> To: Jun Li <jun...@nxp.com>
> Cc: gre...@linuxfoundation.org; heikki.kroge...@linux.intel.com;
> li...@roeck-us.net; a.ha...@samsung.com; cw00.c...@samsung.com;
> shufan_...@richtek.com; Peter Chen <peter.c...@nxp.com>;
> gso...@gmail.com; devicet...@vger.kernel.org; linux-usb@vger.kernel.org;
> dl-linux-imx <linux-...@nxp.com>
> Subject: Re: [PATCH v5 01/14] dt-bindings: connector: add properties for typec
> 
> On Thu, May 03, 2018 at 08:24:41AM +0800, Li Jun wrote:
> > Add bingdings supported by current typec driver, so user can pass all
> > those properties via dt.
> >
> > Signed-off-by: Li Jun <jun...@nxp.com>
> > ---
> >  .../bindings/connector/usb-connector.txt   | 44
> +++
> >  include/dt-bindings/usb/pd.h   | 62
> ++
> >  2 files changed, 106 insertions(+)
> >
> > diff --git
> > a/Documentation/devicetree/bindings/connector/usb-connector.txt
> > b/Documentation/devicetree/bindings/connector/usb-connector.txt
> > index e1463f1..4b19de6d0 100644
> > --- a/Documentation/devicetree/bindings/connector/usb-connector.txt
> > +++ b/Documentation/devicetree/bindings/connector/usb-connector.txt
> > @@ -15,6 +15,33 @@ Optional properties:
> >  - type: size of the connector, should be specified in case of USB-A, USB-B
> >non-fullsize connectors: "mini", "micro".
> >
> > +Optional properties for usb-c-connector:
> > +- power-role: should be one of "source", "sink" or "dual"(DRP) if
> > +typec
> > +  connector has power support.
> > +- try-power-role: preferred power role if "dual"(DRP) can support
> > +Try.SNK
> > +  or Try.SRC, should be "sink" for Try.SNK or "source" for Try.SRC.
> > +- data-role: should be one of "host", "device", "dual"(DRD) if typec
> > +  connector supports USB data.
> 
> Need to define what are the defaults on these if the properties aren't present
> (ideally, those would be the common case)?

If one of above properties isn't present, means the port doesn't have
corresponding capability. I think the common case is a port has a
specific property value, but it's also possible it doesn't support that
function(e.g. a typec port only for power but no data communication),
so I use "not present" for this case instead of some default value).

Thanks
Li Jun
> 
> Rob


Re: [PATCH v5 01/14] dt-bindings: connector: add properties for typec

2018-05-07 Thread Rob Herring
On Thu, May 03, 2018 at 08:24:41AM +0800, Li Jun wrote:
> Add bingdings supported by current typec driver, so user can pass
> all those properties via dt.
> 
> Signed-off-by: Li Jun 
> ---
>  .../bindings/connector/usb-connector.txt   | 44 +++
>  include/dt-bindings/usb/pd.h   | 62 
> ++
>  2 files changed, 106 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/connector/usb-connector.txt 
> b/Documentation/devicetree/bindings/connector/usb-connector.txt
> index e1463f1..4b19de6d0 100644
> --- a/Documentation/devicetree/bindings/connector/usb-connector.txt
> +++ b/Documentation/devicetree/bindings/connector/usb-connector.txt
> @@ -15,6 +15,33 @@ Optional properties:
>  - type: size of the connector, should be specified in case of USB-A, USB-B
>non-fullsize connectors: "mini", "micro".
>  
> +Optional properties for usb-c-connector:
> +- power-role: should be one of "source", "sink" or "dual"(DRP) if typec
> +  connector has power support.
> +- try-power-role: preferred power role if "dual"(DRP) can support Try.SNK
> +  or Try.SRC, should be "sink" for Try.SNK or "source" for Try.SRC.
> +- data-role: should be one of "host", "device", "dual"(DRD) if typec
> +  connector supports USB data.

Need to define what are the defaults on these if the properties aren't 
present (ideally, those would be the common case)?

Rob
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH v5 01/14] dt-bindings: connector: add properties for typec

2018-05-04 Thread Jun Li
Hi
> -Original Message-
> From: Oliver Neukum [mailto:oneu...@suse.com]
> Sent: 2018年5月3日 17:18
> To: Jun Li <jun...@nxp.com>; robh...@kernel.org;
> heikki.kroge...@linux.intel.com; gre...@linuxfoundation.org;
> li...@roeck-us.net
> Cc: gso...@gmail.com; dl-linux-imx <linux-...@nxp.com>; Peter Chen
> <peter.c...@nxp.com>; shufan_...@richtek.com; a.ha...@samsung.com;
> cw00.c...@samsung.com; devicet...@vger.kernel.org;
> linux-usb@vger.kernel.org
> Subject: Re: [PATCH v5 01/14] dt-bindings: connector: add properties for typec
> 
> Am Donnerstag, den 03.05.2018, 08:35 + schrieb Jun Li:
> > Hi
> > > -Original Message-
> > > From: Oliver Neukum [mailto:oneu...@suse.com]
> > > Sent: 2018年5月3日 15:27
> > > To: Jun Li <jun...@nxp.com>; robh...@kernel.org;
> > > heikki.kroge...@linux.intel.com; gre...@linuxfoundation.org;
> > > li...@roeck-us.net
> > > Cc: gso...@gmail.com; dl-linux-imx <linux-...@nxp.com>; Peter Chen
> > > <peter.c...@nxp.com>; shufan_...@richtek.com;
> a.ha...@samsung.com;
> > > cw00.c...@samsung.com; devicet...@vger.kernel.org;
> > > linux-usb@vger.kernel.org
> > > Subject: Re: [PATCH v5 01/14] dt-bindings: connector: add properties
> > > for typec
> > >
> > > Am Donnerstag, den 03.05.2018, 08:24 +0800 schrieb Li Jun:
> > > > +Optional properties for usb-c-connector:
> > > > +- power-role: should be one of "source", "sink" or "dual"(DRP) if
> > > > +typec
> > > > +  connector has power support.
> > > > +- try-power-role: preferred power role if "dual"(DRP) can support
> > > > +Try.SNK
> > > > +  or Try.SRC, should be "sink" for Try.SNK or "source" for Try.SRC.
> > > > +- data-role: should be one of "host", "device", "dual"(DRD) if
> > > > +typec
> > > > +  connector supports USB data.
> > >
> > > Hi,
> > >
> > > is this really correct?
> > >
> > > Can one implement a device that can operate as either DFP or UFP,
> > > but not implements the dynamic role switch that a DRP must support?
> >
> > You mean a port with DRD on data but not DRP on power?
> >
> > The data-role is newly added as the data role is not coupled with
> > power
> 
> No, I meant data role. As far as I can tell for a DRP you need to implement 
> the
> detection logic described in chapter 4 of the spec.

Could you please point me the "detection logic" of typec spec chapter 4
you are referring to?

> I can see no reason why you couldn't build a port that can be switched between
> the data roles but not implement that logic.

I see there is dr_swap handling for data role swap in tcpm already, maybe
I misunderstood the "logic" you want here.

Regards
Li Jun
 
> 
>   Regards
>   Oliver



Re: [PATCH v5 01/14] dt-bindings: connector: add properties for typec

2018-05-03 Thread Oliver Neukum
Am Donnerstag, den 03.05.2018, 08:35 + schrieb Jun Li:
> Hi
> > -Original Message-
> > From: Oliver Neukum [mailto:oneu...@suse.com]
> > Sent: 2018年5月3日 15:27
> > To: Jun Li <jun...@nxp.com>; robh...@kernel.org;
> > heikki.kroge...@linux.intel.com; gre...@linuxfoundation.org;
> > li...@roeck-us.net
> > Cc: gso...@gmail.com; dl-linux-imx <linux-...@nxp.com>; Peter Chen
> > <peter.c...@nxp.com>; shufan_...@richtek.com; a.ha...@samsung.com;
> > cw00.c...@samsung.com; devicet...@vger.kernel.org;
> > linux-usb@vger.kernel.org
> > Subject: Re: [PATCH v5 01/14] dt-bindings: connector: add properties for 
> > typec
> > 
> > Am Donnerstag, den 03.05.2018, 08:24 +0800 schrieb Li Jun:
> > > +Optional properties for usb-c-connector:
> > > +- power-role: should be one of "source", "sink" or "dual"(DRP) if
> > > +typec
> > > +  connector has power support.
> > > +- try-power-role: preferred power role if "dual"(DRP) can support
> > > +Try.SNK
> > > +  or Try.SRC, should be "sink" for Try.SNK or "source" for Try.SRC.
> > > +- data-role: should be one of "host", "device", "dual"(DRD) if typec
> > > +  connector supports USB data.
> > 
> > Hi,
> > 
> > is this really correct?
> > 
> > Can one implement a device that can operate as either DFP or UFP, but not
> > implements the dynamic role switch that a DRP must support?
> 
> You mean a port with DRD on data but not DRP on power?
> 
> The data-role is newly added as the data role is not coupled with power

No, I meant data role. As far as I can tell for a DRP you need to
implement the detection logic described in chapter 4 of the spec.
I can see no reason why you couldn't build a port that can be switched
between the data roles but not implement that logic.

Regards
Oliver

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


RE: [PATCH v5 01/14] dt-bindings: connector: add properties for typec

2018-05-03 Thread Jun Li
Hi
> -Original Message-
> From: Oliver Neukum [mailto:oneu...@suse.com]
> Sent: 2018年5月3日 15:27
> To: Jun Li <jun...@nxp.com>; robh...@kernel.org;
> heikki.kroge...@linux.intel.com; gre...@linuxfoundation.org;
> li...@roeck-us.net
> Cc: gso...@gmail.com; dl-linux-imx <linux-...@nxp.com>; Peter Chen
> <peter.c...@nxp.com>; shufan_...@richtek.com; a.ha...@samsung.com;
> cw00.c...@samsung.com; devicet...@vger.kernel.org;
> linux-usb@vger.kernel.org
> Subject: Re: [PATCH v5 01/14] dt-bindings: connector: add properties for typec
> 
> Am Donnerstag, den 03.05.2018, 08:24 +0800 schrieb Li Jun:
> > +Optional properties for usb-c-connector:
> > +- power-role: should be one of "source", "sink" or "dual"(DRP) if
> > +typec
> > +  connector has power support.
> > +- try-power-role: preferred power role if "dual"(DRP) can support
> > +Try.SNK
> > +  or Try.SRC, should be "sink" for Try.SNK or "source" for Try.SRC.
> > +- data-role: should be one of "host", "device", "dual"(DRD) if typec
> > +  connector supports USB data.
> 
> Hi,
> 
> is this really correct?
> 
> Can one implement a device that can operate as either DFP or UFP, but not
> implements the dynamic role switch that a DRP must support?

You mean a port with DRD on data but not DRP on power?

The data-role is newly added as the data role is not coupled with power
role in new PD spec, in practice, I think this is very normal, Heikki already
added a patch to separate the power and data role in class driver, but tcpm
hasn't changed accordingly for this yet, so current tcpm may not allow your
question case, but from property definition point view, we should not limit
this and let the 2 roles independent each other.

Thanks
Jun
> 
>   Regards
>   Oliver



Re: [PATCH v5 01/14] dt-bindings: connector: add properties for typec

2018-05-03 Thread Oliver Neukum
Am Donnerstag, den 03.05.2018, 08:24 +0800 schrieb Li Jun:
> +Optional properties for usb-c-connector:
> +- power-role: should be one of "source", "sink" or "dual"(DRP) if typec
> +  connector has power support.
> +- try-power-role: preferred power role if "dual"(DRP) can support Try.SNK
> +  or Try.SRC, should be "sink" for Try.SNK or "source" for Try.SRC.
> +- data-role: should be one of "host", "device", "dual"(DRD) if typec
> +  connector supports USB data.

Hi,

is this really correct?

Can one implement a device that can operate as either DFP or UFP,
but not implements the dynamic role switch that a DRP must support?

Regards
Oliver

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html