From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-eopbgr50052.outbound.protection.outlook.com ([40.107.5.52]:3776 "EHLO EUR03-VE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750995AbeEPIf5 (ORCPT ); Wed, 16 May 2018 04:35:57 -0400 From: Peter Chen Subject: RE: [PATCH v5 12/14] staging: typec: tcpci: keep the not connecting cc line open Date: Wed, 16 May 2018 08:35:50 +0000 Message-ID: References: <1525307094-27402-1-git-send-email-jun.li@nxp.com> <1525307094-27402-13-git-send-email-jun.li@nxp.com> In-Reply-To: <1525307094-27402-13-git-send-email-jun.li@nxp.com> Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Sender: devicetree-owner@vger.kernel.org To: Jun Li , "robh+dt@kernel.org" , "gregkh@linuxfoundation.org" , "heikki.krogerus@linux.intel.com" , "linux@roeck-us.net" Cc: "a.hajda@samsung.com" , "cw00.choi@samsung.com" , "shufan_lee@richtek.com" , "gsomlo@gmail.com" , "devicetree@vger.kernel.org" , "linux-usb@vger.kernel.org" , dl-linux-imx List-ID: =20 >=20 > While set polarity, we should keep the not connecting cc line to be open. >=20 keep the disconnected cc line open? Peter > Signed-off-by: Li Jun > --- > drivers/staging/typec/tcpci.c | 18 ++++++++++++++---- > 1 file changed, 14 insertions(+), 4 deletions(-) >=20 > diff --git a/drivers/staging/typec/tcpci.c b/drivers/staging/typec/tcpci.= c index > 5c48810..5c0c5e3 100644 > --- a/drivers/staging/typec/tcpci.c > +++ b/drivers/staging/typec/tcpci.c > @@ -185,15 +185,25 @@ static int tcpci_set_polarity(struct tcpc_dev *tcpc= , > enum typec_cc_polarity polarity) { > struct tcpci *tcpci =3D tcpc_to_tcpci(tcpc); > + unsigned int reg; > int ret; >=20 > - ret =3D regmap_write(tcpci->regmap, TCPC_TCPC_CTRL, > - (polarity =3D=3D TYPEC_POLARITY_CC2) ? > - TCPC_TCPC_CTRL_ORIENTATION : 0); > + /* Keep the disconnect cc line open */ > + ret =3D regmap_read(tcpci->regmap, TCPC_ROLE_CTRL, ®); > if (ret < 0) > return ret; >=20 > - return 0; > + if (polarity =3D=3D TYPEC_POLARITY_CC2) > + reg |=3D TCPC_ROLE_CTRL_CC_OPEN << > TCPC_ROLE_CTRL_CC1_SHIFT; > + else > + reg |=3D TCPC_ROLE_CTRL_CC_OPEN << > TCPC_ROLE_CTRL_CC2_SHIFT; > + ret =3D regmap_write(tcpci->regmap, TCPC_ROLE_CTRL, reg); > + if (ret < 0) > + return ret; > + > + return regmap_write(tcpci->regmap, TCPC_TCPC_CTRL, > + (polarity =3D=3D TYPEC_POLARITY_CC2) ? > + TCPC_TCPC_CTRL_ORIENTATION : 0); > } >=20 > static int tcpci_set_vconn(struct tcpc_dev *tcpc, bool enable) > -- > 2.7.4 From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [v5,12/14] staging: typec: tcpci: keep the not connecting cc line open From: Peter Chen Message-Id: Date: Wed, 16 May 2018 08:35:50 +0000 To: Jun Li , "robh+dt@kernel.org" , "gregkh@linuxfoundation.org" , "heikki.krogerus@linux.intel.com" , "linux@roeck-us.net" Cc: "a.hajda@samsung.com" , "cw00.choi@samsung.com" , "shufan_lee@richtek.com" , "gsomlo@gmail.com" , "devicetree@vger.kernel.org" , "linux-usb@vger.kernel.org" , dl-linux-imx List-ID: PiAKPiBXaGlsZSBzZXQgcG9sYXJpdHksIHdlIHNob3VsZCBrZWVwIHRoZSBub3QgY29ubmVjdGlu ZyBjYyBsaW5lIHRvIGJlIG9wZW4uCj4gCgprZWVwIHRoZSBkaXNjb25uZWN0ZWQgY2MgbGluZSBv cGVuPwoKUGV0ZXIKCj4gU2lnbmVkLW9mZi1ieTogTGkgSnVuIDxqdW4ubGlAbnhwLmNvbT4KPiAt LS0KPiAgZHJpdmVycy9zdGFnaW5nL3R5cGVjL3RjcGNpLmMgfCAxOCArKysrKysrKysrKysrKy0t LS0KPiAgMSBmaWxlIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCj4g Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvc3RhZ2luZy90eXBlYy90Y3BjaS5jIGIvZHJpdmVycy9z dGFnaW5nL3R5cGVjL3RjcGNpLmMgaW5kZXgKPiA1YzQ4ODEwLi41YzBjNWUzIDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvc3RhZ2luZy90eXBlYy90Y3BjaS5jCj4gKysrIGIvZHJpdmVycy9zdGFnaW5n L3R5cGVjL3RjcGNpLmMKPiBAQCAtMTg1LDE1ICsxODUsMjUgQEAgc3RhdGljIGludCB0Y3BjaV9z ZXRfcG9sYXJpdHkoc3RydWN0IHRjcGNfZGV2ICp0Y3BjLAo+ICAJCQkgICAgICBlbnVtIHR5cGVj X2NjX3BvbGFyaXR5IHBvbGFyaXR5KSAgewo+ICAJc3RydWN0IHRjcGNpICp0Y3BjaSA9IHRjcGNf dG9fdGNwY2kodGNwYyk7Cj4gKwl1bnNpZ25lZCBpbnQgcmVnOwo+ICAJaW50IHJldDsKPiAKPiAt CXJldCA9IHJlZ21hcF93cml0ZSh0Y3BjaS0+cmVnbWFwLCBUQ1BDX1RDUENfQ1RSTCwKPiAtCQkJ ICAgKHBvbGFyaXR5ID09IFRZUEVDX1BPTEFSSVRZX0NDMikgPwo+IC0JCQkgICBUQ1BDX1RDUENf Q1RSTF9PUklFTlRBVElPTiA6IDApOwo+ICsJLyogS2VlcCB0aGUgZGlzY29ubmVjdCBjYyBsaW5l IG9wZW4gKi8KPiArCXJldCA9IHJlZ21hcF9yZWFkKHRjcGNpLT5yZWdtYXAsIFRDUENfUk9MRV9D VFJMLCAmcmVnKTsKPiAgCWlmIChyZXQgPCAwKQo+ICAJCXJldHVybiByZXQ7Cj4gCj4gLQlyZXR1 cm4gMDsKPiArCWlmIChwb2xhcml0eSA9PSBUWVBFQ19QT0xBUklUWV9DQzIpCj4gKwkJcmVnIHw9 IFRDUENfUk9MRV9DVFJMX0NDX09QRU4gPDwKPiBUQ1BDX1JPTEVfQ1RSTF9DQzFfU0hJRlQ7Cj4g KwllbHNlCj4gKwkJcmVnIHw9IFRDUENfUk9MRV9DVFJMX0NDX09QRU4gPDwKPiBUQ1BDX1JPTEVf Q1RSTF9DQzJfU0hJRlQ7Cj4gKwlyZXQgPSByZWdtYXBfd3JpdGUodGNwY2ktPnJlZ21hcCwgVENQ Q19ST0xFX0NUUkwsIHJlZyk7Cj4gKwlpZiAocmV0IDwgMCkKPiArCQlyZXR1cm4gcmV0Owo+ICsK PiArCXJldHVybiByZWdtYXBfd3JpdGUodGNwY2ktPnJlZ21hcCwgVENQQ19UQ1BDX0NUUkwsCj4g KwkJCSAgIChwb2xhcml0eSA9PSBUWVBFQ19QT0xBUklUWV9DQzIpID8KPiArCQkJICAgVENQQ19U Q1BDX0NUUkxfT1JJRU5UQVRJT04gOiAwKTsKPiAgfQo+IAo+ICBzdGF0aWMgaW50IHRjcGNpX3Nl dF92Y29ubihzdHJ1Y3QgdGNwY19kZXYgKnRjcGMsIGJvb2wgZW5hYmxlKQo+IC0tCj4gMi43LjQK LS0tClRvIHVuc3Vic2NyaWJlIGZyb20gdGhpcyBsaXN0OiBzZW5kIHRoZSBsaW5lICJ1bnN1YnNj cmliZSBsaW51eC11c2IiIGluCnRoZSBib2R5IG9mIGEgbWVzc2FnZSB0byBtYWpvcmRvbW9Admdl ci5rZXJuZWwub3JnCk1vcmUgbWFqb3Jkb21vIGluZm8gYXQgIGh0dHA6Ly92Z2VyLmtlcm5lbC5v cmcvbWFqb3Jkb21vLWluZm8uaHRtbAo=