[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <531869C2.3070905@ti.com>
Date: Thu, 6 Mar 2014 17:57:46 +0530
From: George Cherian <george.cherian@...com>
To: Roger Quadros <rogerq@...com>, <linux-omap@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, <linux-doc@...r.kernel.org>,
<devicetree@...r.kernel.org>
CC: <anatol.pomozov@...il.com>, <gregkh@...uxfoundation.org>,
<balbi@...com>, <kishon@...com>, <rob@...dley.net>,
<galak@...eaurora.org>, <ijc+devicetree@...lion.org.uk>,
<mark.rutland@....com>, <pawel.moll@....com>, <robh+dt@...nel.org>,
<bcousson@...libre.com>, <tony@...mide.com>
Subject: Re: [PATCH 2/5] ARM: dts: AM4372: Add USB nodes
Hi Roger,
On 3/6/2014 2:19 PM, Roger Quadros wrote:
> Hi George,
>
> On 03/03/2014 03:53 PM, George Cherian wrote:
>> Add nodes for 2 instances each of
>> - ocp2scp
>> - USB PHY control module
>> - USB PHY
>> - dwc3_omap
>> - USB
>>
>> for AM43xx.
>>
>> Signed-off-by: George Cherian <george.cherian@...com>
>> ---
>> arch/arm/boot/dts/am4372.dtsi | 99 +++++++++++++++++++++++++++++++++++++++++++
>> 1 file changed, 99 insertions(+)
>>
>> diff --git a/arch/arm/boot/dts/am4372.dtsi b/arch/arm/boot/dts/am4372.dtsi
>> index 5a7cc38..90408b3 100644
>> --- a/arch/arm/boot/dts/am4372.dtsi
>> +++ b/arch/arm/boot/dts/am4372.dtsi
>> @@ -698,6 +698,105 @@
>> <&edma 11>;
>> dma-names = "tx", "rx";
>> };
>> +
>> + am43xx_control_usb2phy1: control-phy@...10620 {
>> + compatible = "ti,control-phy-am437usb2";
> Since this is the first usage of this compatible ID, we still have room to
> change it to be better. Tony's suggestion was to use "ti,control-phy-am437-usb2"
>
> Please see
> http://article.gmane.org/gmane.linux.drivers.devicetree/64833
Okay.
>> + reg = <0x44e10620 0x4>;
>> + reg-names = "power";
>> + status = "disabled";
> Why disable something that is within the SoC and does not affect board configurations?
>
> Question applies for all the nodes in this patch except the ones that come out on the
> SoC pins. e.g. PHY.
Okay
>> + };
>> +
>> + am43xx_control_usb2phy2: control-phy@...4e10628 {
>> + compatible = "ti,control-phy-am437usb2";
>> + reg = <0x44e10628 0x4>;
>> + reg-names = "power";
>> + status = "disabled";
>> + };
>> +
>> + ocp2scp0: ocp2scp@...a8000 {
>> + compatible = "ti,omap-ocp2scp";
>> + #address-cells = <1>;
>> + #size-cells = <1>;
>> + ranges;
>> + ti,hwmods = "ocp2scp0";
>> + status = "disabled";
>> +
>> + usb2_phy1: usb2phy1@...a8000 {
> should be
okay
> usb2_phy1: phy@...a8000 {
>
>> + compatible = "ti,am437x-usb2";
>> + reg = <0x483a8000 0x8000>;
>> + ctrl-module = <&am43xx_control_usb2phy1>;
>> + clocks = <&clk_32768_ck>,
>> + <&usb_otg_ss0_refclk960m>;
>> + clock-names = "usb_phy_cm_clk32k",
>> + "usb_otg_ss_refclk960m";
> clock-names should be platform independent. Better option would be to
> modify the usb2 driver to use names like "wkupclk" and "refclk"
The phy driver still does devm_get_clk using above clock names and not
"wkupclk" and "refclk".
>> + #phy-cells = <0>;
>> + status = "disabled";
>> + };
>> + };
>> +
>> + ocp2scp1: ocp2scp@...e8000 {
>> + compatible = "ti,omap-ocp2scp";
>> + #address-cells = <1>;
>> + #size-cells = <1>;
>> + ranges;
>> + ti,hwmods = "ocp2scp1";
>> + status = "disabled";
>> +
>> + usb2_phy2: usb2phy2@...e8000 {
>> + compatible = "ti,am437x-usb2";
>> + reg = <0x483e8000 0x8000>;
>> + ctrl-module = <&am43xx_control_usb2phy2>;
>> + clocks = <&clk_32768_ck>,
>> + <&usb_otg_ss1_refclk960m>;
>> + clock-names = "usb_phy_cm_clk32k",
>> + "usb_otg_ss_refclk960m";
>> + #phy-cells = <0>;
>> + status = "disabled";
>> + };
>> + };
>> +
>> + dwc3_1: omap_dwc3_1@...80000 {
>> + compatible = "ti,am437x-dwc3";
>> + ti,hwmods = "usb_otg_ss0";
>> + reg = <0x48380000 0x10000>;
>> + interrupts = <GIC_SPI 172 IRQ_TYPE_LEVEL_HIGH>;
>> + #address-cells = <1>;
>> + #size-cells = <1>;
>> + utmi-mode = <1>;
>> + ranges;
>> + status = "disabled";
>> +
>> + usb1: usb@...90000 {
>> + compatible = "synopsys,dwc3";
>> + reg = <0x48390000 0x17000>;
>> + interrupts = <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>;
>> + usb-phy = <&usb2_phy1>;
> shouldn't this be phys = <&usb2_phy1>; ?
At the time of writing this patch phys property is still not in.
Also generic-phy conversion for dwc3 was recently posted by kishon.
>> + phy-names = "usb2-phy";
> what about
> maximum-speed = "high-speed";
> and
> dr_mode = "otg"; ?
Done from board file. Actually maximum-speed I can set here.
dr_mode is a board property.
>> + status = "disabled";
>> + };
>> + };
>> +
>> + dwc3_2: omap_dwc3_2@...c0000 {
>> + compatible = "ti,am437x-dwc3";
>> + ti,hwmods = "usb_otg_ss1";
>> + reg = <0x483c0000 0x10000>;
>> + interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>;
>> + #address-cells = <1>;
>> + #size-cells = <1>;
>> + utmi-mode = <1>;
>> + ranges;
>> + status = "disabled";
>> +
>> + usb2: usb@...d0000 {
>> + compatible = "synopsys,dwc3";
>> + reg = <0x483d0000 0x17000>;
>> + interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>;
>> + usb-phy = <&usb2_phy2>;
>> + phy-names = "usb2-phy";
>> + status = "disabled";
>> + };
>> + };
>> +
>> };
>> };
>>
>>
> cheers,
> -roger
--
-George
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists