[PATCH] stmmac: Add device-tree support
From: sr@denx.de (Stefan Roese)
Date: 2012-03-12 15:06:26
Also in:
linux-devicetree, netdev
Hi Rob, On Monday 12 March 2012 15:34:59 Rob Herring wrote:
On 03/12/2012 09:05 AM, Stefan Roese wrote:quoted
This patch adds support to configure the STMMAC ethernet driver via device-tree instead of platform_data. Currently, only the properties needed on SPEAr600 are provided. All other properties should be added once needed on other platforms. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Giuseppe Cavallaro <redacted> Cc: Viresh Kumar <redacted> --- Documentation/devicetree/bindings/net/stmmac.txt | 38 +++++++++++ .../net/ethernet/stmicro/stmmac/stmmac_platform.c | 66 +++++++++++++++++++- 2 files changed, 103 insertions(+), 1 deletion(-) create mode 100644 Documentation/devicetree/bindings/net/stmmac.txtdiff --git a/Documentation/devicetree/bindings/net/stmmac.txtb/Documentation/devicetree/bindings/net/stmmac.txt new file mode 100644 index 0000000..386a47f--- /dev/null +++ b/Documentation/devicetree/bindings/net/stmmac.txt@@ -0,0 +1,38 @@ +* STMicroelectronics 10/100/1000 Ethernet driver (GMAC) + +Required properties: +- compatible: Should be "stm,gmac"This is too generic. This should be 1 string per version of h/w.
Viresh, Giuseppe, can you please suggest a proper string for the SPEAr600 STMMAC core, including version?
'stm' should be 'st' according to vendor-prefixes.txt.
Okay.
quoted
+- reg: Address and length of the register set for the device +- interrupt-parent: Should be the phandle for the interrupt controller + that services interrupts for this device +- interrupts: Should contain the STMMAC interrupts +- interrupt-names: Should contain the interrupt names "macirq" + "eth_wake_irq" if this interrupt is supported in the "interrupts" + propertyYou should be able to tell this from the compatible string and number of interrupts.
Yes. Currently the driver uses platform_get_irq_byname() to register the irq's. That's why I added these properties. Is there something wrong with using it this way?
quoted
+- phy-mode: String, operation mode of the PHY interface. + Supported values are: "mii", "rmii", "gmii", "rgmii". +- phy-addr: MDIO address of the PHYThis is normally probed or the mdio bus is a sub-node of the MAC node. See arch/powerpc/boot/dts/mpc8377_mds.dts for an example.
Okay, I'll rework this.
quoted
+ +Optional properties: +- stm,prog-burst-len: Specify the burst length +- stm,has-gmac: Indicates that the controller supports 1000Mbps +- stm,has-pmt: Indicates that the controller supports power managementI think these should all be encoded by the compatible string.
You mean that by defining a specific compatible string (e.g. "st,gmac-spear600"), these settings are implicitly set? And should therefore be omitted from the dts? Thanks, Stefan