linux-usb.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [v3,10/12] staging: typec: tcpci: keep the not connecting cc line open
@ 2018-03-13  9:34 Jun Li
  0 siblings, 0 replies; 3+ messages in thread
From: Jun Li @ 2018-03-13  9:34 UTC (permalink / raw)
  To: robh+dt, mark.rutland, gregkh, heikki.krogerus
  Cc: a.hajda, jun.li, linux, yueyao, shufan_lee, o_leveque, linux-usb,
	linux-imx

While set polarity, we should keep the not connecting cc line to be
open when attached.

Signed-off-by: Li Jun <jun.li@nxp.com>
---
 drivers/staging/typec/tcpci.c | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/drivers/staging/typec/tcpci.c b/drivers/staging/typec/tcpci.c
index 9a230c6..6fdb179 100644
--- a/drivers/staging/typec/tcpci.c
+++ b/drivers/staging/typec/tcpci.c
@@ -185,6 +185,7 @@ static int tcpci_set_polarity(struct tcpc_dev *tcpc,
 			      enum typec_cc_polarity polarity)
 {
 	struct tcpci *tcpci = tcpc_to_tcpci(tcpc);
+	unsigned int reg;
 	int ret;
 
 	ret = regmap_write(tcpci->regmap, TCPC_TCPC_CTRL,
@@ -193,7 +194,17 @@ static int tcpci_set_polarity(struct tcpc_dev *tcpc,
 	if (ret < 0)
 		return ret;
 
-	return 0;
+	/* Set the not connected cc line open */
+	ret = regmap_read(tcpci->regmap, TCPC_ROLE_CTRL, &reg);
+	if (ret < 0)
+		return ret;
+	if (polarity == TYPEC_POLARITY_CC2)
+		ret = TCPC_ROLE_CTRL_CC1_SHIFT;
+	else
+		ret = TCPC_ROLE_CTRL_CC2_SHIFT;
+	reg |= TCPC_ROLE_CTRL_CC_OPEN << ret;
+	reg &= ~TCPC_ROLE_CTRL_DRP;
+	return regmap_write(tcpci->regmap, TCPC_ROLE_CTRL, reg);
 }
 
 static int tcpci_set_vconn(struct tcpc_dev *tcpc, bool enable)

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [v3,10/12] staging: typec: tcpci: keep the not connecting cc line open
@ 2018-03-14  8:59 shufan_lee(李書帆)
  0 siblings, 0 replies; 3+ messages in thread
From: shufan_lee(李書帆) @ 2018-03-14  8:59 UTC (permalink / raw)
  To: 'Li Jun', robh+dt@kernel.org, mark.rutland@arm.com,
	gregkh@linuxfoundation.org, heikki.krogerus@linux.intel.com
  Cc: a.hajda@samsung.com, linux@roeck-us.net, yueyao@google.com,
	o_leveque@orange.fr, linux-usb@vger.kernel.org, linux-imx@nxp.com

Hi Jun,

-----Original Message-----
From: Li Jun [mailto:jun.li@nxp.com]
Sent: Tuesday, March 13, 2018 5:35 PM
To: robh+dt@kernel.org; mark.rutland@arm.com; gregkh@linuxfoundation.org; heikki.krogerus@linux.intel.com
Cc: a.hajda@samsung.com; jun.li@nxp.com; linux@roeck-us.net; yueyao@google.com; shufan_lee(李書帆); o_leveque@orange.fr; linux-usb@vger.kernel.org; linux-imx@nxp.com
Subject: [PATCH v3 10/12] staging: typec: tcpci: keep the not connecting cc line open

While set polarity, we should keep the not connecting cc line to be open when attached.

Signed-off-by: Li Jun <jun.li@nxp.com>
---
 drivers/staging/typec/tcpci.c | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

 return ret;

-return 0;
+/* Set the not connected cc line open */
+ret = regmap_read(tcpci->regmap, TCPC_ROLE_CTRL, &reg);
+if (ret < 0)
+return ret;
+if (polarity == TYPEC_POLARITY_CC2)
+ret = TCPC_ROLE_CTRL_CC1_SHIFT;
+else
+ret = TCPC_ROLE_CTRL_CC2_SHIFT;
+reg |= TCPC_ROLE_CTRL_CC_OPEN << ret;
+reg &= ~TCPC_ROLE_CTRL_DRP;
+return regmap_write(tcpci->regmap, TCPC_ROLE_CTRL, reg);
 }

 static int tcpci_set_vconn(struct tcpc_dev *tcpc, bool enable)
--
2.7.4

  I applied all of your patches and tested with RT1711H.
  I met a case as following:
  1. The state machine starts toggling with RC.CCx = Rp/Rp
  2. Connect to adapter with an A2C cable
  3. open/open is received after setting RC.DRP to 0. Because RC.CCx is Rp/Rp while setting RC.DRP to 0 and the connected A2C cable is a cable with Rp.

  According to TCPCI's specification, Figure 4-20. DRP Initialization and Connection Detection, we need to set RC.CCx before setting RC.DRP to 0.

  ConnectionDetermine CC & VCONN
    - Set RC.CC1 & RC.CC2 per decision
    - Set RC.DRP=0
    - Set TCPC_CONTROl.PlugOrientation
    - Set PC.AutoDischargeDisconnect=1 & PC.EnableVconn

  If I understand correctly, we'll need to do the following step before setting DRP to 0.

@@ -1900,6 +1901,8 @@ static int tcpm_src_attach(struct tcpm_port *port)
        if (port->attached)
                return 0;

+       tcpm_set_cc(port, tcpm_rp_cc(port));
+
        ret = tcpm_set_polarity(port, polarity);
        if (ret < 0)
                return ret;
@@ -2014,6 +2017,8 @@ static int tcpm_snk_attach(struct tcpm_port *port)
        if (port->attached)
                return 0;

+       tcpm_set_cc(port, TYPEC_CC_RD);
+
        ret = tcpm_set_polarity(port, port->cc2 != TYPEC_CC_OPEN ?
                                TYPEC_POLARITY_CC2 : TYPEC_POLARITY_CC1);
        if (ret < 0)

************* Email Confidentiality Notice ********************

The information contained in this e-mail message (including any attachments) may be confidential, proprietary, privileged, or otherwise exempt from disclosure under applicable laws. It is intended to be conveyed only to the designated recipient(s). Any use, dissemination, distribution, printing, retaining or copying of this e-mail (including its attachments) by unintended recipient(s) is strictly prohibited and may be unlawful. If you are not an intended recipient of this e-mail, or believe that you have received this e-mail in error, please notify the sender immediately (by replying to this e-mail), delete any and all copies of this e-mail (including any attachments) from your system, and do not disclose the content of this e-mail to any other person. Thank you!

diff --git a/drivers/staging/typec/tcpci.c b/drivers/staging/typec/tcpci.c index 9a230c6..6fdb179 100644
--- a/drivers/staging/typec/tcpci.c
+++ b/drivers/staging/typec/tcpci.c
@@ -185,6 +185,7 @@ static int tcpci_set_polarity(struct tcpc_dev *tcpc,
       enum typec_cc_polarity polarity)  {
 struct tcpci *tcpci = tcpc_to_tcpci(tcpc);
+unsigned int reg;
 int ret;

 ret = regmap_write(tcpci->regmap, TCPC_TCPC_CTRL, @@ -193,7 +194,17 @@ static int tcpci_set_polarity(struct tcpc_dev *tcpc,
 if (ret < 0)

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [v3,10/12] staging: typec: tcpci: keep the not connecting cc line open
@ 2018-03-20  1:59 Jun Li
  0 siblings, 0 replies; 3+ messages in thread
From: Jun Li @ 2018-03-20  1:59 UTC (permalink / raw)
  To: shufan_lee(李��帆), robh+dt@kernel.org,
	mark.rutland@arm.com, gregkh@linuxfoundation.org,
	heikki.krogerus@linux.intel.com
  Cc: a.hajda@samsung.com, linux@roeck-us.net, yueyao@google.com,
	o_leveque@orange.fr, linux-usb@vger.kernel.org, dl-linux-imx

SGkNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogc2h1ZmFuX2xlZSjA7pX4
t6spIFttYWlsdG86c2h1ZmFuX2xlZUByaWNodGVrLmNvbV0NCj4gU2VudDogMjAxOMTqM9TCMTXI
1SAxNTo0NQ0KPiBUbzogSnVuIExpIDxqdW4ubGlAbnhwLmNvbT47IHJvYmgrZHRAa2VybmVsLm9y
ZzsgbWFyay5ydXRsYW5kQGFybS5jb207DQo+IGdyZWdraEBsaW51eGZvdW5kYXRpb24ub3JnOyBo
ZWlra2kua3JvZ2VydXNAbGludXguaW50ZWwuY29tDQo+IENjOiBhLmhhamRhQHNhbXN1bmcuY29t
OyBsaW51eEByb2Vjay11cy5uZXQ7IHl1ZXlhb0Bnb29nbGUuY29tOw0KPiBvX2xldmVxdWVAb3Jh
bmdlLmZyOyBsaW51eC11c2JAdmdlci5rZXJuZWwub3JnOyBkbC1saW51eC1pbXgNCj4gPGxpbnV4
LWlteEBueHAuY29tPg0KPiBTdWJqZWN0OiBSRTogW1BBVENIIHYzIDEwLzEyXSBzdGFnaW5nOiB0
eXBlYzogdGNwY2k6IGtlZXAgdGhlIG5vdCBjb25uZWN0aW5nDQo+IGNjIGxpbmUgb3Blbg0KPiAN
Cj4gSGkgSnVuLA0KPiANCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogSnVu
IExpIFttYWlsdG86anVuLmxpQG54cC5jb21dDQo+IFNlbnQ6IFRodXJzZGF5LCBNYXJjaCAxNSwg
MjAxOCAzOjAwIFBNDQo+IFRvOiBzaHVmYW5fbGVlKMDulfi3qyk7IHJvYmgrZHRAa2VybmVsLm9y
ZzsgbWFyay5ydXRsYW5kQGFybS5jb207DQo+IGdyZWdraEBsaW51eGZvdW5kYXRpb24ub3JnOyBo
ZWlra2kua3JvZ2VydXNAbGludXguaW50ZWwuY29tDQo+IENjOiBhLmhhamRhQHNhbXN1bmcuY29t
OyBsaW51eEByb2Vjay11cy5uZXQ7IHl1ZXlhb0Bnb29nbGUuY29tOw0KPiBvX2xldmVxdWVAb3Jh
bmdlLmZyOyBsaW51eC11c2JAdmdlci5rZXJuZWwub3JnOyBkbC1saW51eC1pbXgNCj4gU3ViamVj
dDogUkU6IFtQQVRDSCB2MyAxMC8xMl0gc3RhZ2luZzogdHlwZWM6IHRjcGNpOiBrZWVwIHRoZSBu
b3QgY29ubmVjdGluZw0KPiBjYyBsaW5lIG9wZW4NCj4gDQo+IA0KPiANCj4gPiAtLS0tLU9yaWdp
bmFsIE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206IHNodWZhbl9sZWUowO6V+LerKSBbbWFpbHRvOnNo
dWZhbl9sZWVAcmljaHRlay5jb21dDQo+ID4gU2VudDogMjAxOMTqM9TCMTTI1SAxNjo1OQ0KPiA+
IFRvOiBKdW4gTGkgPGp1bi5saUBueHAuY29tPjsgcm9iaCtkdEBrZXJuZWwub3JnOyBtYXJrLnJ1
dGxhbmRAYXJtLmNvbTsNCj4gPiBncmVna2hAbGludXhmb3VuZGF0aW9uLm9yZzsgaGVpa2tpLmty
b2dlcnVzQGxpbnV4LmludGVsLmNvbQ0KPiA+IENjOiBhLmhhamRhQHNhbXN1bmcuY29tOyBsaW51
eEByb2Vjay11cy5uZXQ7IHl1ZXlhb0Bnb29nbGUuY29tOw0KPiA+IG9fbGV2ZXF1ZUBvcmFuZ2Uu
ZnI7IGxpbnV4LXVzYkB2Z2VyLmtlcm5lbC5vcmc7IGRsLWxpbnV4LWlteA0KPiA+IDxsaW51eC1p
bXhAbnhwLmNvbT4NCj4gPiBTdWJqZWN0OiBSRTogW1BBVENIIHYzIDEwLzEyXSBzdGFnaW5nOiB0
eXBlYzogdGNwY2k6IGtlZXAgdGhlIG5vdA0KPiA+IGNvbm5lY3RpbmcgY2MgbGluZSBvcGVuDQo+
ID4NCj4gPiBIaSBKdW4sDQo+ID4NCj4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+
IEZyb206IExpIEp1biBbbWFpbHRvOmp1bi5saUBueHAuY29tXQ0KPiA+IFNlbnQ6IFR1ZXNkYXks
IE1hcmNoIDEzLCAyMDE4IDU6MzUgUE0NCj4gPiBUbzogcm9iaCtkdEBrZXJuZWwub3JnOyBtYXJr
LnJ1dGxhbmRAYXJtLmNvbTsNCj4gPiBncmVna2hAbGludXhmb3VuZGF0aW9uLm9yZzsgaGVpa2tp
Lmtyb2dlcnVzQGxpbnV4LmludGVsLmNvbQ0KPiA+IENjOiBhLmhhamRhQHNhbXN1bmcuY29tOyBq
dW4ubGlAbnhwLmNvbTsgbGludXhAcm9lY2stdXMubmV0Ow0KPiA+IHl1ZXlhb0Bnb29nbGUuY29t
OyBzaHVmYW5fbGVlKMDulfi3qyk7IG9fbGV2ZXF1ZUBvcmFuZ2UuZnI7DQo+ID4gbGludXgtdXNi
QHZnZXIua2VybmVsLm9yZzsgbGludXgtaW14QG54cC5jb20NCj4gPiBTdWJqZWN0OiBbUEFUQ0gg
djMgMTAvMTJdIHN0YWdpbmc6IHR5cGVjOiB0Y3BjaToga2VlcCB0aGUgbm90DQo+ID4gY29ubmVj
dGluZyBjYyBsaW5lIG9wZW4NCj4gPg0KPiA+IFdoaWxlIHNldCBwb2xhcml0eSwgd2Ugc2hvdWxk
IGtlZXAgdGhlIG5vdCBjb25uZWN0aW5nIGNjIGxpbmUgdG8gYmUNCj4gPiBvcGVuIHdoZW4gYXR0
YWNoZWQuDQo+ID4NCj4gPiBTaWduZWQtb2ZmLWJ5OiBMaSBKdW4gPGp1bi5saUBueHAuY29tPg0K
PiA+IC0tLQ0KPiA+ICBkcml2ZXJzL3N0YWdpbmcvdHlwZWMvdGNwY2kuYyB8IDEzICsrKysrKysr
KysrKy0NCj4gPiAgMSBmaWxlIGNoYW5nZWQsIDEyIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24o
LSkNCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9kcml2ZXJzL3N0YWdpbmcvdHlwZWMvdGNwY2kuYw0K
PiA+IGIvZHJpdmVycy9zdGFnaW5nL3R5cGVjL3RjcGNpLmMgaW5kZXgNCj4gPiA5YTIzMGM2Li42
ZmRiMTc5IDEwMDY0NA0KPiA+IC0tLSBhL2RyaXZlcnMvc3RhZ2luZy90eXBlYy90Y3BjaS5jDQo+
ID4gKysrIGIvZHJpdmVycy9zdGFnaW5nL3R5cGVjL3RjcGNpLmMNCj4gPiBAQCAtMTg1LDYgKzE4
NSw3IEBAIHN0YXRpYyBpbnQgdGNwY2lfc2V0X3BvbGFyaXR5KHN0cnVjdCB0Y3BjX2RldiAqdGNw
YywNCj4gPiAgICAgICAgZW51bSB0eXBlY19jY19wb2xhcml0eSBwb2xhcml0eSkgIHsgIHN0cnVj
dCB0Y3BjaSAqdGNwY2kgPQ0KPiA+IHRjcGNfdG9fdGNwY2kodGNwYyk7DQo+ID4gK3Vuc2lnbmVk
IGludCByZWc7DQo+ID4gIGludCByZXQ7DQo+ID4NCj4gPiAgcmV0ID0gcmVnbWFwX3dyaXRlKHRj
cGNpLT5yZWdtYXAsIFRDUENfVENQQ19DVFJMLCBAQCAtMTkzLDcgKzE5NCwxNw0KPiA+IEBAIHN0
YXRpYyBpbnQgdGNwY2lfc2V0X3BvbGFyaXR5KHN0cnVjdCB0Y3BjX2RldiAqdGNwYywgIGlmIChy
ZXQgPCAwKQ0KPiA+IHJldHVybiByZXQ7DQo+ID4NCj4gPiAtcmV0dXJuIDA7DQo+ID4gKy8qIFNl
dCB0aGUgbm90IGNvbm5lY3RlZCBjYyBsaW5lIG9wZW4gKi8gcmV0ID0NCj4gPiArcmVnbWFwX3Jl
YWQodGNwY2ktPnJlZ21hcCwgVENQQ19ST0xFX0NUUkwsICZyZWcpOyBpZiAocmV0IDwgMCkgcmV0
dXJuDQo+ID4gK3JldDsgaWYgKHBvbGFyaXR5ID09IFRZUEVDX1BPTEFSSVRZX0NDMikgcmV0ID0N
Cj4gPiArVENQQ19ST0xFX0NUUkxfQ0MxX1NISUZUOyBlbHNlIHJldCA9IFRDUENfUk9MRV9DVFJM
X0NDMl9TSElGVDsgcmVnDQo+IHw9DQo+ID4gK1RDUENfUk9MRV9DVFJMX0NDX09QRU4gPDwgcmV0
OyByZWcgJj0gflRDUENfUk9MRV9DVFJMX0RSUDsgcmV0dXJuDQo+ID4gK3JlZ21hcF93cml0ZSh0
Y3BjaS0+cmVnbWFwLCBUQ1BDX1JPTEVfQ1RSTCwgcmVnKTsNCj4gPiAgfQ0KPiA+DQo+ID4gIHN0
YXRpYyBpbnQgdGNwY2lfc2V0X3Zjb25uKHN0cnVjdCB0Y3BjX2RldiAqdGNwYywgYm9vbCBlbmFi
bGUpDQo+ID4gLS0NCj4gPiAyLjcuNA0KPiA+DQo+ID4gICBJIGFwcGxpZWQgYWxsIG9mIHlvdXIg
cGF0Y2hlcyBhbmQgdGVzdGVkIHdpdGggUlQxNzExSC4NCj4gPiAgIEkgbWV0IGEgY2FzZSBhcyBm
b2xsb3dpbmc6DQo+ID4gICAxLiBUaGUgc3RhdGUgbWFjaGluZSBzdGFydHMgdG9nZ2xpbmcgd2l0
aCBSQy5DQ3ggPSBScC9ScA0KPiA+ICAgMi4gQ29ubmVjdCB0byBhZGFwdGVyIHdpdGggYW4gQTJD
IGNhYmxlDQo+ID4gICAzLiBvcGVuL29wZW4gaXMgcmVjZWl2ZWQgYWZ0ZXIgc2V0dGluZyBSQy5E
UlAgdG8gMC4gQmVjYXVzZSBSQy5DQ3gNCj4gPiBpcyBScC9ScCB3aGlsZSBzZXR0aW5nIFJDLkRS
UCB0byAwIGFuZCB0aGUgY29ubmVjdGVkIEEyQyBjYWJsZSBpcyBhIGNhYmxlDQo+IHdpdGggUnAu
DQo+ID4NCj4gDQo+IFdoYXQncyB0aGUgUkMuQ0N4IHZhbHVlIGJlZm9yZSBzZXR0aW5nIFJDLkRS
UCBpbiB5b3VyIGNhc2U/DQo+IEl0IGlzIFJwL1JwLCBpLmUuIHJlZzB4MUEgPSAweDRBDQo+IA0K
PiBJIHN1cHBvc2UgdGhlIFJDLkNDeCBzaG91bGQgYmUgdXBkYXRlZCBhY2NvcmRpbmdseSBieSBU
Q1BDIChhbmQgaXRzIGZpcm13YXJlKSwNCj4gUlQxNzExSCBzdGlsbCBrZWVwIHRoZSBzdGFydGlu
ZyB2YWx1ZSBhZnRlciBkZXRlY3RlZCBhIFJwPw0KPiBZZXMsIGFjY29yZGluZyB0byBUQ1BDSSdz
IHNwZWMsIHVwb24gY29ubmVjdGlvbiwgdGhlIFRDUEMgc2hhbGwgcmVzb2x2ZSB0bw0KPiBlaXRo
ZXIgYW4gUnAgb3IgUmQgYW5kIHJlcG9ydCB0aGUgQ0MxL0NDMiBTdGF0ZSBpbiB0aGUgQ0NfU1RB
VFVTIHJlZ2lzdGVyLg0KPiBJdCBzZWVtcyBsaWtlIHdlIG9ubHkgbmVlZCB0byBwcmVzZW50IGNv
cnJlY3Qgcm9sZSBhbmQgcmVwb3J0IHRvIENDX1NUQVRVUw0KPiByZWdpc3RlciBidXQgbm90IG5l
Y2Vzc2FyeSB0byByZXBvcnQgdGhlIHJvbGUgdG8gUkMuQ0N4Lg0KPiBTbywgUlQxNzExSCdzIGZp
cm13YXJlIG9ubHkgcHJlc2VudCBSZCBhbmQgcmVwb3J0IGl0IHRvIHJlZzB4MUQoQ0NfU1RBVFVT
KQ0KPiBidXQgbm90IGNoYW5nZSB0aGUgdmFsdWUgb2YgcmVnMHgxQSAoUkMuQ0N4KS4NCj4gDQoN
Cktub3cgeW91ciBzaXR1YXRpb24sIHNlZW1zIHdlIG5lZWQgc2V0IGNjIGFmdGVyIGF0dGFjaCBv
bmx5IGZvciBkcnAgdG9nZ2xpbmcgY2FzZS4NCkkgd2lsbCB1cGRhdGUgdGhpcyBwYXRjaCwgdGhh
bmtzLg0KDQpKdW4NCg0KPiA+ICAgQWNjb3JkaW5nIHRvIFRDUENJJ3Mgc3BlY2lmaWNhdGlvbiwg
RmlndXJlIDQtMjAuIERSUCBJbml0aWFsaXphdGlvbg0KPiA+IGFuZCBDb25uZWN0aW9uIERldGVj
dGlvbiwgd2UgbmVlZCB0byBzZXQgUkMuQ0N4IGJlZm9yZSBzZXR0aW5nIFJDLkRSUCB0byAwLg0K
PiA+DQo+ID4gICBDb25uZWN0aW9uRGV0ZXJtaW5lIENDICYgVkNPTk4NCj4gPiAgICAgLSBTZXQg
UkMuQ0MxICYgUkMuQ0MyIHBlciBkZWNpc2lvbg0KPiA+ICAgICAtIFNldCBSQy5EUlA9MA0KPiA+
ICAgICAtIFNldCBUQ1BDX0NPTlRST2wuUGx1Z09yaWVudGF0aW9uDQo+ID4gICAgIC0gU2V0IFBD
LkF1dG9EaXNjaGFyZ2VEaXNjb25uZWN0PTEgJiBQQy5FbmFibGVWY29ubg0KPiA+DQo+ID4gICBJ
ZiBJIHVuZGVyc3RhbmQgY29ycmVjdGx5LCB3ZSdsbCBuZWVkIHRvIGRvIHRoZSBmb2xsb3dpbmcg
c3RlcA0KPiA+IGJlZm9yZSBzZXR0aW5nIERSUCB0byAwLg0KPiANCj4gVGhlIHJlYWQgb3V0IHZh
bHVlIGhhcyB0aGUgY29ycmVjdCBSQy5DQ3ggaW4gbXkgSFcsIHNvIGFub3RoZXIgcXVlc3Rpb24g
aXM6DQo+IHdpdGhvdXQgbXkgcGF0Y2ggb2YgdGhpcyBhbmQgYmVsb3cgY2hhbmdlLCBob3cgZG9l
cyB5b3VyIGNoaXAgY2FuIHdvcmsgaW4NCj4gdGhpcyBjYXNlIGJlZm9yZT8NCj4gSWYgd2UgZG9u
J3Qgd3JpdGUgUkMuRFJQIHRvIDAgYWZ0ZXIgYXR0YWNoZWQsIFJDLkNDeCB3aWxsIG5vdCB0YWtl
IGVmZmVjdC4NCj4gUlQxNzExSCB3aWxsIHByZXNlbnQgdGhlIGNvcnJlY3Qgcm9sZSB0aGF0IGRl
dGVjdGVkIGJ5IHRvZ2dsaW5nLCBpLmUuIHRoZSByb2xlDQo+IHNob3dzIGluIHJlZzB4MUQoQ0Nf
U1RBVFVTKS4NCj4gDQo+IFJDLkRSUCA9PSAxIGFuZCBSQy5DQ3ggaXMgUnAvUnAgYnV0IGFjdHVh
bGx5IHlvdXIgdHlwZWMgY2hpcCBpcyBwcmVzZW50aW5nIFJkPw0KPiAoc2hvdyBtZSB0aGUgUkMg
dmFsdWUgd2hlbiBzZXQgcG9sYXJpdHkgd2l0aG91dCBteSBwYXRjaCkgWWVzLCB2YWx1ZSBvZg0K
PiBSZWcweDFBKFJvbGUgQ29udHJvbCkgaXMgMHg0QS4NCj4gDQo+IEp1biBMaQ0KPiA+DQo+ID4g
QEAgLTE5MDAsNiArMTkwMSw4IEBAIHN0YXRpYyBpbnQgdGNwbV9zcmNfYXR0YWNoKHN0cnVjdCB0
Y3BtX3BvcnQNCj4gKnBvcnQpDQo+ID4gICAgICAgICBpZiAocG9ydC0+YXR0YWNoZWQpDQo+ID4g
ICAgICAgICAgICAgICAgIHJldHVybiAwOw0KPiA+DQo+ID4gKyAgICAgICB0Y3BtX3NldF9jYyhw
b3J0LCB0Y3BtX3JwX2NjKHBvcnQpKTsNCj4gPiArDQo+ID4gICAgICAgICByZXQgPSB0Y3BtX3Nl
dF9wb2xhcml0eShwb3J0LCBwb2xhcml0eSk7DQo+ID4gICAgICAgICBpZiAocmV0IDwgMCkNCj4g
PiAgICAgICAgICAgICAgICAgcmV0dXJuIHJldDsNCj4gPiBAQCAtMjAxNCw2ICsyMDE3LDggQEAg
c3RhdGljIGludCB0Y3BtX3Nua19hdHRhY2goc3RydWN0IHRjcG1fcG9ydA0KPiAqcG9ydCkNCj4g
PiAgICAgICAgIGlmIChwb3J0LT5hdHRhY2hlZCkNCj4gPiAgICAgICAgICAgICAgICAgcmV0dXJu
IDA7DQo+ID4NCj4gPiArICAgICAgIHRjcG1fc2V0X2NjKHBvcnQsIFRZUEVDX0NDX1JEKTsNCj4g
PiArDQo+ID4gICAgICAgICByZXQgPSB0Y3BtX3NldF9wb2xhcml0eShwb3J0LCBwb3J0LT5jYzIg
IT0gVFlQRUNfQ0NfT1BFTiA/DQo+ID4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBU
WVBFQ19QT0xBUklUWV9DQzIgOg0KPiA+IFRZUEVDX1BPTEFSSVRZX0NDMSk7DQo+ID4gICAgICAg
ICBpZiAocmV0IDwgMCkNCj4gPg0KPiA+ICoqKioqKioqKioqKiogRW1haWwgQ29uZmlkZW50aWFs
aXR5IE5vdGljZSAqKioqKioqKioqKioqKioqKioqKg0KPiA+DQo+ID4gVGhlIGluZm9ybWF0aW9u
IGNvbnRhaW5lZCBpbiB0aGlzIGUtbWFpbCBtZXNzYWdlIChpbmNsdWRpbmcgYW55DQo+ID4gYXR0
YWNobWVudHMpIG1heSBiZSBjb25maWRlbnRpYWwsIHByb3ByaWV0YXJ5LCBwcml2aWxlZ2VkLCBv
cg0KPiA+IG90aGVyd2lzZSBleGVtcHQgZnJvbSBkaXNjbG9zdXJlIHVuZGVyIGFwcGxpY2FibGUg
bGF3cy4gSXQgaXMgaW50ZW5kZWQNCj4gPiB0byBiZSBjb252ZXllZCBvbmx5IHRvIHRoZSBkZXNp
Z25hdGVkIHJlY2lwaWVudChzKS4gQW55IHVzZSwNCj4gPiBkaXNzZW1pbmF0aW9uLCBkaXN0cmli
dXRpb24sIHByaW50aW5nLCByZXRhaW5pbmcgb3IgY29weWluZyBvZiB0aGlzDQo+ID4gZS1tYWls
IChpbmNsdWRpbmcgaXRzIGF0dGFjaG1lbnRzKSBieSB1bmludGVuZGVkIHJlY2lwaWVudChzKSBp
cw0KPiA+IHN0cmljdGx5IHByb2hpYml0ZWQgYW5kIG1heSBiZSB1bmxhd2Z1bC4gSWYgeW91IGFy
ZSBub3QgYW4gaW50ZW5kZWQNCj4gPiByZWNpcGllbnQgb2YgdGhpcyBlLW1haWwsIG9yIGJlbGll
dmUgdGhhdCB5b3UgaGF2ZSByZWNlaXZlZCB0aGlzDQo+ID4gZS1tYWlsIGluIGVycm9yLCBwbGVh
c2Ugbm90aWZ5IHRoZSBzZW5kZXIgaW1tZWRpYXRlbHkgKGJ5IHJlcGx5aW5nIHRvDQo+ID4gdGhp
cyBlLW1haWwpLCBkZWxldGUgYW55IGFuZCBhbGwgY29waWVzIG9mIHRoaXMgZS1tYWlsIChpbmNs
dWRpbmcgYW55DQo+IGF0dGFjaG1lbnRzKSBmcm9tIHlvdXIgc3lzdGVtLCBhbmQgZG8gbm90IGRp
c2Nsb3NlIHRoZSBjb250ZW50IG9mIHRoaXMgZS1tYWlsDQo+IHRvIGFueSBvdGhlciBwZXJzb24u
IFRoYW5rIHlvdSENCj4gKioqKioqKioqKioqKiBFbWFpbCBDb25maWRlbnRpYWxpdHkgTm90aWNl
ICoqKioqKioqKioqKioqKioqKioqDQo+IA0KPiBUaGUgaW5mb3JtYXRpb24gY29udGFpbmVkIGlu
IHRoaXMgZS1tYWlsIG1lc3NhZ2UgKGluY2x1ZGluZyBhbnkgYXR0YWNobWVudHMpDQo+IG1heSBi
ZSBjb25maWRlbnRpYWwsIHByb3ByaWV0YXJ5LCBwcml2aWxlZ2VkLCBvciBvdGhlcndpc2UgZXhl
bXB0IGZyb20NCj4gZGlzY2xvc3VyZSB1bmRlciBhcHBsaWNhYmxlIGxhd3MuIEl0IGlzIGludGVu
ZGVkIHRvIGJlIGNvbnZleWVkIG9ubHkgdG8gdGhlDQo+IGRlc2lnbmF0ZWQgcmVjaXBpZW50KHMp
LiBBbnkgdXNlLCBkaXNzZW1pbmF0aW9uLCBkaXN0cmlidXRpb24sIHByaW50aW5nLCByZXRhaW5p
bmcNCj4gb3IgY29weWluZyBvZiB0aGlzIGUtbWFpbCAoaW5jbHVkaW5nIGl0cyBhdHRhY2htZW50
cykgYnkgdW5pbnRlbmRlZCByZWNpcGllbnQocykNCj4gaXMgc3RyaWN0bHkgcHJvaGliaXRlZCBh
bmQgbWF5IGJlIHVubGF3ZnVsLiBJZiB5b3UgYXJlIG5vdCBhbiBpbnRlbmRlZCByZWNpcGllbnQN
Cj4gb2YgdGhpcyBlLW1haWwsIG9yIGJlbGlldmUgdGhhdCB5b3UgaGF2ZSByZWNlaXZlZCB0aGlz
IGUtbWFpbCBpbiBlcnJvciwgcGxlYXNlDQo+IG5vdGlmeSB0aGUgc2VuZGVyIGltbWVkaWF0ZWx5
IChieSByZXBseWluZyB0byB0aGlzIGUtbWFpbCksIGRlbGV0ZSBhbnkgYW5kIGFsbA0KPiBjb3Bp
ZXMgb2YgdGhpcyBlLW1haWwgKGluY2x1ZGluZyBhbnkgYXR0YWNobWVudHMpIGZyb20geW91ciBz
eXN0ZW0sIGFuZCBkbyBub3QNCj4gZGlzY2xvc2UgdGhlIGNvbnRlbnQgb2YgdGhpcyBlLW1haWwg
dG8gYW55IG90aGVyIHBlcnNvbi4gVGhhbmsgeW91IQ0K
---
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-03-20  1:59 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-03-13  9:34 [v3,10/12] staging: typec: tcpci: keep the not connecting cc line open Jun Li
  -- strict thread matches above, loose matches on Subject: below --
2018-03-14  8:59 shufan_lee(李書帆)
2018-03-20  1:59 Jun Li

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).