Commit 7e0b4cd0 authored by Dinh Nguyen's avatar Dinh Nguyen

dts: socfpga: Add DTS entry for adding the stmmac glue layer for stmmac.

This patch adds the dts bindings documenation for the Altera SOCFPGA glue
layer for the Synopsys STMMAC ethernet driver.
Signed-off-by: default avatarDinh Nguyen <dinguyen@altera.com>
Acked-by: default avatarDavid S. Miller <davem@davemloft.net>
---
v3: Remove stray empty line at end of socfpga_cyclone5_socdk.dts
v2: Use the dwmac-sti as an example for a glue layer and split patch up
to have dts as a separate patch. Also cc dts maintainers since there is
a new binding.
parent 2d237c06
Altera SOCFPGA SoC DWMAC controller
The device node has following properties.
Required properties:
- compatible : Should contain "altr,socfpga-stmmac"
- altr,sysmgr-syscon : Should be the phandle to the system manager node that
encompasses the glue register, and the register offset.
Sub-nodes:
The dwmac core should be added as subnode to SOCFPGA dwmac glue.
- dwmac : The binding details of dwmac can be found in
Documentation/devicetree/bindings/net/stmmac.txt
Example:
ethernet0: ethernet0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "altr,socfpga-stmmac";
altr,sysmgr-syscon = <&sysmgr 0x60>;
status = "disabled";
ranges;
gmac0: gmac0@ff700000 {
compatible = "snps,dwmac-3.70a", "snps,dwmac";
reg = <0xff700000 0x2000>;
interrupts = <0 115 4>;
interrupt-names = "macirq";
mac-address = [00 00 00 00 00 00];/* Filled in by U-Boot */
clocks = <&emac0_clk>;
clock-names = "stmmaceth";
};
};
......@@ -441,26 +441,43 @@ qspi_clk: qspi_clk {
};
};
gmac0: ethernet@ff700000 {
compatible = "altr,socfpga-stmmac", "snps,dwmac-3.70a", "snps,dwmac";
reg = <0xff700000 0x2000>;
interrupts = <0 115 4>;
interrupt-names = "macirq";
mac-address = [00 00 00 00 00 00];/* Filled in by U-Boot */
clocks = <&emac0_clk>;
clock-names = "stmmaceth";
ethernet0: ethernet0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "altr,socfpga-stmmac";
altr,sysmgr-syscon = <&sysmgr 0x60>;
status = "disabled";
ranges;
gmac0: gmac0@ff700000 {
compatible = "snps,dwmac-3.70a", "snps,dwmac";
reg = <0xff700000 0x2000>;
interrupts = <0 115 4>;
interrupt-names = "macirq";
mac-address = [00 00 00 00 00 00];/* Filled in by U-Boot */
clocks = <&emac0_clk>;
clock-names = "stmmaceth";
};
};
gmac1: ethernet@ff702000 {
compatible = "altr,socfpga-stmmac", "snps,dwmac-3.70a", "snps,dwmac";
reg = <0xff702000 0x2000>;
interrupts = <0 120 4>;
interrupt-names = "macirq";
mac-address = [00 00 00 00 00 00];/* Filled in by U-Boot */
clocks = <&emac1_clk>;
clock-names = "stmmaceth";
ethernet1: ethernet1 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "altr,socfpga-stmmac";
altr,sysmgr-syscon = <&sysmgr 0x60>;
status = "disabled";
ranges;
gmac1: gmac1@ff702000 {
device_type = "network";
compatible = "snps,dwmac-3.70a", "snps,dwmac";
reg = <0xff702000 0x2000>;
interrupts = <0 120 4>;
interrupt-names = "macirq";
mac-address = [00 00 00 00 00 00];/* Filled in by U-Boot */
clocks = <&emac1_clk>;
clock-names = "stmmaceth";
};
};
L2: l2-cache@fffef000 {
......
......@@ -37,4 +37,28 @@ aliases {
*/
ethernet0 = &gmac1;
};
aliases {
/* this allow the ethaddr uboot environmnet variable contents
* to be added to the gmac1 device tree blob.
*/
ethernet0 = &gmac1;
};
};
&ethernet1 {
status = "okay";
};
&gmac1 {
phy-mode = "rgmii";
rxd0-skew-ps = <0>;
rxd1-skew-ps = <0>;
rxd2-skew-ps = <0>;
rxd3-skew-ps = <0>;
txen-skew-ps = <0>;
txc-skew-ps = <2600>;
rxdv-skew-ps = <0>;
rxc-skew-ps = <2000>;
};
......@@ -38,3 +38,20 @@ aliases {
ethernet0 = &gmac1;
};
};
&ethernet1 {
status = "okay";
};
&gmac1 {
phy-mode = "rgmii";
rxd0-skew-ps = <0>;
rxd1-skew-ps = <0>;
rxd2-skew-ps = <0>;
rxd3-skew-ps = <0>;
txen-skew-ps = <0>;
txc-skew-ps = <2600>;
rxdv-skew-ps = <0>;
rxc-skew-ps = <2000>;
};
......@@ -30,8 +30,28 @@ memory {
device_type = "memory";
reg = <0x0 0x40000000>; /* 1GB */
};
aliases {
/* this allow the ethaddr uboot environmnet variable contents
* to be added to the gmac1 device tree blob.
*/
ethernet0 = &gmac1;
};
};
&gmac1 {
&ethernet1 {
status = "okay";
};
&gmac1 {
phy-mode = "rgmii";
rxd0-skew-ps = <0>;
rxd1-skew-ps = <0>;
rxd2-skew-ps = <0>;
rxd3-skew-ps = <0>;
txen-skew-ps = <0>;
txc-skew-ps = <2600>;
rxdv-skew-ps = <0>;
rxc-skew-ps = <2000>;
};
......@@ -75,3 +75,11 @@ sysmgr@ffd08000 {
};
};
};
&ethernet0 {
status = "okay";
};
&gmac0 {
phy-mode = "gmii";
};
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment