Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: dts: artpec: migrate ethernet to stmmac binding

The snps,dwc-qos-ethernet binding is still supported as a glue layer
in the stmmac driver.
However, since the snps,dwc-qos-ethernet binding is now deprecated,
migrate to stmmac's native binding.

At the same time, enable features supported by the stmmac driver,
such as PTP, LPI, and an additional tx queue.

Signed-off-by: Niklas Cassel <niklas.cassel@axis.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>

authored by

Niklas Cassel and committed by
Arnd Bergmann
b49de2df 60bed798

+36 -7
+1
arch/arm/boot/dts/artpec6-devboard.dts
··· 59 59 mdio { 60 60 #address-cells = <0x1>; 61 61 #size-cells = <0x0>; 62 + compatible = "snps,dwmac-mdio"; 62 63 phy1: phy@0 { 63 64 compatible = "ethernet-phy-ieee802.3-c22"; 64 65 device_type = "ethernet-phy";
+35 -7
arch/arm/boot/dts/artpec6.dtsi
··· 188 188 dma-ranges; 189 189 190 190 ethernet: ethernet@f8010000 { 191 - clock-names = "phy_ref_clk", "apb_pclk"; 192 - clocks = <&eth_phy_ref_clk>, 193 - <&clkctrl ARTPEC6_CLK_ETH_ACLK>; 194 - compatible = "snps,dwc-qos-ethernet-4.10"; 195 - interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 191 + clock-names = "stmmaceth", "ptp_ref"; 192 + clocks = <&clkctrl ARTPEC6_CLK_ETH_ACLK>, 193 + <&clkctrl ARTPEC6_CLK_PTP_REF>; 194 + compatible = "snps,dwmac-4.10a", "snps,dwmac"; 195 + interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>, 196 + <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 197 + interrupt-names = "macirq", "eth_lpi"; 196 198 reg = <0xf8010000 0x4000>; 197 199 198 - snps,write-requests = <2>; 199 - snps,read-requests = <16>; 200 + snps,axi-config = <&stmmac_axi_setup>; 201 + snps,mtl-rx-config = <&mtl_rx_setup>; 202 + snps,mtl-tx-config = <&mtl_tx_setup>; 203 + 200 204 snps,txpbl = <8>; 201 205 snps,rxpbl = <2>; 206 + snps,aal; 207 + snps,tso; 202 208 203 209 status = "disabled"; 210 + 211 + stmmac_axi_setup: stmmac-axi-config { 212 + snps,wr_osr_lmt = <1>; 213 + snps,rd_osr_lmt = <15>; 214 + /* If FB is disabled, the AXI master chooses 215 + * a burst length of any value less than the 216 + * maximum enabled burst length 217 + * (all lesser burst length enables are redundant). 218 + */ 219 + snps,blen = <0 0 0 0 16 0 0>; 220 + }; 221 + 222 + mtl_rx_setup: rx-queues-config { 223 + snps,rx-queues-to-use = <1>; 224 + queue0 {}; 225 + }; 226 + 227 + mtl_tx_setup: tx-queues-config { 228 + snps,tx-queues-to-use = <2>; 229 + queue0 {}; 230 + queue1 {}; 231 + }; 204 232 }; 205 233 206 234 uart0: serial@f8036000 {