From mboxrd@z Thu Jan 1 00:00:00 1970 From: Caesar Wang Subject: Re: [PATCH] pinctrl: rockchip: fix pull setting error for rk3399 Date: Wed, 11 May 2016 11:31:25 +0800 Message-ID: <5732A78D.7040308@rock-chips.com> References: <1462878896-28956-1-git-send-email-wxt@rock-chips.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+glpar-linux-rockchip=m.gmane.org-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org To: Doug Anderson Cc: Heiko Stuebner , "open list:ARM/Rockchip SoC..." , Linus Walleij , "linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , "linux-gpio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , Stephen Barber , David Wu , Brian Norris , "linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org" , Caesar Wang List-Id: linux-gpio@vger.kernel.org RG91ZywKCuS6jiAyMDE25bm0MDXmnIgxMeaXpSAwNTowNywgRG91ZyBBbmRlcnNvbiDlhpnpgZM6 Cj4gQ2Flc2FyIC8gRGF2aWQsCj4KPiBPbiBUdWUsIE1heSAxMCwgMjAxNiBhdCA0OjE0IEFNLCBD YWVzYXIgV2FuZyA8d3h0QHJvY2stY2hpcHMuY29tPiB3cm90ZToKPj4gRnJvbTogRGF2aWQgV3Ug PGRhdmlkLnd1QHJvY2stY2hpcHMuY29tPgo+Pgo+PiBUaGlzIHBhdGNoIGZpeGVzIHRoZSBwaW5j dHJsIHB1bGwgYmlhcyBzZXR0aW5nLCBzaW5jZSB0aGUgcHVsbCB1cC9kb3duCj4+IHNldHRpbmcg aXMgdGhlIGNvbnRyYXJ5IGZvciBncGlvMC4KPiBDb21taXQgbWVzc2FnZSBvbmx5IG1lbnRpb25z IGdwaW8wLCBidXQgZ3BpbzIgaXMgYWxzbyBmaXhlZCBpbiB0aGUKPiBjb21taXQuICBQbGVhc2Ug bWVudGlvbiBncGlvMiBpbiB0aGUgY29tbWl0IG1lc3NhZ2UuCgpGaXggaXQgaW4gbmV4dCB2ZXJz aW9uLgoKPgo+PiAgRnJvbSB0aGUgVFJNIHNhaWQsIHRoZSBncGlvMCBwdWxsIHBvbGFyaXR5IHNl dHRpbmc6Cj4+IGdwaW8wYV9wIChncGlvMCApCj4+IEdQSU8wQSBQRS9QUyBwcm9ncmFtbWF0aW9u IHNlY3Rpb24sIGV2ZXJ5Cj4+IEdQSU8gYml0IGNvcnJlc3BvbmRpbmcgdG8gMmJpdHNbUFM6UEVd Cj4+IDInYjAwOiBaKE5vcmFtbCBvcGVyYXRvbik7Cj4+IDInYjExOiB3ZWFrIDEocHVsbC11cCk7 Cj4+IDInYjAxOiB3ZWFrIDAocHVsbC1kb3duKTsKPj4gMidiMTA6IFooTm9yYW1sIG9wZXJhdG9u KTsKPiBEZXNwaXRlIHRoZSBmYWN0IHRoYXQgdGhlIHR5cG8gKE5vcmFsbSB2cy4gTm9ybWFsKSBp cyBwcmVzZW50IGluIHRoZQo+IFRSTSwgbWF5YmUgd2Ugc2hvdWxkIGZpeCBpdCBoZXJlPwoKWWVw LCBkaXR0by4KCj4gPGN1dD4KPgo+ICsKPiArICAgICAgICAgICAgICAgaWYgKHJldCA8IDApIHsK PiArICAgICAgICAgICAgICAgICAgICAgICBkZXZfZXJyKGluZm8tPmRldiwgInVua25vd24gcHVs bCBzZXR0aW5nICVkXG4iLCBwdWxsKTsKPiBuaXQ6IHdoeSBjaGFuZ2UgdGhlIGVycm9yIG1lc3Nh Z2U/ICBPbGQgbWVzc2FnZSB3YXMgInVuc3VwcG9ydGVkIgo+IGluc3RlYWQgb2YgeW91ciBuZXcg InVua25vd24iLiAgInVuc3VwcG9ydGVkIiB3YXMgYmV0dGVyIElNSE8uCgpPa2F5LCBzb3VuZCBy ZXNvbmFibGUuCgo+Cj4KPj4gLSAgICAgICBQSU5fQkFOS19EUlZfRkxBR1MoMiwgMzIsICJncGlv MiIsIERSVl9UWVBFX0lPXzFWOF9PUl8zVjAsCj4+IC0gICAgICAgICAgICAgICAgICAgICAgICAg IERSVl9UWVBFX0lPXzFWOF9PUl8zVjAsCj4+IC0gICAgICAgICAgICAgICAgICAgICAgICAgIERS Vl9UWVBFX0lPXzFWOF9PTkxZLAo+PiAtICAgICAgICAgICAgICAgICAgICAgICAgICBEUlZfVFlQ RV9JT18xVjhfT05MWQo+PiAtICAgICAgICAgICAgICAgICAgICAgICAgICApLAo+PiArICAgICAg IFBJTl9CQU5LX0RSVl9GTEFHU19QVUxMX0ZMQUdTKDIsIDMyLCAiZ3BpbzIiLCBEUlZfVFlQRV9J T18xVjhfT1JfM1YwLAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERS Vl9UWVBFX0lPXzFWOF9PUl8zVjAsCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgRFJWX1RZUEVfSU9fMVY4X09OTFksCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgRFJWX1RZUEVfSU9fMVY4X09OTFksCj4+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgUFVMTF9UWVBFX0lPX0RFRkFVTFQsCj4+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgUFVMTF9UWVBFX0lPX0RFRkFVTFQsCj4+Cj4gQXJlIHlv dSBjZXJ0YWluIHRoYXQgZ3BpbzIgYmVoYXZlcyB0aGUgc2FtZSB3YXk/ICBUaGUgVFJNIEkgaGF2 ZSBzYXlzCj4gdGhpcyBmb3IgR1BJTzJDIGFuZCBHUElPMkQ6CgorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFBVTExfVFlQRV9JT18xVjhfT05MWSwKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBQVUxMX1RZUEVfSU9fMVY4X09OTFkKClllcCwgc28gdGhp cyBqdXN0IHNldCB0aGUgZ3BpbzJjJmdwaW8yZCBpbiB0aGlzIGZ1bmN0aW9uLgoKPgo+IDInYjAw OiBwZXJ2aW91cy1zdGF0ZQo+IDInYjAxOiB3ZWFrIDAocHVsbC1kb3duKTsKPiAyJ2IxMDogcGVy dmlvdXMtc3RhdGUKPiAyJ2IxMTogd2VhayAxKHB1bGwtdXApOwo+Cj4gQXNzdW1pbmcgdGhhdCAi cGVydmlvdXMtc3RhdGUiIGlzIGEgc2ltcGxlIHR5cG8gZm9yICJwcmV2aW91cyBzdGF0ZSIKPiB0 aGF0IHdvdWxkIGltcGx5IHRoYXQgaXQgd2FzIGJlaGF2aW5nIGFzICJidXMgaG9sZCIgYW5kIF9u b3RfICJiaWFzCj4gZGlzYWJsZSIuCgpJIHdpbGwgc2F5IHRoYXQgVFJNIG1hZGUgdGhlIG1pc3Rh a2Ugc2luY2UgdGhpcyBpcyAqbm90KiBleGlzdC4KT2theSwgZml4ZXMgYnkgdGhlIG5ld2VyIFRS TS4KCj4KPiBOb3RlOiBpZiBpdCBhY3R1YWxseSBpcyBhICJidXMgaG9sZCIgc3RhdGUgdGhlbiB3 ZSdsbCBoYXZlIHRvIGZpZ3VyZQo+IG91dCBob3cgdGhpcyB3b3VsZCB3b3JrIHdpdGggZXhpc3Rp bmcgZGV2aWNlIHRyZWVzLiAgSSdkIGltYWdpbmUgdGhhdAo+IHRoZXkgYXJlIGN1cnJlbnRseSBz cGVjaWZ5aW5nICJiaWFzIGRpc2FibGUiIGFuZCB0ZWNobmljYWxseSB0aGF0Cj4gbWlnaHQgbm90 IGJlIHBvc3NpYmxlPwo+Cj4KPgo+IC1Eb3VnCj4KPiBfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwo+IExpbnV4LXJvY2tjaGlwIG1haWxpbmcgbGlzdAo+IExp bnV4LXJvY2tjaGlwQGxpc3RzLmluZnJhZGVhZC5vcmcKPiBodHRwOi8vbGlzdHMuaW5mcmFkZWFk Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LXJvY2tjaGlwCj4KCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkxpbnV4LXJvY2tjaGlwIG1haWxpbmcgbGlz dApMaW51eC1yb2NrY2hpcEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRl YWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtcm9ja2NoaXAK From mboxrd@z Thu Jan 1 00:00:00 1970 From: wxt@rock-chips.com (Caesar Wang) Date: Wed, 11 May 2016 11:31:25 +0800 Subject: [PATCH] pinctrl: rockchip: fix pull setting error for rk3399 In-Reply-To: References: <1462878896-28956-1-git-send-email-wxt@rock-chips.com> Message-ID: <5732A78D.7040308@rock-chips.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Doug, ? 2016?05?11? 05:07, Doug Anderson ??: > Caesar / David, > > On Tue, May 10, 2016 at 4:14 AM, Caesar Wang wrote: >> From: David Wu >> >> This patch fixes the pinctrl pull bias setting, since the pull up/down >> setting is the contrary for gpio0. > Commit message only mentions gpio0, but gpio2 is also fixed in the > commit. Please mention gpio2 in the commit message. Fix it in next version. > >> From the TRM said, the gpio0 pull polarity setting: >> gpio0a_p (gpio0 ) >> GPIO0A PE/PS programmation section, every >> GPIO bit corresponding to 2bits[PS:PE] >> 2'b00: Z(Noraml operaton); >> 2'b11: weak 1(pull-up); >> 2'b01: weak 0(pull-down); >> 2'b10: Z(Noraml operaton); > Despite the fact that the typo (Noralm vs. Normal) is present in the > TRM, maybe we should fix it here? Yep, ditto. > > > + > + if (ret < 0) { > + dev_err(info->dev, "unknown pull setting %d\n", pull); > nit: why change the error message? Old message was "unsupported" > instead of your new "unknown". "unsupported" was better IMHO. Okay, sound resonable. > > >> - PIN_BANK_DRV_FLAGS(2, 32, "gpio2", DRV_TYPE_IO_1V8_OR_3V0, >> - DRV_TYPE_IO_1V8_OR_3V0, >> - DRV_TYPE_IO_1V8_ONLY, >> - DRV_TYPE_IO_1V8_ONLY >> - ), >> + PIN_BANK_DRV_FLAGS_PULL_FLAGS(2, 32, "gpio2", DRV_TYPE_IO_1V8_OR_3V0, >> + DRV_TYPE_IO_1V8_OR_3V0, >> + DRV_TYPE_IO_1V8_ONLY, >> + DRV_TYPE_IO_1V8_ONLY, >> + PULL_TYPE_IO_DEFAULT, >> + PULL_TYPE_IO_DEFAULT, >> > Are you certain that gpio2 behaves the same way? The TRM I have says > this for GPIO2C and GPIO2D: + PULL_TYPE_IO_1V8_ONLY, + PULL_TYPE_IO_1V8_ONLY Yep, so this just set the gpio2c&gpio2d in this function. > > 2'b00: pervious-state > 2'b01: weak 0(pull-down); > 2'b10: pervious-state > 2'b11: weak 1(pull-up); > > Assuming that "pervious-state" is a simple typo for "previous state" > that would imply that it was behaving as "bus hold" and _not_ "bias > disable". I will say that TRM made the mistake since this is *not* exist. Okay, fixes by the newer TRM. > > Note: if it actually is a "bus hold" state then we'll have to figure > out how this would work with existing device trees. I'd imagine that > they are currently specifying "bias disable" and technically that > might not be possible? > > > > -Doug > > _______________________________________________ > Linux-rockchip mailing list > Linux-rockchip at lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-rockchip > From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751565AbcEKGGx (ORCPT ); Wed, 11 May 2016 02:06:53 -0400 Received: from sg-smtp01.263.net ([54.255.195.220]:48460 "EHLO sg-smtp01.263.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750954AbcEKGGv (ORCPT ); Wed, 11 May 2016 02:06:51 -0400 X-Greylist: delayed 9318 seconds by postgrey-1.27 at vger.kernel.org; Wed, 11 May 2016 02:06:50 EDT X-RL-SENDER: wxt@rock-chips.com X-FST-TO: dianders@chromium.org X-SENDER-IP: 103.29.142.67 X-LOGIN-NAME: wxt@rock-chips.com X-UNIQUE-TAG: <74402d8643b6bf15908bbac8b1186102> X-ATTACHMENT-NUM: 0 X-DNS-TYPE: 0 Message-ID: <5732A78D.7040308@rock-chips.com> Date: Wed, 11 May 2016 11:31:25 +0800 From: Caesar Wang User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 MIME-Version: 1.0 To: Doug Anderson CC: Caesar Wang , David Wu , Heiko Stuebner , "linux-gpio@vger.kernel.org" , Linus Walleij , "linux-kernel@vger.kernel.org" , "open list:ARM/Rockchip SoC..." , Stephen Barber , Brian Norris , "linux-arm-kernel@lists.infradead.org" Subject: Re: [PATCH] pinctrl: rockchip: fix pull setting error for rk3399 References: <1462878896-28956-1-git-send-email-wxt@rock-chips.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Doug, 于 2016年05月11日 05:07, Doug Anderson 写道: > Caesar / David, > > On Tue, May 10, 2016 at 4:14 AM, Caesar Wang wrote: >> From: David Wu >> >> This patch fixes the pinctrl pull bias setting, since the pull up/down >> setting is the contrary for gpio0. > Commit message only mentions gpio0, but gpio2 is also fixed in the > commit. Please mention gpio2 in the commit message. Fix it in next version. > >> From the TRM said, the gpio0 pull polarity setting: >> gpio0a_p (gpio0 ) >> GPIO0A PE/PS programmation section, every >> GPIO bit corresponding to 2bits[PS:PE] >> 2'b00: Z(Noraml operaton); >> 2'b11: weak 1(pull-up); >> 2'b01: weak 0(pull-down); >> 2'b10: Z(Noraml operaton); > Despite the fact that the typo (Noralm vs. Normal) is present in the > TRM, maybe we should fix it here? Yep, ditto. > > > + > + if (ret < 0) { > + dev_err(info->dev, "unknown pull setting %d\n", pull); > nit: why change the error message? Old message was "unsupported" > instead of your new "unknown". "unsupported" was better IMHO. Okay, sound resonable. > > >> - PIN_BANK_DRV_FLAGS(2, 32, "gpio2", DRV_TYPE_IO_1V8_OR_3V0, >> - DRV_TYPE_IO_1V8_OR_3V0, >> - DRV_TYPE_IO_1V8_ONLY, >> - DRV_TYPE_IO_1V8_ONLY >> - ), >> + PIN_BANK_DRV_FLAGS_PULL_FLAGS(2, 32, "gpio2", DRV_TYPE_IO_1V8_OR_3V0, >> + DRV_TYPE_IO_1V8_OR_3V0, >> + DRV_TYPE_IO_1V8_ONLY, >> + DRV_TYPE_IO_1V8_ONLY, >> + PULL_TYPE_IO_DEFAULT, >> + PULL_TYPE_IO_DEFAULT, >> > Are you certain that gpio2 behaves the same way? The TRM I have says > this for GPIO2C and GPIO2D: + PULL_TYPE_IO_1V8_ONLY, + PULL_TYPE_IO_1V8_ONLY Yep, so this just set the gpio2c&gpio2d in this function. > > 2'b00: pervious-state > 2'b01: weak 0(pull-down); > 2'b10: pervious-state > 2'b11: weak 1(pull-up); > > Assuming that "pervious-state" is a simple typo for "previous state" > that would imply that it was behaving as "bus hold" and _not_ "bias > disable". I will say that TRM made the mistake since this is *not* exist. Okay, fixes by the newer TRM. > > Note: if it actually is a "bus hold" state then we'll have to figure > out how this would work with existing device trees. I'd imagine that > they are currently specifying "bias disable" and technically that > might not be possible? > > > > -Doug > > _______________________________________________ > Linux-rockchip mailing list > Linux-rockchip@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-rockchip >