Message ID | 20140711115406.GB2954@lee--X1 |
---|---|
State | New |
Headers | show |
Hello. On 07/11/2014 03:54 PM, Lee Jones wrote: > The MiPHY365x is a Generic PHY which can serve various SATA or PCIe > devices. It has 2 ports which it can use for either; both SATA, both > PCIe or one of each in any configuration. > Acked-by: Mark Rutland <mark.rutland@arm.com> > Acked-by: Alexandre Torgue <alexandre.torgue@st.com> > Signed-off-by: Lee Jones <lee.jones@linaro.org> > diff --git a/arch/arm/boot/dts/stih416-b2020.dts b/arch/arm/boot/dts/stih416-b2020.dts > index 4e2df66..c3c2ac6 100644 > --- a/arch/arm/boot/dts/stih416-b2020.dts > +++ b/arch/arm/boot/dts/stih416-b2020.dts > @@ -12,4 +12,16 @@ > / { > model = "STiH416 B2020"; > compatible = "st,stih416-b2020", "st,stih416"; > + > + soc { > + miphy365x_phy: miphy365x@fe382000 { > + phy_port0: port@fe382000 { I don't understand why are you creating the duplicate labels; doesn't 'dtc' complain about them? You could instead refer to them as: &miphy365x_phy { }; > + st,sata-gen = <3>; > + }; > + > + phy_port1: port@fe38a000 { > + st,pcie-tx-pol-inv; > + }; > + }; > + }; > }; [...] > diff --git a/arch/arm/boot/dts/stih416.dtsi b/arch/arm/boot/dts/stih416.dtsi > index 84758d7..2b98a0a 100644 > --- a/arch/arm/boot/dts/stih416.dtsi > +++ b/arch/arm/boot/dts/stih416.dtsi > @@ -9,6 +9,8 @@ > #include "stih41x.dtsi" > #include "stih416-clock.dtsi" > #include "stih416-pinctrl.dtsi" > + > +#include <dt-bindings/phy/phy-miphy365x.h> > #include <dt-bindings/interrupt-controller/arm-gic.h> > #include <dt-bindings/reset-controller/stih416-resets.h> > / { > @@ -236,5 +238,25 @@ > resets = <&powerdown STIH416_KEYSCAN_POWERDOWN>, > <&softreset STIH416_KEYSCAN_SOFTRESET>; > }; > + > + miphy365x_phy: miphy365x@fe382000 { The ePAPR standard [1] says: The name of a node should be somewhat generic, reflecting the function of the device and not its precise programming model. > + compatible = "st,miphy365x-phy"; > + st,syscfg = <&syscfg_rear>; > + #address-cells = <1>; > + #size-cells = <1>; > + ranges; > + > + phy_port0: port@fe382000 { > + #phy-cells = <1>; If these are PHY devices, they should be named "phy", not "port". > + reg = <0xfe382000 0x100>, <0xfe394000 0x100>, <0x824 0x4>; > + reg-names = "sata", "pcie", "syscfg"; > + }; > + > + phy_port1: port@fe38a000 { > + #phy-cells = <1>; > + reg = <0xfe38a000 0x100>, <0xfe804000 0x100>, <0x828 0x4>; > + reg-names = "sata", "pcie", "syscfg"; > + }; > + }; > }; > }; WBR, Sergei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
On Sat, 12 Jul 2014, Sergei Shtylyov wrote: > Hello. > > On 07/11/2014 03:54 PM, Lee Jones wrote: > > >The MiPHY365x is a Generic PHY which can serve various SATA or PCIe > >devices. It has 2 ports which it can use for either; both SATA, both > >PCIe or one of each in any configuration. > > >Acked-by: Mark Rutland <mark.rutland@arm.com> > >Acked-by: Alexandre Torgue <alexandre.torgue@st.com> > >Signed-off-by: Lee Jones <lee.jones@linaro.org> > > >diff --git a/arch/arm/boot/dts/stih416-b2020.dts b/arch/arm/boot/dts/stih416-b2020.dts > >index 4e2df66..c3c2ac6 100644 > >--- a/arch/arm/boot/dts/stih416-b2020.dts > >+++ b/arch/arm/boot/dts/stih416-b2020.dts > >@@ -12,4 +12,16 @@ > > / { > > model = "STiH416 B2020"; > > compatible = "st,stih416-b2020", "st,stih416"; > >+ > >+ soc { > >+ miphy365x_phy: miphy365x@fe382000 { > >+ phy_port0: port@fe382000 { > > I don't understand why are you creating the duplicate labels; > doesn't 'dtc' complain about them? I've never seen dtc complain about this: DTC arch/arm/boot/dts/dra72-evm.dtb DTC arch/arm/boot/dts/stih407-b2120.dtb DTC arch/arm/boot/dts/stih415-b2000.dtb DTC arch/arm/boot/dts/stih415-b2020.dtb DTC arch/arm/boot/dts/stih416-b2000.dtb DTC arch/arm/boot/dts/stih416-b2020.dtb DTC arch/arm/boot/dts/stih416-b2020e.dtb DTC arch/arm/boot/dts/armada-375-db.dtb Probably because they're not actually 'duplicate' per say. Rather they are the same node split into different files. I can remove the labels if required though. > You could instead refer to them > as: > > &miphy365x_phy { > }; I dislike this formatting. I find it convolutes the hierarchical structure and makes DTS (and some DTSI) files hard to read i.e hides parenthood etc. [...] > >+ miphy365x_phy: miphy365x@fe382000 { > > The ePAPR standard [1] says: > > The name of a node should be somewhat generic, reflecting the > function of the device and not its precise programming model. Good point. Will change to 'phy'. > >+ compatible = "st,miphy365x-phy"; > >+ st,syscfg = <&syscfg_rear>; > >+ #address-cells = <1>; > >+ #size-cells = <1>; > >+ ranges; > >+ > >+ phy_port0: port@fe382000 { > >+ #phy-cells = <1>; > > If these are PHY devices, they should be named "phy", not "port". Then what do you call the parent node? I see it as: phy { port { }; }; Or phy { channel { }; }; What does Kishon think?
Hello. On 07/14/2014 11:58 AM, Lee Jones wrote: >>> The MiPHY365x is a Generic PHY which can serve various SATA or PCIe >>> devices. It has 2 ports which it can use for either; both SATA, both >>> PCIe or one of each in any configuration. >>> Acked-by: Mark Rutland <mark.rutland@arm.com> >>> Acked-by: Alexandre Torgue <alexandre.torgue@st.com> >>> Signed-off-by: Lee Jones <lee.jones@linaro.org> >>> diff --git a/arch/arm/boot/dts/stih416-b2020.dts b/arch/arm/boot/dts/stih416-b2020.dts >>> index 4e2df66..c3c2ac6 100644 >>> --- a/arch/arm/boot/dts/stih416-b2020.dts >>> +++ b/arch/arm/boot/dts/stih416-b2020.dts >>> @@ -12,4 +12,16 @@ >>> / { >>> model = "STiH416 B2020"; >>> compatible = "st,stih416-b2020", "st,stih416"; >>> + >>> + soc { >>> + miphy365x_phy: miphy365x@fe382000 { >>> + phy_port0: port@fe382000 { >> I don't understand why are you creating the duplicate labels; >> doesn't 'dtc' complain about them? > I've never seen dtc complain about this: > DTC arch/arm/boot/dts/dra72-evm.dtb > DTC arch/arm/boot/dts/stih407-b2120.dtb > DTC arch/arm/boot/dts/stih415-b2000.dtb > DTC arch/arm/boot/dts/stih415-b2020.dtb > DTC arch/arm/boot/dts/stih416-b2000.dtb > DTC arch/arm/boot/dts/stih416-b2020.dtb > DTC arch/arm/boot/dts/stih416-b2020e.dtb > DTC arch/arm/boot/dts/armada-375-db.dtb > Probably because they're not actually 'duplicate' per say. Rather > they are the same node split into different files. I can remove the > labels if required though. Yeah, I don't see why you need them if you don't refer to them anywhere. >> You could instead refer to them >> as: >> &miphy365x_phy { >> }; > I dislike this formatting. I find it convolutes the hierarchical > structure and makes DTS (and some DTSI) files hard to read i.e hides > parenthood etc. Good point... > [...] >>> + miphy365x_phy: miphy365x@fe382000 { >> The ePAPR standard [1] says: >> The name of a node should be somewhat generic, reflecting the >> function of the device and not its precise programming model. > Good point. Will change to 'phy'. >>> + compatible = "st,miphy365x-phy"; >>> + st,syscfg = <&syscfg_rear>; >>> + #address-cells = <1>; >>> + #size-cells = <1>; >>> + ranges; >>> + >>> + phy_port0: port@fe382000 { >>> + #phy-cells = <1>; >> If these are PHY devices, they should be named "phy", not "port". > Then what do you call the parent node? Oh, don't ask me, it wasn't my idea to have PHY subnodes. :-) WBR, Sergei -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Hi Lee, On 07/11/2014 01:54 PM, Lee Jones wrote: > The MiPHY365x is a Generic PHY which can serve various SATA or PCIe > devices. It has 2 ports which it can use for either; both SATA, both > PCIe or one of each in any configuration. > > Acked-by: Mark Rutland <mark.rutland@arm.com> > Acked-by: Alexandre Torgue <alexandre.torgue@st.com> > Signed-off-by: Lee Jones <lee.jones@linaro.org> > Added to my queue for v3.17. Thanks, Maxime -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
diff --git a/arch/arm/boot/dts/stih416-b2020.dts b/arch/arm/boot/dts/stih416-b2020.dts index 4e2df66..c3c2ac6 100644 --- a/arch/arm/boot/dts/stih416-b2020.dts +++ b/arch/arm/boot/dts/stih416-b2020.dts @@ -12,4 +12,16 @@ / { model = "STiH416 B2020"; compatible = "st,stih416-b2020", "st,stih416"; + + soc { + miphy365x_phy: miphy365x@fe382000 { + phy_port0: port@fe382000 { + st,sata-gen = <3>; + }; + + phy_port1: port@fe38a000 { + st,pcie-tx-pol-inv; + }; + }; + }; }; diff --git a/arch/arm/boot/dts/stih416-b2020e.dts b/arch/arm/boot/dts/stih416-b2020e.dts index ba0fa2c..80aff0f 100644 --- a/arch/arm/boot/dts/stih416-b2020e.dts +++ b/arch/arm/boot/dts/stih416-b2020e.dts @@ -31,5 +31,15 @@ ethernet1: dwmac@fef08000 { snps,reset-gpio = <&PIO0 7>; }; + + miphy365x_phy: miphy365x@fe382000 { + phy_port0: port@fe382000 { + st,sata-gen = <3>; + }; + + phy_port1: port@fe38a000 { + st,pcie-tx-pol-inv; + }; + }; }; }; diff --git a/arch/arm/boot/dts/stih416.dtsi b/arch/arm/boot/dts/stih416.dtsi index 84758d7..2b98a0a 100644 --- a/arch/arm/boot/dts/stih416.dtsi +++ b/arch/arm/boot/dts/stih416.dtsi @@ -9,6 +9,8 @@ #include "stih41x.dtsi" #include "stih416-clock.dtsi" #include "stih416-pinctrl.dtsi" + +#include <dt-bindings/phy/phy-miphy365x.h> #include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/reset-controller/stih416-resets.h> / { @@ -236,5 +238,25 @@ resets = <&powerdown STIH416_KEYSCAN_POWERDOWN>, <&softreset STIH416_KEYSCAN_SOFTRESET>; }; + + miphy365x_phy: miphy365x@fe382000 { + compatible = "st,miphy365x-phy"; + st,syscfg = <&syscfg_rear>; + #address-cells = <1>; + #size-cells = <1>; + ranges; + + phy_port0: port@fe382000 { + #phy-cells = <1>; + reg = <0xfe382000 0x100>, <0xfe394000 0x100>, <0x824 0x4>; + reg-names = "sata", "pcie", "syscfg"; + }; + + phy_port1: port@fe38a000 { + #phy-cells = <1>; + reg = <0xfe38a000 0x100>, <0xfe804000 0x100>, <0x828 0x4>; + reg-names = "sata", "pcie", "syscfg"; + }; + }; }; };