Message ID | 1513858254-14197-1-git-send-email-jassisinghbrar@gmail.com |
---|---|
State | Superseded |
Headers | show |
Series | Socionext Synquacer NETSEC driver | expand |
> +- mdio device tree subnode: When the Netsec has a phy connected to its local > + mdio, there must be device tree subnode with the following > + required properties: > + > + - compatible: Must be "socionext,snq-mdio". Is there a need for a compatible string? Is there different versions of the MDIO bus hardware? If it was an independent MDIO bus driver, then yes, you need a compatible string. But since it is embedded in the MAC driver, there should not be a need. Andrew -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 12/21/2017 05:55 AM, Andrew Lunn wrote: >> +- mdio device tree subnode: When the Netsec has a phy connected to its local >> + mdio, there must be device tree subnode with the following >> + required properties: >> + >> + - compatible: Must be "socionext,snq-mdio". > > Is there a need for a compatible string? Is there different versions > of the MDIO bus hardware? If it was an independent MDIO bus driver, > then yes, you need a compatible string. But since it is embedded in > the MAC driver, there should not be a need. I don't see a problem with doing that though, it may be extra information, but if we ever have a standalone MDIO bus controller that happens to be supported by the same HW/driver, and the Ethernet driver delegates the MDIO management to this MDIO bus driver, then having the compatible string is kind of mandatory for proper matching/identification. -- Florian -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, Dec 26, 2017 at 11:34:26AM -0800, Florian Fainelli wrote: > On 12/21/2017 05:55 AM, Andrew Lunn wrote: > >> +- mdio device tree subnode: When the Netsec has a phy connected to its local > >> + mdio, there must be device tree subnode with the following > >> + required properties: > >> + > >> + - compatible: Must be "socionext,snq-mdio". > > > > Is there a need for a compatible string? Is there different versions > > of the MDIO bus hardware? If it was an independent MDIO bus driver, > > then yes, you need a compatible string. But since it is embedded in > > the MAC driver, there should not be a need. > > I don't see a problem with doing that though, it may be extra > information, but if we ever have a standalone MDIO bus controller that > happens to be supported by the same HW/driver, and the Ethernet driver > delegates the MDIO management to this MDIO bus driver, then having the > compatible string is kind of mandatory for proper matching/identification. Hi Florian I does not create a problem. It does however make it different to every other embedded MDIO bus. My preference is not to have the compatible string, but i can live with it. Andrew -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/Documentation/devicetree/bindings/net/socionext-netsec.txt b/Documentation/devicetree/bindings/net/socionext-netsec.txt new file mode 100644 index 0000000..350540c --- /dev/null +++ b/Documentation/devicetree/bindings/net/socionext-netsec.txt @@ -0,0 +1,57 @@ +* Socionext NetSec Ethernet Controller IP + +Required properties: +- compatible: Should be "socionext,synquacer-netsec" +- reg: Address and length of the control register area, followed by the + address and length of the EEPROM holding the MAC address and + microengine firmware +- interrupts: Should contain ethernet controller interrupt +- clocks: phandle to the PHY reference clock, and any other clocks to be + switched by runtime_pm +- clock-names: Required only if more than a single clock is listed in 'clocks'. + The PHY reference clock must be named 'phy_refclk' +- phy-mode: See ethernet.txt file in the same directory +- phy-handle: See ethernet.txt in the same directory. + +- mdio device tree subnode: When the Netsec has a phy connected to its local + mdio, there must be device tree subnode with the following + required properties: + + - compatible: Must be "socionext,snq-mdio". + - #address-cells: Must be <1>. + - #size-cells: Must be <0>. + + For each phy on the mdio bus, there must be a node with the following + fields: + - compatible: Refer to phy.txt + - reg: phy id used to communicate to phy. + +Optional properties: (See ethernet.txt file in the same directory) +- dma-coherent: Boolean property, must only be present if memory + accesses performed by the device are cache coherent. +- local-mac-address: See ethernet.txt in the same directory. +- mac-address: See ethernet.txt in the same directory. +- max-speed: See ethernet.txt in the same directory. +- max-frame-size: See ethernet.txt in the same directory. + +Example: + eth0: netsec@522d0000 { + compatible = "socionext,synquacer-netsec"; + reg = <0 0x522d0000 0x0 0x10000>, <0 0x10000000 0x0 0x10000>; + interrupts = <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&clk_netsec>; + phy-mode = "rgmii"; + max-speed = <1000>; + max-frame-size = <9000>; + phy-handle = <&phy1>; + + mdio { + compatible = "socionext,snq-mdio"; + #address-cells = <1>; + #size-cells = <0>; + phy1: ethernet-phy@1 { + compatible = "ethernet-phy-ieee802.3-c22"; + reg = <1>; + }; + }; + };