~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/net/snps,dwmac.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/devicetree/bindings/net/snps,dwmac.yaml (Version linux-6.12-rc7) and /Documentation/devicetree/bindings/net/snps,dwmac.yaml (Version linux-6.0.19)


  1 # SPDX-License-Identifier: GPL-2.0                  1 # SPDX-License-Identifier: GPL-2.0
  2 %YAML 1.2                                           2 %YAML 1.2
  3 ---                                                 3 ---
  4 $id: http://devicetree.org/schemas/net/snps,dw      4 $id: http://devicetree.org/schemas/net/snps,dwmac.yaml#
  5 $schema: http://devicetree.org/meta-schemas/co      5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6                                                     6 
  7 title: Synopsys DesignWare MAC                 !!   7 title: Synopsys DesignWare MAC Device Tree Bindings
  8                                                     8 
  9 maintainers:                                        9 maintainers:
 10   - Alexandre Torgue <alexandre.torgue@foss.st.     10   - Alexandre Torgue <alexandre.torgue@foss.st.com>
 11   - Giuseppe Cavallaro <peppe.cavallaro@st.com>     11   - Giuseppe Cavallaro <peppe.cavallaro@st.com>
 12   - Jose Abreu <joabreu@synopsys.com>               12   - Jose Abreu <joabreu@synopsys.com>
 13                                                    13 
 14 # Select every compatible, including the depre     14 # Select every compatible, including the deprecated ones. This way, we
 15 # will be able to report a warning when we hav     15 # will be able to report a warning when we have that compatible, since
 16 # we will validate the node thanks to the sele     16 # we will validate the node thanks to the select, but won't report it
 17 # as a valid value in the compatible property      17 # as a valid value in the compatible property description
 18 select:                                            18 select:
 19   properties:                                      19   properties:
 20     compatible:                                    20     compatible:
 21       contains:                                    21       contains:
 22         enum:                                      22         enum:
 23           - snps,dwmac                             23           - snps,dwmac
 24           - snps,dwmac-3.40a                       24           - snps,dwmac-3.40a
 25           - snps,dwmac-3.50a                       25           - snps,dwmac-3.50a
 26           - snps,dwmac-3.610                       26           - snps,dwmac-3.610
 27           - snps,dwmac-3.70a                       27           - snps,dwmac-3.70a
 28           - snps,dwmac-3.710                       28           - snps,dwmac-3.710
 29           - snps,dwmac-4.00                        29           - snps,dwmac-4.00
 30           - snps,dwmac-4.10a                       30           - snps,dwmac-4.10a
 31           - snps,dwmac-4.20a                       31           - snps,dwmac-4.20a
 32           - snps,dwmac-5.10a                       32           - snps,dwmac-5.10a
 33           - snps,dwmac-5.20                    << 
 34           - snps,dwxgmac                           33           - snps,dwxgmac
 35           - snps,dwxgmac-2.10                      34           - snps,dwxgmac-2.10
 36                                                    35 
 37           # Deprecated                             36           # Deprecated
 38           - st,spear600-gmac                       37           - st,spear600-gmac
 39                                                    38 
 40   required:                                        39   required:
 41     - compatible                                   40     - compatible
 42                                                    41 
 43 properties:                                        42 properties:
 44                                                    43 
 45   # We need to include all the compatibles fro     44   # We need to include all the compatibles from schemas that will
 46   # include that schemas, otherwise compatible     45   # include that schemas, otherwise compatible won't validate for
 47   # those.                                         46   # those.
 48   compatible:                                      47   compatible:
 49     contains:                                      48     contains:
 50       enum:                                        49       enum:
 51         - allwinner,sun7i-a20-gmac                 50         - allwinner,sun7i-a20-gmac
 52         - allwinner,sun8i-a83t-emac                51         - allwinner,sun8i-a83t-emac
 53         - allwinner,sun8i-h3-emac                  52         - allwinner,sun8i-h3-emac
 54         - allwinner,sun8i-r40-gmac                 53         - allwinner,sun8i-r40-gmac
 55         - allwinner,sun8i-v3s-emac                 54         - allwinner,sun8i-v3s-emac
 56         - allwinner,sun50i-a64-emac                55         - allwinner,sun50i-a64-emac
 57         - amlogic,meson6-dwmac                     56         - amlogic,meson6-dwmac
 58         - amlogic,meson8b-dwmac                    57         - amlogic,meson8b-dwmac
 59         - amlogic,meson8m2-dwmac                   58         - amlogic,meson8m2-dwmac
 60         - amlogic,meson-gxbb-dwmac                 59         - amlogic,meson-gxbb-dwmac
 61         - amlogic,meson-axg-dwmac                  60         - amlogic,meson-axg-dwmac
 62         - ingenic,jz4775-mac                       61         - ingenic,jz4775-mac
 63         - ingenic,x1000-mac                        62         - ingenic,x1000-mac
 64         - ingenic,x1600-mac                        63         - ingenic,x1600-mac
 65         - ingenic,x1830-mac                        64         - ingenic,x1830-mac
 66         - ingenic,x2000-mac                        65         - ingenic,x2000-mac
 67         - loongson,ls2k-dwmac                      66         - loongson,ls2k-dwmac
 68         - loongson,ls7a-dwmac                      67         - loongson,ls7a-dwmac
 69         - qcom,qcs404-ethqos                   << 
 70         - qcom,sa8775p-ethqos                  << 
 71         - qcom,sc8280xp-ethqos                 << 
 72         - qcom,sm8150-ethqos                   << 
 73         - renesas,r9a06g032-gmac                   68         - renesas,r9a06g032-gmac
 74         - renesas,rzn1-gmac                        69         - renesas,rzn1-gmac
 75         - rockchip,px30-gmac                       70         - rockchip,px30-gmac
 76         - rockchip,rk3128-gmac                     71         - rockchip,rk3128-gmac
 77         - rockchip,rk3228-gmac                     72         - rockchip,rk3228-gmac
 78         - rockchip,rk3288-gmac                     73         - rockchip,rk3288-gmac
 79         - rockchip,rk3308-gmac                 << 
 80         - rockchip,rk3328-gmac                     74         - rockchip,rk3328-gmac
 81         - rockchip,rk3366-gmac                     75         - rockchip,rk3366-gmac
 82         - rockchip,rk3368-gmac                     76         - rockchip,rk3368-gmac
 83         - rockchip,rk3576-gmac                 << 
 84         - rockchip,rk3588-gmac                 << 
 85         - rockchip,rk3399-gmac                     77         - rockchip,rk3399-gmac
 86         - rockchip,rv1108-gmac                     78         - rockchip,rv1108-gmac
 87         - snps,dwmac                               79         - snps,dwmac
 88         - snps,dwmac-3.40a                         80         - snps,dwmac-3.40a
 89         - snps,dwmac-3.50a                         81         - snps,dwmac-3.50a
 90         - snps,dwmac-3.610                         82         - snps,dwmac-3.610
 91         - snps,dwmac-3.70a                         83         - snps,dwmac-3.70a
 92         - snps,dwmac-3.710                         84         - snps,dwmac-3.710
 93         - snps,dwmac-4.00                          85         - snps,dwmac-4.00
 94         - snps,dwmac-4.10a                         86         - snps,dwmac-4.10a
 95         - snps,dwmac-4.20a                         87         - snps,dwmac-4.20a
 96         - snps,dwmac-5.10a                         88         - snps,dwmac-5.10a
 97         - snps,dwmac-5.20                      << 
 98         - snps,dwxgmac                             89         - snps,dwxgmac
 99         - snps,dwxgmac-2.10                        90         - snps,dwxgmac-2.10
