1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 # Copyright 2019 BayLibre, SAS
5 $id: "http://devicetree.org/schemas/net/amlogic,meson-dwmac.yaml#"
6 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
8 title: Amlogic Meson DWMAC Ethernet controller
11 - Neil Armstrong <narmstrong@baylibre.com>
12 - Martin Blumenstingl <martin.blumenstingl@googlemail.com>
14 # We need a select here so we don't match all nodes with 'snps,dwmac'
20 - amlogic,meson6-dwmac
21 - amlogic,meson8b-dwmac
22 - amlogic,meson8m2-dwmac
23 - amlogic,meson-gxbb-dwmac
24 - amlogic,meson-axg-dwmac
25 - amlogic,meson-g12a-dwmac
30 - $ref: "snps,dwmac.yaml#"
36 - amlogic,meson8b-dwmac
37 - amlogic,meson8m2-dwmac
38 - amlogic,meson-gxbb-dwmac
39 - amlogic,meson-axg-dwmac
40 - amlogic,meson-g12a-dwmac
48 - description: GMAC main clock
49 - description: First parent clock of the internal mux
50 - description: Second parent clock of the internal mux
51 - description: The clock which drives the timing adjustment logic
60 - const: timing-adjustment
63 $ref: /schemas/types.yaml#/definitions/uint32
65 The internal RGMII TX clock delay (provided by this driver) in
66 nanoseconds. Allowed values are 0ns, 2ns, 4ns, 6ns.
67 When phy-mode is set to "rgmii" then the TX delay should be
68 explicitly configured. When not configured a fallback of 2ns is
69 used. When the phy-mode is set to either "rgmii-id" or "rgmii-txid"
70 the TX clock delay is already provided by the PHY. In that case
71 this property should be set to 0ns (which disables the TX clock
72 delay in the MAC to prevent the clock from going off because both
73 PHY and MAC are adding a delay).
74 Any configuration is ignored when the phy-mode is set to "rmii".
82 The internal RGMII RX clock delay (provided by this IP block) in
83 nanoseconds. When phy-mode is set to "rgmii" then the RX delay
84 should be explicitly configured. When the phy-mode is set to
85 either "rgmii-id" or "rgmii-rxid" the RX clock delay is already
86 provided by the PHY. Any configuration is ignored when the
87 phy-mode is set to "rmii".
95 - amlogic,meson6-dwmac
96 - amlogic,meson8b-dwmac
97 - amlogic,meson8m2-dwmac
98 - amlogic,meson-gxbb-dwmac
99 - amlogic,meson-axg-dwmac
100 - amlogic,meson-g12a-dwmac
109 The first register range should be the one of the DWMAC controller
111 The second range is is for the Amlogic specific configuration
112 (for example the PRG_ETHERNET register range on Meson8b and newer)
123 unevaluatedProperties: false
127 ethmac: ethernet@c9410000 {
128 compatible = "amlogic,meson-gxbb-dwmac", "snps,dwmac";
129 reg = <0xc9410000 0x10000>, <0xc8834540 0x8>;
131 interrupt-names = "macirq";
132 clocks = <&clk_eth>, <&clk_fclk_div2>, <&clk_mpll2>, <&clk_fclk_div2>;
133 clock-names = "stmmaceth", "clkin0", "clkin1", "timing-adjustment";