From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tony Lindgren Subject: Re: [RFC 3/5] ARM: OMAP2+: Add AM3517 MUSB setup to pdata quirks. Date: Tue, 3 Jul 2018 00:36:09 -0700 Message-ID: <20180703073609.GP112168@atomide.com> References: <20180625001233.9785-1-aford173@gmail.com> <20180625001233.9785-4-aford173@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <20180625001233.9785-4-aford173@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=m.gmane.org@lists.infradead.org To: Adam Ford Cc: mark.rutland@arm.com, devicetree@vger.kernel.org, gregkh@linuxfoundation.org, linux-usb@vger.kernel.org, linux@armlinux.org.uk, robh+dt@kernel.org, bcousson@baylibre.com, linux-omap@vger.kernel.org, adam.ford@logicpd.com, b-liu@ti.com, linux-arm-kernel@lists.infradead.org List-Id: linux-omap@vger.kernel.org * Adam Ford [180625 00:15]: > The pin muxing and clock definitions for the MUSB controller are > not done through the same registers/pin mux options, so this > explicitly configures the registers and pin-mux options for MUSB > on AM3517-EVM > > Signed-off-by: Adam Ford > > diff --git a/arch/arm/mach-omap2/pdata-quirks.c b/arch/arm/mach-omap2/pdata-quirks.c > index 7f02743edbe4..e0c7ac2c87c1 100644 > --- a/arch/arm/mach-omap2/pdata-quirks.c > +++ b/arch/arm/mach-omap2/pdata-quirks.c > @@ -258,9 +258,28 @@ static void __init omap3_sbc_t3517_legacy_init(void) > omap3_sbc_t3517_wifi_init(); > } > > +/* The pin muxing for AM3517 OTG isn't done through the normal means */ > +static __init void am3517_evm_musb_init(void) > +{ > + u32 devconf2; > + > + /* > + * Set up USB clock/mode in the DEVCONF2 register. > + */ > + devconf2 = omap_ctrl_readl(AM35XX_CONTROL_DEVCONF2); > + > + /* USB2.0 PHY reference clock is 13 MHz */ > + devconf2 &= ~(CONF2_REFFREQ | CONF2_OTGMODE | CONF2_PHY_GPIOMODE); > + devconf2 |= CONF2_REFFREQ_13MHZ | CONF2_SESENDEN | CONF2_VBDTCTEN > + | CONF2_DATPOL; > + > + omap_ctrl_writel(devconf2, AM35XX_CONTROL_DEVCONF2); > +} > + > static void __init am3517_evm_legacy_init(void) > { > am35xx_emac_reset(); > + am3517_evm_musb_init(); > } To me it seems you should do this with a simple drivers/phy driver. There might be already something similar that you can use, see the da and dm related drivers under drivers/phy/ti. Regards, Tony 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: [RFC,3/5] ARM: OMAP2+: Add AM3517 MUSB setup to pdata quirks. From: Tony Lindgren Message-Id: <20180703073609.GP112168@atomide.com> Date: Tue, 3 Jul 2018 00:36:09 -0700 To: Adam Ford Cc: adam.ford@logicpd.com, bcousson@baylibre.com, robh+dt@kernel.org, mark.rutland@arm.com, linux@armlinux.org.uk, b-liu@ti.com, gregkh@linuxfoundation.org, linux-omap@vger.kernel.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-usb@vger.kernel.org List-ID: KiBBZGFtIEZvcmQgPGFmb3JkMTczQGdtYWlsLmNvbT4gWzE4MDYyNSAwMDoxNV06Cj4gVGhlIHBp biBtdXhpbmcgYW5kIGNsb2NrIGRlZmluaXRpb25zIGZvciB0aGUgTVVTQiBjb250cm9sbGVyIGFy ZQo+IG5vdCBkb25lIHRocm91Z2ggdGhlIHNhbWUgcmVnaXN0ZXJzL3BpbiBtdXggb3B0aW9ucywg c28gdGhpcwo+IGV4cGxpY2l0bHkgY29uZmlndXJlcyB0aGUgcmVnaXN0ZXJzIGFuZCBwaW4tbXV4 IG9wdGlvbnMgZm9yIE1VU0IKPiBvbiBBTTM1MTctRVZNCj4gCj4gU2lnbmVkLW9mZi1ieTogQWRh bSBGb3JkIDxhZm9yZDE3M0BnbWFpbC5jb20+Cj4gCj4gZGlmZiAtLWdpdCBhL2FyY2gvYXJtL21h Y2gtb21hcDIvcGRhdGEtcXVpcmtzLmMgYi9hcmNoL2FybS9tYWNoLW9tYXAyL3BkYXRhLXF1aXJr cy5jCj4gaW5kZXggN2YwMjc0M2VkYmU0Li5lMGM3YWMyYzg3YzEgMTAwNjQ0Cj4gLS0tIGEvYXJj aC9hcm0vbWFjaC1vbWFwMi9wZGF0YS1xdWlya3MuYwo+ICsrKyBiL2FyY2gvYXJtL21hY2gtb21h cDIvcGRhdGEtcXVpcmtzLmMKPiBAQCAtMjU4LDkgKzI1OCwyOCBAQCBzdGF0aWMgdm9pZCBfX2lu aXQgb21hcDNfc2JjX3QzNTE3X2xlZ2FjeV9pbml0KHZvaWQpCj4gIAlvbWFwM19zYmNfdDM1MTdf d2lmaV9pbml0KCk7Cj4gIH0KPiAgCj4gKy8qIFRoZSBwaW4gbXV4aW5nIGZvciBBTTM1MTcgT1RH IGlzbid0IGRvbmUgdGhyb3VnaCB0aGUgbm9ybWFsIG1lYW5zICovCj4gK3N0YXRpYyBfX2luaXQg dm9pZCBhbTM1MTdfZXZtX211c2JfaW5pdCh2b2lkKQo+ICt7Cj4gKwl1MzIgZGV2Y29uZjI7Cj4g Kwo+ICsJLyoKPiArCSAqIFNldCB1cCBVU0IgY2xvY2svbW9kZSBpbiB0aGUgREVWQ09ORjIgcmVn aXN0ZXIuCj4gKwkgKi8KPiArCWRldmNvbmYyID0gb21hcF9jdHJsX3JlYWRsKEFNMzVYWF9DT05U Uk9MX0RFVkNPTkYyKTsKPiArCj4gKwkvKiBVU0IyLjAgUEhZIHJlZmVyZW5jZSBjbG9jayBpcyAx MyBNSHogKi8KPiArCWRldmNvbmYyICY9IH4oQ09ORjJfUkVGRlJFUSB8IENPTkYyX09UR01PREUg fCBDT05GMl9QSFlfR1BJT01PREUpOwo+ICsJZGV2Y29uZjIgfD0gIENPTkYyX1JFRkZSRVFfMTNN SFogfCBDT05GMl9TRVNFTkRFTiB8IENPTkYyX1ZCRFRDVEVOCj4gKwkJCXwgQ09ORjJfREFUUE9M Owo+ICsKPiArCW9tYXBfY3RybF93cml0ZWwoZGV2Y29uZjIsIEFNMzVYWF9DT05UUk9MX0RFVkNP TkYyKTsKPiArfQo+ICsKPiAgc3RhdGljIHZvaWQgX19pbml0IGFtMzUxN19ldm1fbGVnYWN5X2lu aXQodm9pZCkKPiAgewo+ICAJYW0zNXh4X2VtYWNfcmVzZXQoKTsKPiArCWFtMzUxN19ldm1fbXVz Yl9pbml0KCk7Cj4gIH0KClRvIG1lIGl0IHNlZW1zIHlvdSBzaG91bGQgZG8gdGhpcyB3aXRoIGEg c2ltcGxlIGRyaXZlcnMvcGh5IGRyaXZlci4KVGhlcmUgbWlnaHQgYmUgYWxyZWFkeSBzb21ldGhp bmcgc2ltaWxhciB0aGF0IHlvdSBjYW4gdXNlLCBzZWUgdGhlCmRhIGFuZCBkbSByZWxhdGVkIGRy aXZlcnMgdW5kZXIgZHJpdmVycy9waHkvdGkuCgpSZWdhcmRzLAoKVG9ueQotLS0KVG8gdW5zdWJz Y3JpYmUgZnJvbSB0aGlzIGxpc3Q6IHNlbmQgdGhlIGxpbmUgInVuc3Vic2NyaWJlIGxpbnV4LXVz YiIgaW4KdGhlIGJvZHkgb2YgYSBtZXNzYWdlIHRvIG1ham9yZG9tb0B2Z2VyLmtlcm5lbC5vcmcK TW9yZSBtYWpvcmRvbW8gaW5mbyBhdCAgaHR0cDovL3ZnZXIua2VybmVsLm9yZy9tYWpvcmRvbW8t aW5mby5odG1sCg== From mboxrd@z Thu Jan 1 00:00:00 1970 From: tony@atomide.com (Tony Lindgren) Date: Tue, 3 Jul 2018 00:36:09 -0700 Subject: [RFC 3/5] ARM: OMAP2+: Add AM3517 MUSB setup to pdata quirks. In-Reply-To: <20180625001233.9785-4-aford173@gmail.com> References: <20180625001233.9785-1-aford173@gmail.com> <20180625001233.9785-4-aford173@gmail.com> Message-ID: <20180703073609.GP112168@atomide.com> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org * Adam Ford [180625 00:15]: > The pin muxing and clock definitions for the MUSB controller are > not done through the same registers/pin mux options, so this > explicitly configures the registers and pin-mux options for MUSB > on AM3517-EVM > > Signed-off-by: Adam Ford > > diff --git a/arch/arm/mach-omap2/pdata-quirks.c b/arch/arm/mach-omap2/pdata-quirks.c > index 7f02743edbe4..e0c7ac2c87c1 100644 > --- a/arch/arm/mach-omap2/pdata-quirks.c > +++ b/arch/arm/mach-omap2/pdata-quirks.c > @@ -258,9 +258,28 @@ static void __init omap3_sbc_t3517_legacy_init(void) > omap3_sbc_t3517_wifi_init(); > } > > +/* The pin muxing for AM3517 OTG isn't done through the normal means */ > +static __init void am3517_evm_musb_init(void) > +{ > + u32 devconf2; > + > + /* > + * Set up USB clock/mode in the DEVCONF2 register. > + */ > + devconf2 = omap_ctrl_readl(AM35XX_CONTROL_DEVCONF2); > + > + /* USB2.0 PHY reference clock is 13 MHz */ > + devconf2 &= ~(CONF2_REFFREQ | CONF2_OTGMODE | CONF2_PHY_GPIOMODE); > + devconf2 |= CONF2_REFFREQ_13MHZ | CONF2_SESENDEN | CONF2_VBDTCTEN > + | CONF2_DATPOL; > + > + omap_ctrl_writel(devconf2, AM35XX_CONTROL_DEVCONF2); > +} > + > static void __init am3517_evm_legacy_init(void) > { > am35xx_emac_reset(); > + am3517_evm_musb_init(); > } To me it seems you should do this with a simple drivers/phy driver. There might be already something similar that you can use, see the da and dm related drivers under drivers/phy/ti. Regards, Tony