100         - starfive,jh7100-dwmac                << 
101         - starfive,jh7110-dwmac                << 
102                                                    91 
103   reg:                                             92   reg:
104     minItems: 1                                    93     minItems: 1
105     maxItems: 2                                    94     maxItems: 2
106                                                    95 
107   interrupts:                                      96   interrupts:
108     minItems: 1                                    97     minItems: 1
109     items:                                         98     items:
110       - description: Combined signal for vario     99       - description: Combined signal for various interrupt events
111       - description: The interrupt to manage t    100       - description: The interrupt to manage the remote wake-up packet detection
112       - description: The interrupt that occurs    101       - description: The interrupt that occurs when Rx exits the LPI state
113       - description: The interrupt that occurs << 
114                                                   102 
115   interrupt-names:                                103   interrupt-names:
116     minItems: 1                                   104     minItems: 1
117     items:                                        105     items:
118       - const: macirq                             106       - const: macirq
119       - enum: [eth_wake_irq, eth_lpi, sfty]    !! 107       - const: eth_wake_irq
120       - enum: [eth_wake_irq, eth_lpi, sfty]    !! 108       - const: eth_lpi
121       - enum: [eth_wake_irq, eth_lpi, sfty]    << 
122                                                   109 
123   clocks:                                         110   clocks:
124     minItems: 1                                   111     minItems: 1
125     maxItems: 8                                   112     maxItems: 8
126     additionalItems: true                         113     additionalItems: true
127     items:                                        114     items:
128       - description: GMAC main clock              115       - description: GMAC main clock
129       - description: Peripheral registers inte    116       - description: Peripheral registers interface clock
130       - description:                              117       - description:
131           PTP reference clock. This clock is u    118           PTP reference clock. This clock is used for programming the
132           Timestamp Addend Register. If not pa    119           Timestamp Addend Register. If not passed then the system
133           clock will be used and this is fine     120           clock will be used and this is fine on some platforms.
134                                                   121 
135   clock-names:                                    122   clock-names:
136     minItems: 1                                   123     minItems: 1
137     maxItems: 8                                   124     maxItems: 8
138     additionalItems: true                         125     additionalItems: true
139     contains:                                     126     contains:
140       enum:                                       127       enum:
141         - stmmaceth                               128         - stmmaceth
142         - pclk                                    129         - pclk
143         - ptp_ref                                 130         - ptp_ref
144                                                   131 
145   resets:                                         132   resets:
146     minItems: 1                                !! 133     maxItems: 1
147     items:                                     !! 134     description:
148       - description: GMAC stmmaceth reset      !! 135       MAC Reset signal.
149       - description: AHB reset                 << 
150                                                   136 
151   reset-names:                                    137   reset-names:
152     oneOf:                                     !! 138     const: stmmaceth
153       - items:                                 << 
154           - enum: [stmmaceth, ahb]             << 
155       - items:                                 << 
156           - const: stmmaceth                   << 
157           - const: ahb                         << 
158                                                   139 
159   power-domains:                                  140   power-domains:
160     maxItems: 1                                   141     maxItems: 1
161                                                   142 
162   mac-mode:                                       143   mac-mode:
163     $ref: ethernet-controller.yaml#/properties    144     $ref: ethernet-controller.yaml#/properties/phy-connection-type
164     description:                                  145     description:
165       The property is identical to 'phy-mode',    146       The property is identical to 'phy-mode', and assumes that there is mode
166       converter in-between the MAC & PHY (e.g.    147       converter in-between the MAC & PHY (e.g. GMII-to-RGMII). This converter
167       can be passive (no SW requirement), and     148       can be passive (no SW requirement), and requires that the MAC operate
168       in a different mode than the PHY in orde    149       in a different mode than the PHY in order to function.
169                                                   150 
170   snps,axi-config:                                151   snps,axi-config:
171     $ref: /schemas/types.yaml#/definitions/pha    152     $ref: /schemas/types.yaml#/definitions/phandle
172     description:                                  153     description:
173       AXI BUS Mode parameters. Phandle to a no    154       AXI BUS Mode parameters. Phandle to a node that can contain the
174       following properties                        155       following properties
175         * snps,lpi_en, enable Low Power Interf    156         * snps,lpi_en, enable Low Power Interface
176         * snps,xit_frm, unlock on WoL             157         * snps,xit_frm, unlock on WoL
177         * snps,wr_osr_lmt, max write outstandi    158         * snps,wr_osr_lmt, max write outstanding req. limit
178         * snps,rd_osr_lmt, max read outstandin    159         * snps,rd_osr_lmt, max read outstanding req. limit
179         * snps,kbbe, do not cross 1KiB boundar    160         * snps,kbbe, do not cross 1KiB boundary.
180         * snps,blen, this is a vector of suppo    161         * snps,blen, this is a vector of supported burst length.
181         * snps,fb, fixed-burst                    162         * snps,fb, fixed-burst
182         * snps,mb, mixed-burst                    163         * snps,mb, mixed-burst
183         * snps,rb, rebuild INCRx Burst            164         * snps,rb, rebuild INCRx Burst
184                                                   165 
185   snps,mtl-rx-config:                             166   snps,mtl-rx-config:
186     $ref: /schemas/types.yaml#/definitions/pha    167     $ref: /schemas/types.yaml#/definitions/phandle
187     description:                                  168     description:
188       Multiple RX Queues parameters. Phandle t !! 169       Multiple RX Queues parameters. Phandle to a node that can
189       implements the 'rx-queues-config' object !! 170       contain the following properties
190       this binding.                            !! 171         * snps,rx-queues-to-use, number of RX queues to be used in the
191                                                !! 172           driver
192   rx-queues-config:                            !! 173         * Choose one of these RX scheduling algorithms
193     type: object                               !! 174           * snps,rx-sched-sp, Strict priority
194     properties:                                !! 175           * snps,rx-sched-wsp, Weighted Strict priority
195       snps,rx-queues-to-use:                   !! 176         * For each RX queue
196         $ref: /schemas/types.yaml#/definitions !! 177           * Choose one of these modes
197         description: number of RX queues to be !! 178             * snps,dcb-algorithm, Queue to be enabled as DCB
198       snps,rx-sched-sp:                        !! 179             * snps,avb-algorithm, Queue to be enabled as AVB
199         type: boolean                          !! 180           * snps,map-to-dma-channel, Channel to map
200         description: Strict priority           !! 181           * Specifiy specific packet routing
201       snps,rx-sched-wsp:                       !! 182             * snps,route-avcp, AV Untagged Control packets
202         type: boolean                          !! 183             * snps,route-ptp, PTP Packets
203         description: Weighted Strict priority  !! 184             * snps,route-dcbcp, DCB Control Packets
204     allOf:                                     !! 185             * snps,route-up, Untagged Packets
205       - if:                                    !! 186             * snps,route-multi-broad, Multicast & Broadcast Packets
206           required:                            !! 187           * snps,priority, bitmask of the tagged frames priorities assigned to
207             - snps,rx-sched-sp                 !! 188             the queue
208         then:                                  << 
209           properties:                          << 
210             snps,rx-sched-wsp: false           << 
211       - if:                                    << 
212           required:                            << 
213             - snps,rx-sched-wsp                << 
214         then:                                  << 
215           properties:                          << 
216             snps,rx-sched-sp: false            << 
217     patternProperties:                         << 
218       "^queue[0-9]$":                          << 
219         description: Each subnode represents a << 
220         type: object                           << 
221         properties:                            << 
222           snps,dcb-algorithm:                  << 
223             type: boolean                      << 
224             description: Queue to be enabled a << 
225           snps,avb-algorithm:                  << 
226             type: boolean                      << 
227             description: Queue to be enabled a << 
228           snps,map-to-dma-channel:             << 
229             $ref: /schemas/types.yaml#/definit << 
230             description: DMA channel id to map << 
231           snps,route-avcp:                     << 
232             type: boolean                      << 
233             description: AV Untagged Control p << 
234           snps,route-ptp:                      << 
235             type: boolean                      << 
236             description: PTP Packets           << 
237           snps,route-dcbcp:                    << 
238             type: boolean                      << 
239             description: DCB Control Packets   << 
240           snps,route-up:                       << 
241             type: boolean                      << 
242             description: Untagged Packets      << 
243           snps,route-multi-broad:              << 
244             type: boolean                      << 
245             description: Multicast & Broadcast << 
246           snps,priority:                       << 
247             $ref: /schemas/types.yaml#/definit << 
248             maxItems: 1                        << 
249             description: Bitmask of the tagged << 
250         allOf:                                 << 
251           - if:                                << 
252               required:                        << 
253                 - snps,dcb-algorithm           << 
254             then:                              << 
255               properties:                      << 
256                 snps,avb-algorithm: false      << 
257           - if:                                << 
258               required:                        << 
259                 - snps,avb-algorithm           << 
260             then:                              << 
261               properties:                      << 
262                 snps,dcb-algorithm: false      << 
263           - if:                                << 
264               required:                        << 
265                 - snps,route-avcp              << 
266             then:                              << 
267               properties:                      << 
268                 snps,route-ptp: false          << 
269                 snps,route-dcbcp: false        << 
270                 snps,route-up: false           << 
271                 snps,route-multi-broad: false  << 
272           - if:                                << 
273               required:                        << 
274                 - snps,route-ptp               << 
275             then:                              << 
276               properties:                      << 
277                 snps,route-avcp: false         << 
278                 snps,route-dcbcp: false        << 
279                 snps,route-up: false           << 
280                 snps,route-multi-broad: false  << 
281           - if:                                << 
282               required:                        << 
283                 - snps,route-dcbcp             << 
284             then:                              << 
285               properties:                      << 
286                 snps,route-avcp: false         << 
287                 snps,route-ptp: false          << 
288                 snps,route-up: false           << 
289                 snps,route-multi-broad: false  << 
290           - if:                                << 
291               required:                        << 
292                 - snps,route-up                << 
293             then:                              << 
294               properties:                      << 
295                 snps,route-avcp: false         << 
296                 snps,route-ptp: false          << 
297                 snps,route-dcbcp: false        << 
298                 snps,route-multi-broad: false  << 
299           - if:                                << 
300               required:                        << 
301                 - snps,route-multi-broad       << 
302             then:                              << 
303               properties:                      << 
304                 snps,route-avcp: false         << 
305                 snps,route-ptp: false          << 
306                 snps,route-dcbcp: false        << 
307                 snps,route-up: false           << 
308         additionalProperties: false            << 
309     additionalProperties: false                << 
310                                                   189 
311   snps,mtl-tx-config:                             190   snps,mtl-tx-config:
312     $ref: /schemas/types.yaml#/definitions/pha    191     $ref: /schemas/types.yaml#/definitions/phandle
313     description:                                  192     description:
314       Multiple TX Queues parameters. Phandle t !! 193       Multiple TX Queues parameters. Phandle to a node that can
315       implements the 'tx-queues-config' object !! 194       contain the following properties
316       this binding.                            !! 195         * snps,tx-queues-to-use, number of TX queues to be used in the
317                                                !! 196           driver
318   tx-queues-config:                            !! 197         * Choose one of these TX scheduling algorithms
319     type: object                               !! 198           * snps,tx-sched-wrr, Weighted Round Robin
320     properties:                                !! 199           * snps,tx-sched-wfq, Weighted Fair Queuing
321       snps,tx-queues-to-use:                   !! 200           * snps,tx-sched-dwrr, Deficit Weighted Round Robin
322         $ref: /schemas/types.yaml#/definitions !! 201           * snps,tx-sched-sp, Strict priority
323         description: number of TX queues to be !! 202         * For each TX queue
324       snps,tx-sched-wrr:                       !! 203           * snps,weight, TX queue weight (if using a DCB weight
325         type: boolean                          !! 204             algorithm)
326         description: Weighted Round Robin      !! 205           * Choose one of these modes
327       snps,tx-sched-wfq:                       !! 206             * snps,dcb-algorithm, TX queue will be working in DCB
328         type: boolean                          !! 207             * snps,avb-algorithm, TX queue will be working in AVB
329         description: Weighted Fair Queuing     !! 208               [Attention] Queue 0 is reserved for legacy traffic
330       snps,tx-sched-dwrr:                      !! 209                           and so no AVB is available in this queue.
331         type: boolean                          !! 210           * Configure Credit Base Shaper (if AVB Mode selected)
332         description: Deficit Weighted Round Ro !! 211             * snps,send_slope, enable Low Power Interface
333     allOf:                                     !! 212             * snps,idle_slope, unlock on WoL
334       - if:                                    !! 213             * snps,high_credit, max write outstanding req. limit
335           required:                            !! 214             * snps,low_credit, max read outstanding req. limit
336             - snps,tx-sched-wrr                !! 215           * snps,priority, bitmask of the priorities assigned to the queue.
337         then:                                  !! 216             When a PFC frame is received with priorities matching the bitmask,
338           properties:                          !! 217             the queue is blocked from transmitting for the pause time specified
339             snps,tx-sched-wfq: false           !! 218             in the PFC frame.
340             snps,tx-sched-dwrr: false          << 
341       - if:                                    << 
342           required:                            << 
343             - snps,tx-sched-wfq                << 
344         then:                                  << 
345           properties:                          << 
346             snps,tx-sched-wrr: false           << 
347             snps,tx-sched-dwrr: false          << 
348       - if:                                    << 
349           required:                            << 
350             - snps,tx-sched-dwrr               << 
351         then:                                  << 
352           properties:                          << 
353             snps,tx-sched-wrr: false           << 
354             snps,tx-sched-wfq: false           << 
355     patternProperties:                         << 
356       "^queue[0-9]$":                          << 
357         description: Each subnode represents a << 
358         type: object                           << 
359         properties:                            << 
360           snps,weight:                         << 
361             $ref: /schemas/types.yaml#/definit << 
362             description: TX queue weight (if u << 
363           snps,dcb-algorithm:                  << 
364             type: boolean                      << 
365             description: TX queue will be work << 
366           snps,avb-algorithm:                  << 
367             type: boolean                      << 
368             description:                       << 
369               TX queue will be working in AVB. << 
370               Queue 0 is reserved for legacy t << 
371               available in this queue.         << 
372           snps,send_slope:                     << 
373             $ref: /schemas/types.yaml#/definit << 
374             description: enable Low Power Inte << 
375           snps,idle_slope:                     << 
376             $ref: /schemas/types.yaml#/definit << 
377             description: unlock on WoL         << 
378           snps,high_credit:                    << 
379             $ref: /schemas/types.yaml#/definit << 
380             description: max write outstanding << 
381           snps,low_credit:                     << 
382             $ref: /schemas/types.yaml#/definit << 
383             description: max read outstanding  << 
384           snps,priority:                       << 
385             $ref: /schemas/types.yaml#/definit << 
386             maxItems: 1                        << 
387             description:                       << 
388               Bitmask of the tagged frames pri << 
389               When a PFC frame is received wit << 
390               the queue is blocked from transm << 
391               in the PFC frame.                << 
392                                                << 
393           snps,coe-unsupported:                << 
394             type: boolean                      << 
395             description: TX checksum offload i << 
396                                                << 
397         allOf:                                 << 
398           - if:                                << 
399               required:                        << 
400                 - snps,dcb-algorithm           << 
401             then:                              << 
402               properties:                      << 
403                 snps,avb-algorithm: false      << 
404           - if:                                << 
405               required:                        << 
406                 - snps,avb-algorithm           << 
407             then:                              << 
408               properties:                      << 
409                 snps,dcb-algorithm: false      << 
410                 snps,weight: false             << 
411         additionalProperties: false            << 
412     additionalProperties: false                << 
413                                                   219 
414   snps,reset-gpio:                                220   snps,reset-gpio:
415     deprecated: true                              221     deprecated: true
416     maxItems: 1                                   222     maxItems: 1
417     description:                                  223     description:
418       PHY Reset GPIO                              224       PHY Reset GPIO
419                                                   225 
420   snps,reset-active-low:                          226   snps,reset-active-low:
421     deprecated: true                              227     deprecated: true
422     $ref: /schemas/types.yaml#/definitions/fla    228     $ref: /schemas/types.yaml#/definitions/flag
423     description:                                  229     description:
424       Indicates that the PHY Reset is active l    230       Indicates that the PHY Reset is active low
425                                                   231 
426   snps,reset-delays-us:                           232   snps,reset-delays-us:
427     deprecated: true                              233     deprecated: true
428     description:                                  234     description:
429       Triplet of delays. The 1st cell is reset    235       Triplet of delays. The 1st cell is reset pre-delay in micro
430       seconds. The 2nd cell is reset pulse in     236       seconds. The 2nd cell is reset pulse in micro seconds. The 3rd
431       cell is reset post-delay in micro second    237       cell is reset post-delay in micro seconds.
432     minItems: 3                                   238     minItems: 3
433     maxItems: 3                                   239     maxItems: 3
434                                                   240 
435   snps,aal:                                       241   snps,aal:
436     $ref: /schemas/types.yaml#/definitions/fla    242     $ref: /schemas/types.yaml#/definitions/flag
437     description:                                  243     description:
438       Use Address-Aligned Beats                   244       Use Address-Aligned Beats
439                                                   245 
440   snps,pbl:                                    << 
441     description:                               << 
442       Programmable Burst Length (tx and rx)    << 
443     $ref: /schemas/types.yaml#/definitions/uin << 
444     enum: [1, 2, 4, 8, 16, 32]                 << 
445                                                << 
446   snps,txpbl:                                  << 
447     description:                               << 
448       Tx Programmable Burst Length. If set, DM << 
449       value rather than snps,pbl.              << 
450     $ref: /schemas/types.yaml#/definitions/uin << 
451     enum: [1, 2, 4, 8, 16, 32]                 << 
452                                                << 
453   snps,rxpbl:                                  << 
454     description:                               << 
455       Rx Programmable Burst Length. If set, DM << 
456       value rather than snps,pbl.              << 
457     $ref: /schemas/types.yaml#/definitions/uin << 
458     enum: [1, 2, 4, 8, 16, 32]                 << 
459                                                << 
460   snps,no-pbl-x8:                              << 
461     $ref: /schemas/types.yaml#/definitions/fla << 
462     description:                               << 
463       Don\'t multiply the pbl/txpbl/rxpbl valu << 
464       rev < 3.50, don\'t multiply the values b << 
465                                                << 
466   snps,fixed-burst:                               246   snps,fixed-burst:
467     $ref: /schemas/types.yaml#/definitions/fla    247     $ref: /schemas/types.yaml#/definitions/flag
468     description:                                  248     description:
469       Program the DMA to use the fixed burst m    249       Program the DMA to use the fixed burst mode
470                                                   250 
471   snps,mixed-burst:                               251   snps,mixed-burst:
472     $ref: /schemas/types.yaml#/definitions/fla    252     $ref: /schemas/types.yaml#/definitions/flag
473     description:                                  253     description:
474       Program the DMA to use the mixed burst m    254       Program the DMA to use the mixed burst mode
475                                                   255 
476   snps,force_thresh_dma_mode:                     256   snps,force_thresh_dma_mode:
477     $ref: /schemas/types.yaml#/definitions/fla    257     $ref: /schemas/types.yaml#/definitions/flag
478     description:                                  258     description:
479       Force DMA to use the threshold mode for     259       Force DMA to use the threshold mode for both tx and rx
480                                                   260 
481   snps,force_sf_dma_mode:                         261   snps,force_sf_dma_mode:
482     $ref: /schemas/types.yaml#/definitions/fla    262     $ref: /schemas/types.yaml#/definitions/flag
483     description:                                  263     description:
484       Force DMA to use the Store and Forward m    264       Force DMA to use the Store and Forward mode for both tx and
485       rx. This flag is ignored if force_thresh    265       rx. This flag is ignored if force_thresh_dma_mode is set.
486                                                   266 
487   snps,en-tx-lpi-clockgating:                     267   snps,en-tx-lpi-clockgating:
488     $ref: /schemas/types.yaml#/definitions/fla    268     $ref: /schemas/types.yaml#/definitions/flag
489     description:                                  269     description:
490       Enable gating of the MAC TX clock during    270       Enable gating of the MAC TX clock during TX low-power mode
491                                                   271 
492   snps,multicast-filter-bins:                     272   snps,multicast-filter-bins:
493     $ref: /schemas/types.yaml#/definitions/uin    273     $ref: /schemas/types.yaml#/definitions/uint32
494     description:                                  274     description:
495       Number of multicast filter hash bins sup    275       Number of multicast filter hash bins supported by this device
496       instance                                    276       instance
497                                                   277 
498   snps,perfect-filter-entries:                    278   snps,perfect-filter-entries:
499     $ref: /schemas/types.yaml#/definitions/uin    279     $ref: /schemas/types.yaml#/definitions/uint32
500     description:                                  280     description:
501       Number of perfect filter entries support    281       Number of perfect filter entries supported by this device
502       instance                                    282       instance
503                                                   283 
504   snps,ps-speed:                                  284   snps,ps-speed:
505     $ref: /schemas/types.yaml#/definitions/uin    285     $ref: /schemas/types.yaml#/definitions/uint32
506     description:                                  286     description:
507       Port selection speed that can be passed     287       Port selection speed that can be passed to the core when PCS
508       is supported. For example, this is used     288       is supported. For example, this is used in case of SGMII and
509       MAC2MAC connection.                         289       MAC2MAC connection.
510                                                   290 
511   snps,clk-csr:                                << 
512     $ref: /schemas/types.yaml#/definitions/uin << 
513     description:                               << 
514       Frequency division factor for MDC clock. << 
515                                                << 
516   snps,tso:                                    << 
517     $ref: /schemas/types.yaml#/definitions/fla << 
518     description:                               << 
519       Enables the TSO feature otherwise it wil << 
520       register.                                << 
521                                                << 
522   mdio:                                           291   mdio:
523     $ref: mdio.yaml#                              292     $ref: mdio.yaml#
524     unevaluatedProperties: false                  293     unevaluatedProperties: false
525     description:                                  294     description:
526       Creates and registers an MDIO bus.          295       Creates and registers an MDIO bus.
527                                                   296 
528     properties:                                   297     properties:
529       compatible:                                 298       compatible:
530         const: snps,dwmac-mdio                    299         const: snps,dwmac-mdio
531                                                   300 
532     required:                                     301     required:
533       - compatible                                302       - compatible
534                                                   303 
535   stmmac-axi-config:                           << 
536     type: object                               << 
537     unevaluatedProperties: false               << 
538     description:                               << 
539       AXI BUS Mode parameters.                 << 
540                                                << 
541     properties:                                << 
542       snps,lpi_en:                             << 
543         $ref: /schemas/types.yaml#/definitions << 
544         description:                           << 
545           enable Low Power Interface           << 
546                                                << 
547       snps,xit_frm:                            << 
548         $ref: /schemas/types.yaml#/definitions << 
549         description:                           << 
550           unlock on WoL                        << 
551                                                << 
552       snps,wr_osr_lmt:                         << 
553         $ref: /schemas/types.yaml#/definitions << 
554         description:                           << 
555           max write outstanding req. limit     << 
556                                                << 
557       snps,rd_osr_lmt:                         << 
558         $ref: /schemas/types.yaml#/definitions << 
559         description:                           << 
560           max read outstanding req. limit      << 
561                                                << 
562       snps,kbbe:                               << 
563         $ref: /schemas/types.yaml#/definitions << 
564         description:                           << 
565           do not cross 1KiB boundary.          << 
566                                                << 
567       snps,blen:                               << 
568         $ref: /schemas/types.yaml#/definitions << 
569         description:                           << 
570           this is a vector of supported burst  << 
571         minItems: 7                            << 
572         maxItems: 7                            << 
573                                                << 
574       snps,fb:                                 << 
575         $ref: /schemas/types.yaml#/definitions << 
576         description:                           << 
577           fixed-burst                          << 
578                                                << 
579       snps,mb:                                 << 
580         $ref: /schemas/types.yaml#/definitions << 
581         description:                           << 
582           mixed-burst                          << 
583                                                << 
584       snps,rb:                                 << 
585         $ref: /schemas/types.yaml#/definitions << 
586         description:                           << 
587           rebuild INCRx Burst                  << 
588                                                << 
589 required:                                         304 required:
590   - compatible                                    305   - compatible
591   - reg                                           306   - reg
592   - interrupts                                    307   - interrupts
593   - interrupt-names                               308   - interrupt-names
594   - phy-mode                                      309   - phy-mode
595                                                   310 
596 dependencies:                                     311 dependencies:
597   snps,reset-active-low: ["snps,reset-gpio"]      312   snps,reset-active-low: ["snps,reset-gpio"]
598   snps,reset-delays-us: ["snps,reset-gpio"]    !! 313   snps,reset-delay-us: ["snps,reset-gpio"]
599                                                   314 
600 allOf:                                            315 allOf:
601   - $ref: ethernet-controller.yaml#            !! 316   - $ref: "ethernet-controller.yaml#"
602   - if:                                           317   - if:
603       properties:                                 318       properties:
604         compatible:                               319         compatible:
605           not:                                 !! 320           contains:
606             contains:                          !! 321             enum:
607               enum:                            !! 322               - allwinner,sun7i-a20-gmac
608                 - allwinner,sun7i-a20-gmac     !! 323               - allwinner,sun8i-a83t-emac
609                 - allwinner,sun8i-a83t-emac    !! 324               - allwinner,sun8i-h3-emac
610                 - allwinner,sun8i-h3-emac      !! 325               - allwinner,sun8i-r40-gmac
611                 - allwinner,sun8i-r40-gmac     !! 326               - allwinner,sun8i-v3s-emac
612                 - allwinner,sun8i-v3s-emac     !! 327               - allwinner,sun50i-a64-emac
613                 - allwinner,sun50i-a64-emac    !! 328               - ingenic,jz4775-mac
614                 - loongson,ls2k-dwmac          !! 329               - ingenic,x1000-mac
615                 - loongson,ls7a-dwmac          !! 330               - ingenic,x1600-mac
616                 - ingenic,jz4775-mac           !! 331               - ingenic,x1830-mac
617                 - ingenic,x1000-mac            !! 332               - ingenic,x2000-mac
618                 - ingenic,x1600-mac            !! 333               - snps,dwmac-3.50a
619                 - ingenic,x1830-mac            !! 334               - snps,dwmac-4.10a
620                 - ingenic,x2000-mac            !! 335               - snps,dwmac-4.20a
621                 - qcom,qcs404-ethqos           !! 336               - snps,dwxgmac
622                 - qcom,sa8775p-ethqos          !! 337               - snps,dwxgmac-2.10
623                 - qcom,sc8280xp-ethqos         !! 338               - st,spear600-gmac
624                 - qcom,sm8150-ethqos           << 
625                 - snps,dwmac-4.00              << 
626                 - snps,dwmac-4.10a             << 
627                 - snps,dwmac-4.20a             << 
628                 - snps,dwmac-5.10a             << 
629                 - snps,dwmac-5.20              << 
630                 - snps,dwxgmac                 << 
631                 - snps,dwxgmac-2.10            << 
632                 - st,spear600-gmac             << 
633                                                   339 
634     then:                                         340     then:
635       properties:                                 341       properties:
636         snps,tso: false                        !! 342         snps,pbl:
                                                   >> 343           description:
                                                   >> 344             Programmable Burst Length (tx and rx)
                                                   >> 345           $ref: /schemas/types.yaml#/definitions/uint32
                                                   >> 346           enum: [1, 2, 4, 8, 16, 32]
                                                   >> 347 
                                                   >> 348         snps,txpbl:
                                                   >> 349           description:
                                                   >> 350             Tx Programmable Burst Length. If set, DMA tx will use this
                                                   >> 351             value rather than snps,pbl.
                                                   >> 352           $ref: /schemas/types.yaml#/definitions/uint32
                                                   >> 353           enum: [1, 2, 4, 8, 16, 32]
                                                   >> 354 
                                                   >> 355         snps,rxpbl:
                                                   >> 356           description:
                                                   >> 357             Rx Programmable Burst Length. If set, DMA rx will use this
                                                   >> 358             value rather than snps,pbl.
                                                   >> 359           $ref: /schemas/types.yaml#/definitions/uint32
                                                   >> 360           enum: [1, 2, 4, 8, 16, 32]
                                                   >> 361 
                                                   >> 362         snps,no-pbl-x8:
                                                   >> 363           $ref: /schemas/types.yaml#/definitions/flag
                                                   >> 364           description:
                                                   >> 365             Don\'t multiply the pbl/txpbl/rxpbl values by 8. For core
                                                   >> 366             rev < 3.50, don\'t multiply the values by 4.
                                                   >> 367 
                                                   >> 368   - if:
                                                   >> 369       properties:
                                                   >> 370         compatible:
                                                   >> 371           contains:
                                                   >> 372             enum:
                                                   >> 373               - allwinner,sun7i-a20-gmac
                                                   >> 374               - allwinner,sun8i-a83t-emac
                                                   >> 375               - allwinner,sun8i-h3-emac
                                                   >> 376               - allwinner,sun8i-r40-gmac
                                                   >> 377               - allwinner,sun8i-v3s-emac
                                                   >> 378               - allwinner,sun50i-a64-emac
                                                   >> 379               - loongson,ls2k-dwmac
                                                   >> 380               - loongson,ls7a-dwmac
                                                   >> 381               - ingenic,jz4775-mac
                                                   >> 382               - ingenic,x1000-mac
                                                   >> 383               - ingenic,x1600-mac
                                                   >> 384               - ingenic,x1830-mac
                                                   >> 385               - ingenic,x2000-mac
                                                   >> 386               - snps,dwmac-4.00
                                                   >> 387               - snps,dwmac-4.10a
                                                   >> 388               - snps,dwmac-4.20a
                                                   >> 389               - snps,dwmac-5.10a
                                                   >> 390               - snps,dwxgmac
                                                   >> 391               - snps,dwxgmac-2.10
                                                   >> 392               - st,spear600-gmac
                                                   >> 393 
                                                   >> 394     then:
                                                   >> 395       properties:
                                                   >> 396         snps,tso:
                                                   >> 397           $ref: /schemas/types.yaml#/definitions/flag
                                                   >> 398           description:
                                                   >> 399             Enables the TSO feature otherwise it will be managed by
                                                   >> 400             MAC HW capability register.
637                                                   401 
638 additionalProperties: true                        402 additionalProperties: true
639                                                   403 
640 examples:                                         404 examples:
641   - |                                             405   - |
                                                   >> 406     stmmac_axi_setup: stmmac-axi-config {
                                                   >> 407         snps,wr_osr_lmt = <0xf>;
                                                   >> 408         snps,rd_osr_lmt = <0xf>;
                                                   >> 409         snps,blen = <256 128 64 32 0 0 0>;
                                                   >> 410     };
                                                   >> 411 
                                                   >> 412     mtl_rx_setup: rx-queues-config {
                                                   >> 413         snps,rx-queues-to-use = <1>;
                                                   >> 414         snps,rx-sched-sp;
                                                   >> 415         queue0 {
                                                   >> 416             snps,dcb-algorithm;
                                                   >> 417             snps,map-to-dma-channel = <0x0>;
                                                   >> 418             snps,priority = <0x0>;
                                                   >> 419         };
                                                   >> 420     };
                                                   >> 421 
                                                   >> 422     mtl_tx_setup: tx-queues-config {
                                                   >> 423         snps,tx-queues-to-use = <2>;
                                                   >> 424         snps,tx-sched-wrr;
                                                   >> 425         queue0 {
                                                   >> 426             snps,weight = <0x10>;
                                                   >> 427             snps,dcb-algorithm;
                                                   >> 428             snps,priority = <0x0>;
                                                   >> 429         };
                                                   >> 430 
                                                   >> 431         queue1 {
                                                   >> 432             snps,avb-algorithm;
                                                   >> 433             snps,send_slope = <0x1000>;
                                                   >> 434             snps,idle_slope = <0x1000>;
                                                   >> 435             snps,high_credit = <0x3E800>;
                                                   >> 436             snps,low_credit = <0xFFC18000>;
                                                   >> 437             snps,priority = <0x1>;
                                                   >> 438         };
                                                   >> 439     };
                                                   >> 440 
642     gmac0: ethernet@e0800000 {                    441     gmac0: ethernet@e0800000 {
643         compatible = "snps,dwxgmac-2.10", "snp    442         compatible = "snps,dwxgmac-2.10", "snps,dwxgmac";
644         reg = <0xe0800000 0x8000>;                443         reg = <0xe0800000 0x8000>;
645         interrupt-parent = <&vic1>;               444         interrupt-parent = <&vic1>;
646         interrupts = <24 23 22>;                  445         interrupts = <24 23 22>;
647         interrupt-names = "macirq", "eth_wake_    446         interrupt-names = "macirq", "eth_wake_irq", "eth_lpi";
648         mac-address = [000000000000]; /* Fille    447         mac-address = [000000000000]; /* Filled in by U-Boot */
649         max-frame-size = <3800>;                  448         max-frame-size = <3800>;
650         phy-mode = "gmii";                        449         phy-mode = "gmii";
651         snps,multicast-filter-bins = <256>;       450         snps,multicast-filter-bins = <256>;
652         snps,perfect-filter-entries = <128>;      451         snps,perfect-filter-entries = <128>;
653         rx-fifo-depth = <16384>;                  452         rx-fifo-depth = <16384>;
654         tx-fifo-depth = <16384>;                  453         tx-fifo-depth = <16384>;
655         clocks = <&clock>;                        454         clocks = <&clock>;
656         clock-names = "stmmaceth";                455         clock-names = "stmmaceth";
657         snps,axi-config = <&stmmac_axi_setup>;    456         snps,axi-config = <&stmmac_axi_setup>;
658         snps,mtl-rx-config = <&mtl_rx_setup>;     457         snps,mtl-rx-config = <&mtl_rx_setup>;
659         snps,mtl-tx-config = <&mtl_tx_setup>;     458         snps,mtl-tx-config = <&mtl_tx_setup>;
660                                                << 
661         stmmac_axi_setup: stmmac-axi-config {  << 
662             snps,wr_osr_lmt = <0xf>;           << 
663             snps,rd_osr_lmt = <0xf>;           << 
664             snps,blen = <256 128 64 32 0 0 0>; << 
665         };                                     << 
666                                                << 
667         mtl_rx_setup: rx-queues-config {       << 
668             snps,rx-queues-to-use = <1>;       << 
669             snps,rx-sched-sp;                  << 
670             queue0 {                           << 
671                 snps,dcb-algorithm;            << 
672                 snps,map-to-dma-channel = <0x0 << 
673                 snps,priority = <0x0>;         << 
674             };                                 << 
675         };                                     << 
676                                                << 
677         mtl_tx_setup: tx-queues-config {       << 
678             snps,tx-queues-to-use = <2>;       << 
679             snps,tx-sched-wrr;                 << 
680             queue0 {                           << 
681                 snps,weight = <0x10>;          << 
682                 snps,dcb-algorithm;            << 
683                 snps,priority = <0x0>;         << 
684             };                                 << 
685                                                << 
686             queue1 {                           << 
687                 snps,avb-algorithm;            << 
688                 snps,send_slope = <0x1000>;    << 
689                 snps,idle_slope = <0x1000>;    << 
690                 snps,high_credit = <0x3E800>;  << 
691                 snps,low_credit = <0xFFC18000> << 
692                 snps,priority = <0x1>;         << 
693             };                                 << 
694         };                                     << 
695                                                << 
696         mdio0 {                                   459         mdio0 {
697             #address-cells = <1>;                 460             #address-cells = <1>;
698             #size-cells = <0>;                    461             #size-cells = <0>;
699             compatible = "snps,dwmac-mdio";       462             compatible = "snps,dwmac-mdio";
700             phy1: ethernet-phy@0 {                463             phy1: ethernet-phy@0 {
701                 reg = <0>;                        464                 reg = <0>;
702             };                                    465             };
703         };                                        466         };
704     };                                            467     };
705                                                   468 
706 # FIXME: We should set it, but it would report    469 # FIXME: We should set it, but it would report all the generic
707 # properties as additional properties.            470 # properties as additional properties.
708 # additionalProperties: false                     471 # additionalProperties: false
709                                                   472 
710 ...                                               473 ...
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php