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: imx: mx25: Remove SION bit in all pin-mux From: =?utf-8?q?Beno=C3=AEt_Th=C3=A9baudeau?= Message-Id: Date: Wed, 24 Jan 2018 17:37:24 +0100 To: Michael Nazzareno Trimarchi Cc: Fabio Estevam , Fabio Estevam , Peter Chen , U-Boot-Denx , USB list List-ID: SGksCgpPbiAyNC8wMS8yMDE4IGF0IDE3OjE3LCBNaWNoYWVsIE5henphcmVubyBUcmltYXJjaGkg d3JvdGU6Cj4gT24gV2VkLCBKYW4gMjQsIDIwMTggYXQgNTowMyBQTSwgQmVub8OudCBUaMOpYmF1 ZGVhdSA8YmVub2l0QHdzeXN0ZW0uY29tPiB3cm90ZToKPj4gT24gMjQvMDEvMjAxOCBhdCAxNjo0 MywgTWljaGFlbCBOYXp6YXJlbm8gVHJpbWFyY2hpIHdyb3RlOgo+Pj4gT24gV2VkLCBKYW4gMjQs IDIwMTggYXQgNDozOSBQTSwgQmVub8OudCBUaMOpYmF1ZGVhdSA8YmVub2l0QHdzeXN0ZW0uY29t PiB3cm90ZToKPj4+PiBPbiAyNC8wMS8yMDE4IGF0IDE2OjM0LCBCZW5vw650IFRow6liYXVkZWF1 IHdyb3RlOgo+Pj4+PiBPbiAyNC8wMS8yMDE4IGF0IDE2OjI2LCBNaWNoYWVsIE5henphcmVubyBU cmltYXJjaGkgd3JvdGU6Cj4+Pj4+PiBPbiBXZWQsIEphbiAyNCwgMjAxOCBhdCA0OjE0IFBNLCBG YWJpbyBFc3RldmFtIDxmZXN0ZXZhbUBnbWFpbC5jb20+IHdyb3RlOgo+Pj4+Pj4+IE9uIFdlZCwg SmFuIDI0LCAyMDE4IGF0IDEyOjU2IFBNLCBNaWNoYWVsIFRyaW1hcmNoaQo+Pj4+Pj4+IDxtaWNo YWVsQGFtYXJ1bGFzb2x1dGlvbnMuY29tPiB3cm90ZToKPj4+Pj4+Pj4gU0lPTiBiaXQgc2hvdWxk IGJlIHVzZWQgaW4gdGhlIHNpdHVhdGlvbiB0aGF0IHdlIG5lZWQKPj4+Pj4+Pj4gdG8gcmVhZCBi YWNrIHRoZSB2YWx1ZSBvZiBhIHBpbiBhbmQgc2hvdWxkIGJlIHNldCBieQo+Pj4+Pj4+PiBkZWZh dWx0Lgo+Pj4+Pgo+Pj4+PiBZb3UgcmVtb3ZlIHRoaXMgYml0IGJlY2F1c2UgaXQgc2hvdWxkIGJl IHNldCBieSBkZWZhdWx0PyBUaGlzIHNlbnRlbmNlIGlzCj4+Pj4+IGNvbmZ1c2luZy4KPj4+Cj4+ PiBFbmdsaXNoIGlzIHdyb25nIDspCj4+Pgo+Pj4gU0lPTiBiaXQgYXMgYSBzcGVjaWZpYyBwdXJw b3NlIHRvIHJlYWQgYmFjayB2YWx1ZSB0aGF0IGlzIHNldCBpbgo+Pj4gb3V0cHV0LiBZb3UgZG9u J3QgbmVlZAo+Pj4gYW5kIGl0J3Mgbm90IHNldCBpbiBhbnkgZnJlZXNjYWxlIGJvYXJkLiBJZiB5 b3UgbmVlZCB0byBzZXQgeW91IG5lZWQKPj4+IHRvIGFkZCB0byB5b3VyIHBlcmlwaGVyYWwuCj4+ Cj4+IFVubGVzcyB0aGVyZSBpcyBhIE5FV19QQURfQ1RSTCgpLWxpa2UgbWVjaGFuaXNtIGZvciBT SU9OLCBhbGwgdGhlc2UgZGVmaW5pdGlvbnMKPj4gc2hvdWxkIGJlIGtlcHQgaW4gaW9tdXgtbXgy NS5oIGluIG9yZGVyIG5vdCB0byByZWRlZmluZSB0aGUgcmVnaXN0ZXIgb2Zmc2V0cwo+PiBldmVy eXdoZXJlLiBBRkFJSywgYWxsIHRoZSBGcmVlc2NhbGUgYm9hcmRzIHVzZSB0aGUgZGVmaW5pdGlv bnMgZnJvbQo+PiBpb211eC1teDI1LmggdG9vLgo+Pgo+Pj4gVGhlIG9ubHkgY2FzZSB5b3UgbmVl ZCBtYXliZSBpcyB0aGUgZGF0YVswXSBvZiBzZGNhcmQuCj4+Cj4+IEFuZCBlU0RIQyBDTUQsIGFu ZCBJwrJDIHByb2JhYmx5IHRvby4gWWV0LCB5b3UgYXJlIGFsc28gcmVtb3ZpbmcgU0lPTiBpbiB0 aGVzZQo+PiBjYXNlcy4gSSBoYXZlIDMgaS5NMjUtYmFzZWQgYm9hcmRzIHdvcmtpbmcgZmluZSB3 aXRoIFNJT04uIDspIENhbiB5b3UgZXhwbGFpbgo+PiB0aGUgcHJlY2lzZSBpc3N1ZSB0aGF0IHlv dSBhcmUgdHJ5aW5nIHRvIGZpeCAod2hpY2ggcGluKT8KPj4KPiAKPiBMZXQgbWUgc3VtbWFyaXpl IGZvciB5b3U6Cj4gLSB3YXMgaGF2aW5nIGEgYm9hcmQgd2l0aCBsaW51eCAyLjYueCBhbmQgdWJv b3QgZnJvbSAyMDA5IHdvcmtpbmcgZmluZQo+IG9uIGEgdXNiIHBlbiBkcml2ZXIgKGxvb2sgb24g dGhyZWFkIGluIGxpbnV4LXVzYikKPiAtIHdhcyBoYXZpbmcgdGhlIHNhbWUgYm9hcmQgd2l0aCBh bnkgdmVyc2lvbiBvZiBsaW51eCBmcm9tIDMuMTggdG8KPiA0LjE1IGFuZCBmYWlsIHdpdGggdGhp cyBwZW4gZHJpdmUKPiAtIGNoZWNrIGJhY2sgYWxsIHRoZSBjaGFuZ2VzIGZyb20gbGludXggMi42 LnggIHRvIGxpbnV4IDQuMTUueCBhbmQKPiBjb21wYXJlIGV2ZXJ5IHNpbmdsZSByZWdpc3RlciBh bmQgYWxsIHRoZSB1c2IgY29kZSBhbmQgd2FzIGp1c3QKPiBjb25maXJtIGEgYmV0dGVyIGltcGxl bWVudGF0aW9uIG9mIG5ldyBrZXJuZWwuCj4gICBidXQgd2l0aCBhIHJlc3VsdCBvZiBhIHVzYiBz dHVjayBvbiB0aGUgaG9zdCBwb3J0Cj4gLSBzd2FwIHRoZSBib290LWxvYWRlciBhbmQgaGF2aW5n IGEgd29ya2luZyBib2FyZAo+IC0gZ28gaW4gZGVlcCBpbiBib290LWxvYWRlciBhbmQgY29tcGFy ZSBldmVyeXRoaW5nCj4gLSBVbmRlcnN0YW5kIHRoZSBkaWZmZXJlbmNlIHdhcyB0aGUgU0lPTiBi aXQgdGhhdCB3YXMgZW5hYmxlIG9uIGFsbCB0aGUgbXV4Cj4gCj4gSW4gZ2VuZXJhbCB3aGVuIGEg Ym9hcmQgc3RhcnQgZnJvbSByZXNldCBpdCBoYXMgZGVmYXVsdCBwaW4gbXV4aW5nLgo+IEVhY2gg cGVyaXBoZXJhbCBuZWVkIHRvIHNldHVwIHRoZSBwaW4gbXV4aW5nIGFjY29yZGluZyB0byB0aGUg cmVhbAo+IHVzYWdlLgo+IFNJT04gYnkgZGVmYXVsdCBpcyBub3QgdGhlIHJpZ2h0IHdheSB0byBk byBpdC4gV2hhdCBpcyB0aGUgY29uY2VwdCBvZgo+IHdvcmtpbmcgYm9hcmQgaW4geW91ciBzaWRl PyBKdXN0IHBhc3MgeW91ciB0ZXN0Y2FzZT8gT2sgZXZlbiB0aGlzCj4gYm9hcmQKPiB3YXMgcGFz c2luZyBhbGwgdGVzdCBjYXNlcyBhcGFydCB0aGlzIHVzYiBwZW4gZHJpdmUuIFdlIHdhcyBoYXZp bmcgaW4KPiB0aGUgZmllbGQgc29tZSBjdXN0b21lciB3aXRoIHVzYiBpc3N1ZSB0aW1lIHRvIHRp bWUgYW5kIG9ubHkgdGhpcwo+IHByb29mIHRoYXQgc29tZW50aGluZyB3YXMgbm90IHJlYWwgb2su CgpUaGFua3MgZm9yIHRoZXNlIGRldGFpbHMuIEFsbCB0aGUgdGVzdCBjYXNlcyBzaG91bGQgb2Yg Y291cnNlIHdvcmsuIEknbSBqdXN0CnRyeWluZyB0byBmaWd1cmUgb3V0IHRoZSByb290IGNhdXNl IG9mIHlvdXIgaXNzdWUsIGFuZCBtYXliZSBpdCdzIG5vdCBTSU9OCml0c2VsZiBidXQgYSBwb3dl ciBpc3N1ZSB0cmlnZ2VyZWQgYnkgU0lPTiwgb3IgbWF5YmUgaXQncyBTSU9OIG9ubHkgZm9yIHNv bWUKc3BlY2lmaWMgcGFkcyBhbmQgbm90IGZvciBhbGwgdGhlIHBhZHMsIG9yIHNvbWV0aGluZyBl bHNlLiBTbyB3aGF0IEknbSBzYXlpbmcgaXMKdGhhdCB0aGlzIGNoYW5nZSBtaWdodCBiZSB0b28g bGFyZ2UsIGFuZCBjYXJlIHNob3VsZCBiZSB0YWtlbi4KClNvbWUgRnJlZXNjYWxlIGJvYXJkcyBh Y3R1YWxseSBkbyB1c2UgU0lPTi4gRS5nLiwgc2VlCk1YMjVfUEFEX0ZFQ19NRElPX19GRUNfTURJ TyBpbgpodHRwczovL2dpdC5rZXJuZWwub3JnL3B1Yi9zY20vbGludXgva2VybmVsL2dpdC90b3J2 YWxkcy9saW51eC5naXQvdHJlZS9hcmNoL2FybS9ib290L2R0cy9pbXgyNS1wZGsuZHRzP2g9djQu MTUtcmM5IC4gU0lPTiBpcyByZXF1aXJlZCB0byByZWFkIGJhY2sgdGhlIGFjdHVhbCBzdGF0ZSBv ZiBhIEdQSU8KaW4gb3V0cHV0IG1vZGUuIEl0IGlzIGFsc28gcmVxdWlyZWQgZm9yIHNvbWUgYmlk aXJlY3Rpb25hbCBhbHRlcm5hdGUgZnVuY3Rpb25zCihzdWNoIGFzIEnCskMgU0RBL1NDTCwgU0Qg Q01EL0RBVG4sIGV0Yy4pIG9uIHNvbWUgaS5NWHMgKG5vdCBhbGwgaS5NWHMgYmVoYXZlIGluCnRo ZSBzYW1lIHdheSBmb3IgdGhlIHNhbWUgcGVyaXBoZXJhbCksIGJ1dCB3aGljaCBvbmVzIGFyZSBh ZmZlY3RlZCBpcyBub3QgYWx3YXlzCmRvY3VtZW50ZWQsIHNvIHBsZWFzZSBkb3VibGUgY2hlY2sg YW5kIHRlc3QgYWxsIHRoZXNlIGNhc2VzLgoKQmVzdCByZWdhcmRzLApCZW5vw650Ci0tLQpUbyB1 bnN1YnNjcmliZSBmcm9tIHRoaXMgbGlzdDogc2VuZCB0aGUgbGluZSAidW5zdWJzY3JpYmUgbGlu dXgtdXNiIiBpbgp0aGUgYm9keSBvZiBhIG1lc3NhZ2UgdG8gbWFqb3Jkb21vQHZnZXIua2VybmVs Lm9yZwpNb3JlIG1ham9yZG9tbyBpbmZvIGF0ICBodHRwOi8vdmdlci5rZXJuZWwub3JnL21ham9y ZG9tby1pbmZvLmh0bWwK From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?Beno=c3=aet_Th=c3=a9baudeau?= Date: Wed, 24 Jan 2018 17:37:24 +0100 Subject: [U-Boot] [PATCH] imx: mx25: Remove SION bit in all pin-mux In-Reply-To: References: <1516805770-6712-1-git-send-email-michael@amarulasolutions.com> <66f3fcba-001d-8b82-3e4e-5a4e1c42f9a9@wsystem.com> <72f8d88e-5f6d-1412-e790-c53b35e8b100@wsystem.com> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit To: u-boot@lists.denx.de Hi, On 24/01/2018 at 17:17, Michael Nazzareno Trimarchi wrote: > On Wed, Jan 24, 2018 at 5:03 PM, Benoît Thébaudeau wrote: >> On 24/01/2018 at 16:43, Michael Nazzareno Trimarchi wrote: >>> On Wed, Jan 24, 2018 at 4:39 PM, Benoît Thébaudeau wrote: >>>> On 24/01/2018 at 16:34, Benoît Thébaudeau wrote: >>>>> On 24/01/2018 at 16:26, Michael Nazzareno Trimarchi wrote: >>>>>> On Wed, Jan 24, 2018 at 4:14 PM, Fabio Estevam wrote: >>>>>>> On Wed, Jan 24, 2018 at 12:56 PM, Michael Trimarchi >>>>>>> wrote: >>>>>>>> SION bit should be used in the situation that we need >>>>>>>> to read back the value of a pin and should be set by >>>>>>>> default. >>>>> >>>>> You remove this bit because it should be set by default? This sentence is >>>>> confusing. >>> >>> English is wrong ;) >>> >>> SION bit as a specific purpose to read back value that is set in >>> output. You don't need >>> and it's not set in any freescale board. If you need to set you need >>> to add to your peripheral. >> >> Unless there is a NEW_PAD_CTRL()-like mechanism for SION, all these definitions >> should be kept in iomux-mx25.h in order not to redefine the register offsets >> everywhere. AFAIK, all the Freescale boards use the definitions from >> iomux-mx25.h too. >> >>> The only case you need maybe is the data[0] of sdcard. >> >> And eSDHC CMD, and I²C probably too. Yet, you are also removing SION in these >> cases. I have 3 i.M25-based boards working fine with SION. ;) Can you explain >> the precise issue that you are trying to fix (which pin)? >> > > Let me summarize for you: > - was having a board with linux 2.6.x and uboot from 2009 working fine > on a usb pen driver (look on thread in linux-usb) > - was having the same board with any version of linux from 3.18 to > 4.15 and fail with this pen drive > - check back all the changes from linux 2.6.x to linux 4.15.x and > compare every single register and all the usb code and was just > confirm a better implementation of new kernel. > but with a result of a usb stuck on the host port > - swap the boot-loader and having a working board > - go in deep in boot-loader and compare everything > - Understand the difference was the SION bit that was enable on all the mux > > In general when a board start from reset it has default pin muxing. > Each peripheral need to setup the pin muxing according to the real > usage. > SION by default is not the right way to do it. What is the concept of > working board in your side? Just pass your testcase? Ok even this > board > was passing all test cases apart this usb pen drive. We was having in > the field some customer with usb issue time to time and only this > proof that somenthing was not real ok. Thanks for these details. All the test cases should of course work. I'm just trying to figure out the root cause of your issue, and maybe it's not SION itself but a power issue triggered by SION, or maybe it's SION only for some specific pads and not for all the pads, or something else. So what I'm saying is that this change might be too large, and care should be taken. Some Freescale boards actually do use SION. E.g., see MX25_PAD_FEC_MDIO__FEC_MDIO in https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/imx25-pdk.dts?h=v4.15-rc9 . SION is required to read back the actual state of a GPIO in output mode. It is also required for some bidirectional alternate functions (such as I²C SDA/SCL, SD CMD/DATn, etc.) on some i.MXs (not all i.MXs behave in the same way for the same peripheral), but which ones are affected is not always documented, so please double check and test all these cases. Best regards, Benoît