2013/12/8 Chen-Yu Tsai <wens@xxxxxxxx>: > Florian, Giuseppe: > > On Sat, Dec 7, 2013 at 9:57 AM, Florian Fainelli <f.fainelli@xxxxxxxxx> wrote: >> 2013/12/6 Chen-Yu Tsai <wens@xxxxxxxx>: >>> On Sat, Dec 7, 2013 at 5:09 AM, Florian Fainelli <f.fainelli@xxxxxxxxx> wrote: >>>> 2013/12/6 Chen-Yu Tsai <wens@xxxxxxxx>: >>>>> The CubieTruck uses the GMAC with an RGMII phy. >>>>> >>>>> Signed-off-by: Chen-Yu Tsai <wens@xxxxxxxx> >>>>> --- >>>>> arch/arm/boot/dts/sun7i-a20-cubietruck.dts | 8 ++++++++ >>>>> 1 file changed, 8 insertions(+) >>>>> >>>>> diff --git a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts >>>>> index 8a1009d..af212a2 100644 >>>>> --- a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts >>>>> +++ b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts >>>>> @@ -33,6 +33,14 @@ >>>>> pinctrl-0 = <&uart0_pins_a>; >>>>> status = "okay"; >>>>> }; >>>>> + >>>>> + gmac: ethernet@01c50000 { >>>>> + pinctrl-names = "default"; >>>>> + pinctrl-0 = <&gmac_pins_rgmii>; >>>>> + snps,phy-addr = <1>; >>>> >>>> What is this snps,phy-addr property? Why is not a standard device tree >>>> node for an Ethernet PHY node used? >>> >>> This property is implemented by stmmac and documented in the DT >>> bindings. stmmac has not been updated to use Ethernet PHY nodes. >> >> This driver property should be removed and deprecated since there is >> an ePAPR standardized Ethernet PHY node. What I am worried here is the >> loss of information, the standard Ethernet DT node allows to specify >> much more information (clause, maximum speed, compatible string >> etc...). > > Giuseppe, any thoughts on this? > >>> Removing this property will not affect the function of the driver. >>> The driver probes its MDIO bus and selects the lowest available >>> address if not specified. >> >> So if this is just giving the driver a hint on where to probe for a >> PHY on the MDIO bus, then let's drop it and use the standard DT node >> no? > > Sure. I will remove it from the DT. > > The stmmac driver does not have a seperate MDIO bus driver, nor > does it support Ethernet PHY node bindings. So I will not add > a phy node at this moment. This will create needless churn in the DT if you do not do it now, worse actually, we switch from a DT which specifically described Ethernet PHY nodes properly to a version where it does, to ultimately a newer version which does. Considering that the absence of a "snps,phy-addr" property will still result in the MDIO bus to be probed, keeping the existing Ethernet PHY nodes, referencing them correclty with a "phy-handle" property, but having no explicit support for these in the driver will not result in a functional change, and will reduce the DT churn. Also, you could still sneak a patch in this patchset which parses the standard EThernet PHY node binding. > >>>>> + phy-mode = "rgmii"; >>>> >>>> Especially since you use the relatively standard "phy-mode" property here? >>> >>> Used as specified in stmmac DT bindings. >> >> That one is kind of okay because of_get_phy_mode() knows about it, >> even though ePAPR states this should be "phy-connection-type", so I am >> okay with keeping that one because current practice and helpers are >> here. > > It seems all ARM DTs currently use "phy-mode". Which is why I said "is kind of okay", but this is not what the standard came up with, ARM is not exactly the best DT-citizen out there as people are prone to making up new properties when the standard already defines some, anyway.... -- Florian -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html