Message ID | 20241118082707.8504-3-a0987203069@gmail.com |
---|---|
State | New |
Headers | show |
Series | Add support for Nuvoton MA35D1 GMAC | expand |
On 18/11/2024 09:27, Joey Lu wrote: > diff --git a/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi b/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi > index e51b98f5bdce..2e0071329309 100644 > --- a/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi > +++ b/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi > @@ -379,5 +379,57 @@ uart16: serial@40880000 { > clocks = <&clk UART16_GATE>; > status = "disabled"; > }; > + > + gmac0: ethernet@40120000 { > + compatible = "nuvoton,ma35d1-dwmac"; > + reg = <0x0 0x40120000 0x0 0x10000>; > + interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; > + interrupt-names = "macirq"; > + clocks = <&clk EMAC0_GATE>, <&clk EPLL_DIV8>; > + clock-names = "stmmaceth", "ptp_ref"; > + > + nuvoton,sys = <&sys 0>; > + resets = <&sys MA35D1_RESET_GMAC0>; > + reset-names = "stmmaceth"; > + status = "disabled"; Status is always, always the last property. Please read and follow DTS coding style. Best regards, Krzysztof
Dear Krzysztof, Thank you for your reply. Krzysztof Kozlowski 於 11/26/2024 6:08 PM 寫道: > On 18/11/2024 09:27, Joey Lu wrote: >> diff --git a/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi b/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi >> index e51b98f5bdce..2e0071329309 100644 >> --- a/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi >> +++ b/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi >> @@ -379,5 +379,57 @@ uart16: serial@40880000 { >> clocks = <&clk UART16_GATE>; >> status = "disabled"; >> }; >> + >> + gmac0: ethernet@40120000 { >> + compatible = "nuvoton,ma35d1-dwmac"; >> + reg = <0x0 0x40120000 0x0 0x10000>; >> + interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; >> + interrupt-names = "macirq"; >> + clocks = <&clk EMAC0_GATE>, <&clk EPLL_DIV8>; >> + clock-names = "stmmaceth", "ptp_ref"; >> + >> + nuvoton,sys = <&sys 0>; >> + resets = <&sys MA35D1_RESET_GMAC0>; >> + reset-names = "stmmaceth"; >> + status = "disabled"; > Status is always, always the last property. Please read and follow DTS > coding style. > > Best regards, > Krzysztof Got it. I will fix these. Thanks! BR, Joey
diff --git a/arch/arm64/boot/dts/nuvoton/ma35d1-iot-512m.dts b/arch/arm64/boot/dts/nuvoton/ma35d1-iot-512m.dts index 9482bec1aa57..5cc712ae92d8 100644 --- a/arch/arm64/boot/dts/nuvoton/ma35d1-iot-512m.dts +++ b/arch/arm64/boot/dts/nuvoton/ma35d1-iot-512m.dts @@ -18,6 +18,8 @@ aliases { serial12 = &uart12; serial13 = &uart13; serial14 = &uart14; + ethernet0 = &gmac0; + ethernet1 = &gmac1; }; chosen { @@ -126,3 +128,13 @@ &uart14 { pinctrl-0 = <&pinctrl_uart14>; status = "okay"; }; + +&gmac0 { + phy-mode = "rgmii-id"; + status = "okay"; +}; + +&gmac1 { + phy-mode = "rmii"; + status = "okay"; +}; diff --git a/arch/arm64/boot/dts/nuvoton/ma35d1-som-256m.dts b/arch/arm64/boot/dts/nuvoton/ma35d1-som-256m.dts index f6f20a17e501..1d9ac350a1f1 100644 --- a/arch/arm64/boot/dts/nuvoton/ma35d1-som-256m.dts +++ b/arch/arm64/boot/dts/nuvoton/ma35d1-som-256m.dts @@ -18,6 +18,8 @@ aliases { serial12 = &uart12; serial14 = &uart14; serial16 = &uart16; + ethernet0 = &gmac0; + ethernet1 = &gmac1; }; chosen { @@ -129,3 +131,11 @@ &uart16 { pinctrl-0 = <&pinctrl_uart16>; status = "okay"; }; + +&gmac0 { + status = "okay"; +}; + +&gmac1 { + status = "okay"; +}; diff --git a/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi b/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi index e51b98f5bdce..2e0071329309 100644 --- a/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi +++ b/arch/arm64/boot/dts/nuvoton/ma35d1.dtsi @@ -379,5 +379,57 @@ uart16: serial@40880000 { clocks = <&clk UART16_GATE>; status = "disabled"; }; + + gmac0: ethernet@40120000 { + compatible = "nuvoton,ma35d1-dwmac"; + reg = <0x0 0x40120000 0x0 0x10000>; + interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "macirq"; + clocks = <&clk EMAC0_GATE>, <&clk EPLL_DIV8>; + clock-names = "stmmaceth", "ptp_ref"; + + nuvoton,sys = <&sys 0>; + resets = <&sys MA35D1_RESET_GMAC0>; + reset-names = "stmmaceth"; + status = "disabled"; + + phy-mode = "rgmii-id"; + phy-handle = <ð_phy0>; + mdio0: mdio { + compatible = "snps,dwmac-mdio"; + #address-cells = <1>; + #size-cells = <0>; + + eth_phy0: ethernet-phy@0 { + reg = <0>; + }; + }; + }; + + gmac1: ethernet@40130000 { + compatible = "nuvoton,ma35d1-dwmac"; + reg = <0x0 0x40130000 0x0 0x10000>; + interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; + interrupt-names = "macirq"; + clocks = <&clk EMAC1_GATE>, <&clk EPLL_DIV8>; + clock-names = "stmmaceth", "ptp_ref"; + + nuvoton,sys = <&sys 1>; + resets = <&sys MA35D1_RESET_GMAC1>; + reset-names = "stmmaceth"; + status = "disabled"; + + phy-mode = "rgmii-id"; + phy-handle = <ð_phy1>; + mdio1: mdio { + compatible = "snps,dwmac-mdio"; + #address-cells = <1>; + #size-cells = <0>; + + eth_phy1: ethernet-phy@1 { + reg = <1>; + }; + }; + }; }; };
Add GMAC nodes for our MA35D1 development boards: two RGMII interfaces for SOM board, and one RGMII and one RMII interface for IoT board. Signed-off-by: Joey Lu <a0987203069@gmail.com> --- .../boot/dts/nuvoton/ma35d1-iot-512m.dts | 12 +++++ .../boot/dts/nuvoton/ma35d1-som-256m.dts | 10 ++++ arch/arm64/boot/dts/nuvoton/ma35d1.dtsi | 52 +++++++++++++++++++ 3 files changed, 74 insertions(+)