17db3545aSMaxime Ripard# SPDX-License-Identifier: GPL-2.0 27db3545aSMaxime Ripard%YAML 1.2 37db3545aSMaxime Ripard--- 47db3545aSMaxime Ripard$id: http://devicetree.org/schemas/net/snps,dwmac.yaml# 57db3545aSMaxime Ripard$schema: http://devicetree.org/meta-schemas/core.yaml# 67db3545aSMaxime Ripard 7dd3cb467SAndrew Lunntitle: Synopsys DesignWare MAC 87db3545aSMaxime Ripard 97db3545aSMaxime Ripardmaintainers: 10f4eedebdSPatrice Chotard - Alexandre Torgue <alexandre.torgue@foss.st.com> 117db3545aSMaxime Ripard - Giuseppe Cavallaro <peppe.cavallaro@st.com> 127db3545aSMaxime Ripard - Jose Abreu <joabreu@synopsys.com> 137db3545aSMaxime Ripard 147db3545aSMaxime Ripard# Select every compatible, including the deprecated ones. This way, we 157db3545aSMaxime Ripard# will be able to report a warning when we have that compatible, since 167db3545aSMaxime Ripard# we will validate the node thanks to the select, but won't report it 177db3545aSMaxime Ripard# as a valid value in the compatible property description 187db3545aSMaxime Ripardselect: 197db3545aSMaxime Ripard properties: 207db3545aSMaxime Ripard compatible: 217db3545aSMaxime Ripard contains: 227db3545aSMaxime Ripard enum: 237db3545aSMaxime Ripard - snps,dwmac 243781b6adSHerve Codina - snps,dwmac-3.40a 257db3545aSMaxime Ripard - snps,dwmac-3.50a 267db3545aSMaxime Ripard - snps,dwmac-3.610 277db3545aSMaxime Ripard - snps,dwmac-3.70a 287db3545aSMaxime Ripard - snps,dwmac-3.710 297db3545aSMaxime Ripard - snps,dwmac-4.00 307db3545aSMaxime Ripard - snps,dwmac-4.10a 31f2253143SChristophe Roullier - snps,dwmac-4.20a 32bdad810eSJoakim Zhang - snps,dwmac-5.10a 3313f93511SEmil Renner Berthing - snps,dwmac-5.20 347db3545aSMaxime Ripard - snps,dwxgmac 357db3545aSMaxime Ripard - snps,dwxgmac-2.10 367db3545aSMaxime Ripard 377db3545aSMaxime Ripard # Deprecated 387db3545aSMaxime Ripard - st,spear600-gmac 397db3545aSMaxime Ripard 407db3545aSMaxime Ripard required: 417db3545aSMaxime Ripard - compatible 427db3545aSMaxime Ripard 437db3545aSMaxime Ripardproperties: 447db3545aSMaxime Ripard 457db3545aSMaxime Ripard # We need to include all the compatibles from schemas that will 467db3545aSMaxime Ripard # include that schemas, otherwise compatible won't validate for 477db3545aSMaxime Ripard # those. 487db3545aSMaxime Ripard compatible: 497db3545aSMaxime Ripard contains: 507db3545aSMaxime Ripard enum: 514b859450SMaxime Ripard - allwinner,sun7i-a20-gmac 520569929dSMaxime Ripard - allwinner,sun8i-a83t-emac 530569929dSMaxime Ripard - allwinner,sun8i-h3-emac 54b33be51cSMaxime Ripard - allwinner,sun8i-r40-gmac 550569929dSMaxime Ripard - allwinner,sun8i-v3s-emac 560569929dSMaxime Ripard - allwinner,sun50i-a64-emac 57d5a57e4eSNeil Armstrong - amlogic,meson6-dwmac 58d5a57e4eSNeil Armstrong - amlogic,meson8b-dwmac 59d5a57e4eSNeil Armstrong - amlogic,meson8m2-dwmac 60d5a57e4eSNeil Armstrong - amlogic,meson-gxbb-dwmac 61d5a57e4eSNeil Armstrong - amlogic,meson-axg-dwmac 623b840106S周琰杰 (Zhou Yanjie) - ingenic,jz4775-mac 633b840106S周琰杰 (Zhou Yanjie) - ingenic,x1000-mac 643b840106S周琰杰 (Zhou Yanjie) - ingenic,x1600-mac 653b840106S周琰杰 (Zhou Yanjie) - ingenic,x1830-mac 663b840106S周琰杰 (Zhou Yanjie) - ingenic,x2000-mac 67ce8b3ad1SDongjin Yang - loongson,ls2k-dwmac 68ce8b3ad1SDongjin Yang - loongson,ls7a-dwmac 69d70c215bSBhupesh Sharma - qcom,qcs404-ethqos 70d0e3d29fSBartosz Golaszewski - qcom,sa8775p-ethqos 7125926a70SAndrew Halaney - qcom,sc8280xp-ethqos 72d70c215bSBhupesh Sharma - qcom,sm8150-ethqos 73d7cc14bcSClément Léger - renesas,r9a06g032-gmac 74d7cc14bcSClément Léger - renesas,rzn1-gmac 75517a882aSEzequiel Garcia - rockchip,px30-gmac 76517a882aSEzequiel Garcia - rockchip,rk3128-gmac 77517a882aSEzequiel Garcia - rockchip,rk3228-gmac 78517a882aSEzequiel Garcia - rockchip,rk3288-gmac 79517a882aSEzequiel Garcia - rockchip,rk3328-gmac 80517a882aSEzequiel Garcia - rockchip,rk3366-gmac 81517a882aSEzequiel Garcia - rockchip,rk3368-gmac 82a2b77831SSebastian Reichel - rockchip,rk3588-gmac 83517a882aSEzequiel Garcia - rockchip,rk3399-gmac 84517a882aSEzequiel Garcia - rockchip,rv1108-gmac 857db3545aSMaxime Ripard - snps,dwmac 863781b6adSHerve Codina - snps,dwmac-3.40a 877db3545aSMaxime Ripard - snps,dwmac-3.50a 887db3545aSMaxime Ripard - snps,dwmac-3.610 897db3545aSMaxime Ripard - snps,dwmac-3.70a 907db3545aSMaxime Ripard - snps,dwmac-3.710 917db3545aSMaxime Ripard - snps,dwmac-4.00 927db3545aSMaxime Ripard - snps,dwmac-4.10a 93f2253143SChristophe Roullier - snps,dwmac-4.20a 94bdad810eSJoakim Zhang - snps,dwmac-5.10a 9513f93511SEmil Renner Berthing - snps,dwmac-5.20 967db3545aSMaxime Ripard - snps,dwxgmac 977db3545aSMaxime Ripard - snps,dwxgmac-2.10 9853e41b76SCristian Ciocaltea - starfive,jh7100-dwmac 99b76eaf7dSYanhong Wang - starfive,jh7110-dwmac 1007db3545aSMaxime Ripard 1017db3545aSMaxime Ripard reg: 10257b77df7SNeil Armstrong minItems: 1 10357b77df7SNeil Armstrong maxItems: 2 1047db3545aSMaxime Ripard 1057db3545aSMaxime Ripard interrupts: 1067db3545aSMaxime Ripard minItems: 1 1077db3545aSMaxime Ripard items: 1087db3545aSMaxime Ripard - description: Combined signal for various interrupt events 1097db3545aSMaxime Ripard - description: The interrupt to manage the remote wake-up packet detection 1107db3545aSMaxime Ripard - description: The interrupt that occurs when Rx exits the LPI state 111*1963e65bSSuraj Jaiswal - description: The interrupt that occurs when HW safety error triggered 1127db3545aSMaxime Ripard 1137db3545aSMaxime Ripard interrupt-names: 1147db3545aSMaxime Ripard minItems: 1 1157db3545aSMaxime Ripard items: 1167db3545aSMaxime Ripard - const: macirq 117*1963e65bSSuraj Jaiswal - enum: [eth_wake_irq, eth_lpi, sfty] 118*1963e65bSSuraj Jaiswal - enum: [eth_wake_irq, eth_lpi, sfty] 119*1963e65bSSuraj Jaiswal - enum: [eth_wake_irq, eth_lpi, sfty] 1207db3545aSMaxime Ripard 1217db3545aSMaxime Ripard clocks: 1227db3545aSMaxime Ripard minItems: 1 123517a882aSEzequiel Garcia maxItems: 8 124f2253143SChristophe Roullier additionalItems: true 1257db3545aSMaxime Ripard items: 1267db3545aSMaxime Ripard - description: GMAC main clock 1277db3545aSMaxime Ripard - description: Peripheral registers interface clock 1287db3545aSMaxime Ripard - description: 1297db3545aSMaxime Ripard PTP reference clock. This clock is used for programming the 1307db3545aSMaxime Ripard Timestamp Addend Register. If not passed then the system 1317db3545aSMaxime Ripard clock will be used and this is fine on some platforms. 1327db3545aSMaxime Ripard 1337db3545aSMaxime Ripard clock-names: 134f2253143SChristophe Roullier minItems: 1 135517a882aSEzequiel Garcia maxItems: 8 1367db3545aSMaxime Ripard additionalItems: true 1377db3545aSMaxime Ripard contains: 1387db3545aSMaxime Ripard enum: 1397db3545aSMaxime Ripard - stmmaceth 1407db3545aSMaxime Ripard - pclk 1417db3545aSMaxime Ripard - ptp_ref 1427db3545aSMaxime Ripard 1437db3545aSMaxime Ripard resets: 144843f6037SSamin Guo minItems: 1 145843f6037SSamin Guo items: 146843f6037SSamin Guo - description: GMAC stmmaceth reset 147843f6037SSamin Guo - description: AHB reset 1487db3545aSMaxime Ripard 1497db3545aSMaxime Ripard reset-names: 15053e41b76SCristian Ciocaltea oneOf: 15153e41b76SCristian Ciocaltea - items: 15253e41b76SCristian Ciocaltea - enum: [stmmaceth, ahb] 15353e41b76SCristian Ciocaltea - items: 154843f6037SSamin Guo - const: stmmaceth 155843f6037SSamin Guo - const: ahb 1567db3545aSMaxime Ripard 157955fe312SClément Léger power-domains: 158955fe312SClément Léger maxItems: 1 159955fe312SClément Léger 1609c15d359SAlexandru Ardelean mac-mode: 1619e5c8d39SAlexandru Ardelean $ref: ethernet-controller.yaml#/properties/phy-connection-type 1629c15d359SAlexandru Ardelean description: 1639c15d359SAlexandru Ardelean The property is identical to 'phy-mode', and assumes that there is mode 1649c15d359SAlexandru Ardelean converter in-between the MAC & PHY (e.g. GMII-to-RGMII). This converter 1659c15d359SAlexandru Ardelean can be passive (no SW requirement), and requires that the MAC operate 1669c15d359SAlexandru Ardelean in a different mode than the PHY in order to function. 1679c15d359SAlexandru Ardelean 1687db3545aSMaxime Ripard snps,axi-config: 169d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/phandle 1707db3545aSMaxime Ripard description: 1717db3545aSMaxime Ripard AXI BUS Mode parameters. Phandle to a node that can contain the 1727db3545aSMaxime Ripard following properties 1737db3545aSMaxime Ripard * snps,lpi_en, enable Low Power Interface 1747db3545aSMaxime Ripard * snps,xit_frm, unlock on WoL 1757db3545aSMaxime Ripard * snps,wr_osr_lmt, max write outstanding req. limit 1767db3545aSMaxime Ripard * snps,rd_osr_lmt, max read outstanding req. limit 1777db3545aSMaxime Ripard * snps,kbbe, do not cross 1KiB boundary. 1787db3545aSMaxime Ripard * snps,blen, this is a vector of supported burst length. 1797db3545aSMaxime Ripard * snps,fb, fixed-burst 1807db3545aSMaxime Ripard * snps,mb, mixed-burst 1817db3545aSMaxime Ripard * snps,rb, rebuild INCRx Burst 1827db3545aSMaxime Ripard 1837db3545aSMaxime Ripard snps,mtl-rx-config: 184d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/phandle 1857db3545aSMaxime Ripard description: 1868fc4deaaSSebastian Reichel Multiple RX Queues parameters. Phandle to a node that 1878fc4deaaSSebastian Reichel implements the 'rx-queues-config' object described in 1888fc4deaaSSebastian Reichel this binding. 1898fc4deaaSSebastian Reichel 1908fc4deaaSSebastian Reichel rx-queues-config: 1918fc4deaaSSebastian Reichel type: object 1928fc4deaaSSebastian Reichel properties: 1938fc4deaaSSebastian Reichel snps,rx-queues-to-use: 1948fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 1958fc4deaaSSebastian Reichel description: number of RX queues to be used in the driver 1968fc4deaaSSebastian Reichel snps,rx-sched-sp: 1978fc4deaaSSebastian Reichel type: boolean 1988fc4deaaSSebastian Reichel description: Strict priority 1998fc4deaaSSebastian Reichel snps,rx-sched-wsp: 2008fc4deaaSSebastian Reichel type: boolean 2018fc4deaaSSebastian Reichel description: Weighted Strict priority 2028fc4deaaSSebastian Reichel allOf: 2038fc4deaaSSebastian Reichel - if: 2048fc4deaaSSebastian Reichel required: 2058fc4deaaSSebastian Reichel - snps,rx-sched-sp 2068fc4deaaSSebastian Reichel then: 2078fc4deaaSSebastian Reichel properties: 2088fc4deaaSSebastian Reichel snps,rx-sched-wsp: false 2098fc4deaaSSebastian Reichel - if: 2108fc4deaaSSebastian Reichel required: 2118fc4deaaSSebastian Reichel - snps,rx-sched-wsp 2128fc4deaaSSebastian Reichel then: 2138fc4deaaSSebastian Reichel properties: 2148fc4deaaSSebastian Reichel snps,rx-sched-sp: false 2158fc4deaaSSebastian Reichel patternProperties: 2168fc4deaaSSebastian Reichel "^queue[0-9]$": 2178fc4deaaSSebastian Reichel description: Each subnode represents a queue. 2188fc4deaaSSebastian Reichel type: object 2198fc4deaaSSebastian Reichel properties: 2208fc4deaaSSebastian Reichel snps,dcb-algorithm: 2218fc4deaaSSebastian Reichel type: boolean 2228fc4deaaSSebastian Reichel description: Queue to be enabled as DCB 2238fc4deaaSSebastian Reichel snps,avb-algorithm: 2248fc4deaaSSebastian Reichel type: boolean 2258fc4deaaSSebastian Reichel description: Queue to be enabled as AVB 2268fc4deaaSSebastian Reichel snps,map-to-dma-channel: 2278fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 2288fc4deaaSSebastian Reichel description: DMA channel id to map 2298fc4deaaSSebastian Reichel snps,route-avcp: 2308fc4deaaSSebastian Reichel type: boolean 2318fc4deaaSSebastian Reichel description: AV Untagged Control packets 2328fc4deaaSSebastian Reichel snps,route-ptp: 2338fc4deaaSSebastian Reichel type: boolean 2348fc4deaaSSebastian Reichel description: PTP Packets 2358fc4deaaSSebastian Reichel snps,route-dcbcp: 2368fc4deaaSSebastian Reichel type: boolean 2378fc4deaaSSebastian Reichel description: DCB Control Packets 2388fc4deaaSSebastian Reichel snps,route-up: 2398fc4deaaSSebastian Reichel type: boolean 2408fc4deaaSSebastian Reichel description: Untagged Packets 2418fc4deaaSSebastian Reichel snps,route-multi-broad: 2428fc4deaaSSebastian Reichel type: boolean 2438fc4deaaSSebastian Reichel description: Multicast & Broadcast Packets 2448fc4deaaSSebastian Reichel snps,priority: 2458fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 2468fc4deaaSSebastian Reichel description: Bitmask of the tagged frames priorities assigned to the queue 2478fc4deaaSSebastian Reichel allOf: 2488fc4deaaSSebastian Reichel - if: 2498fc4deaaSSebastian Reichel required: 2508fc4deaaSSebastian Reichel - snps,dcb-algorithm 2518fc4deaaSSebastian Reichel then: 2528fc4deaaSSebastian Reichel properties: 2538fc4deaaSSebastian Reichel snps,avb-algorithm: false 2548fc4deaaSSebastian Reichel - if: 2558fc4deaaSSebastian Reichel required: 2568fc4deaaSSebastian Reichel - snps,avb-algorithm 2578fc4deaaSSebastian Reichel then: 2588fc4deaaSSebastian Reichel properties: 2598fc4deaaSSebastian Reichel snps,dcb-algorithm: false 2608fc4deaaSSebastian Reichel - if: 2618fc4deaaSSebastian Reichel required: 2628fc4deaaSSebastian Reichel - snps,route-avcp 2638fc4deaaSSebastian Reichel then: 2648fc4deaaSSebastian Reichel properties: 2658fc4deaaSSebastian Reichel snps,route-ptp: false 2668fc4deaaSSebastian Reichel snps,route-dcbcp: false 2678fc4deaaSSebastian Reichel snps,route-up: false 2688fc4deaaSSebastian Reichel snps,route-multi-broad: false 2698fc4deaaSSebastian Reichel - if: 2708fc4deaaSSebastian Reichel required: 2718fc4deaaSSebastian Reichel - snps,route-ptp 2728fc4deaaSSebastian Reichel then: 2738fc4deaaSSebastian Reichel properties: 2748fc4deaaSSebastian Reichel snps,route-avcp: false 2758fc4deaaSSebastian Reichel snps,route-dcbcp: false 2768fc4deaaSSebastian Reichel snps,route-up: false 2778fc4deaaSSebastian Reichel snps,route-multi-broad: false 2788fc4deaaSSebastian Reichel - if: 2798fc4deaaSSebastian Reichel required: 2808fc4deaaSSebastian Reichel - snps,route-dcbcp 2818fc4deaaSSebastian Reichel then: 2828fc4deaaSSebastian Reichel properties: 2838fc4deaaSSebastian Reichel snps,route-avcp: false 2848fc4deaaSSebastian Reichel snps,route-ptp: false 2858fc4deaaSSebastian Reichel snps,route-up: false 2868fc4deaaSSebastian Reichel snps,route-multi-broad: false 2878fc4deaaSSebastian Reichel - if: 2888fc4deaaSSebastian Reichel required: 2898fc4deaaSSebastian Reichel - snps,route-up 2908fc4deaaSSebastian Reichel then: 2918fc4deaaSSebastian Reichel properties: 2928fc4deaaSSebastian Reichel snps,route-avcp: false 2938fc4deaaSSebastian Reichel snps,route-ptp: false 2948fc4deaaSSebastian Reichel snps,route-dcbcp: false 2958fc4deaaSSebastian Reichel snps,route-multi-broad: false 2968fc4deaaSSebastian Reichel - if: 2978fc4deaaSSebastian Reichel required: 2988fc4deaaSSebastian Reichel - snps,route-multi-broad 2998fc4deaaSSebastian Reichel then: 3008fc4deaaSSebastian Reichel properties: 3018fc4deaaSSebastian Reichel snps,route-avcp: false 3028fc4deaaSSebastian Reichel snps,route-ptp: false 3038fc4deaaSSebastian Reichel snps,route-dcbcp: false 3048fc4deaaSSebastian Reichel snps,route-up: false 3058fc4deaaSSebastian Reichel additionalProperties: false 3068fc4deaaSSebastian Reichel additionalProperties: false 3077db3545aSMaxime Ripard 3087db3545aSMaxime Ripard snps,mtl-tx-config: 309d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/phandle 3107db3545aSMaxime Ripard description: 3118fc4deaaSSebastian Reichel Multiple TX Queues parameters. Phandle to a node that 3128fc4deaaSSebastian Reichel implements the 'tx-queues-config' object described in 3138fc4deaaSSebastian Reichel this binding. 3148fc4deaaSSebastian Reichel 3158fc4deaaSSebastian Reichel tx-queues-config: 3168fc4deaaSSebastian Reichel type: object 3178fc4deaaSSebastian Reichel properties: 3188fc4deaaSSebastian Reichel snps,tx-queues-to-use: 3198fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3208fc4deaaSSebastian Reichel description: number of TX queues to be used in the driver 3218fc4deaaSSebastian Reichel snps,tx-sched-wrr: 3228fc4deaaSSebastian Reichel type: boolean 3238fc4deaaSSebastian Reichel description: Weighted Round Robin 3248fc4deaaSSebastian Reichel snps,tx-sched-wfq: 3258fc4deaaSSebastian Reichel type: boolean 3268fc4deaaSSebastian Reichel description: Weighted Fair Queuing 3278fc4deaaSSebastian Reichel snps,tx-sched-dwrr: 3288fc4deaaSSebastian Reichel type: boolean 3298fc4deaaSSebastian Reichel description: Deficit Weighted Round Robin 3308fc4deaaSSebastian Reichel snps,tx-sched-sp: 3318fc4deaaSSebastian Reichel type: boolean 3328fc4deaaSSebastian Reichel description: Strict priority 3338fc4deaaSSebastian Reichel allOf: 3348fc4deaaSSebastian Reichel - if: 3358fc4deaaSSebastian Reichel required: 3368fc4deaaSSebastian Reichel - snps,tx-sched-wrr 3378fc4deaaSSebastian Reichel then: 3388fc4deaaSSebastian Reichel properties: 3398fc4deaaSSebastian Reichel snps,tx-sched-wfq: false 3408fc4deaaSSebastian Reichel snps,tx-sched-dwrr: false 3418fc4deaaSSebastian Reichel snps,tx-sched-sp: false 3428fc4deaaSSebastian Reichel - if: 3438fc4deaaSSebastian Reichel required: 3448fc4deaaSSebastian Reichel - snps,tx-sched-wfq 3458fc4deaaSSebastian Reichel then: 3468fc4deaaSSebastian Reichel properties: 3478fc4deaaSSebastian Reichel snps,tx-sched-wrr: false 3488fc4deaaSSebastian Reichel snps,tx-sched-dwrr: false 3498fc4deaaSSebastian Reichel snps,tx-sched-sp: false 3508fc4deaaSSebastian Reichel - if: 3518fc4deaaSSebastian Reichel required: 3528fc4deaaSSebastian Reichel - snps,tx-sched-dwrr 3538fc4deaaSSebastian Reichel then: 3548fc4deaaSSebastian Reichel properties: 3558fc4deaaSSebastian Reichel snps,tx-sched-wrr: false 3568fc4deaaSSebastian Reichel snps,tx-sched-wfq: false 3578fc4deaaSSebastian Reichel snps,tx-sched-sp: false 3588fc4deaaSSebastian Reichel - if: 3598fc4deaaSSebastian Reichel required: 3608fc4deaaSSebastian Reichel - snps,tx-sched-sp 3618fc4deaaSSebastian Reichel then: 3628fc4deaaSSebastian Reichel properties: 3638fc4deaaSSebastian Reichel snps,tx-sched-wrr: false 3648fc4deaaSSebastian Reichel snps,tx-sched-wfq: false 3658fc4deaaSSebastian Reichel snps,tx-sched-dwrr: false 3668fc4deaaSSebastian Reichel patternProperties: 3678fc4deaaSSebastian Reichel "^queue[0-9]$": 3688fc4deaaSSebastian Reichel description: Each subnode represents a queue. 3698fc4deaaSSebastian Reichel type: object 3708fc4deaaSSebastian Reichel properties: 3718fc4deaaSSebastian Reichel snps,weight: 3728fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3738fc4deaaSSebastian Reichel description: TX queue weight (if using a DCB weight algorithm) 3748fc4deaaSSebastian Reichel snps,dcb-algorithm: 3758fc4deaaSSebastian Reichel type: boolean 3768fc4deaaSSebastian Reichel description: TX queue will be working in DCB 3778fc4deaaSSebastian Reichel snps,avb-algorithm: 3788fc4deaaSSebastian Reichel type: boolean 3798fc4deaaSSebastian Reichel description: 3808fc4deaaSSebastian Reichel TX queue will be working in AVB. 3818fc4deaaSSebastian Reichel Queue 0 is reserved for legacy traffic and so no AVB is 3828fc4deaaSSebastian Reichel available in this queue. 3838fc4deaaSSebastian Reichel snps,send_slope: 3848fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3858fc4deaaSSebastian Reichel description: enable Low Power Interface 3868fc4deaaSSebastian Reichel snps,idle_slope: 3878fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3888fc4deaaSSebastian Reichel description: unlock on WoL 3898fc4deaaSSebastian Reichel snps,high_credit: 3908fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3918fc4deaaSSebastian Reichel description: max write outstanding req. limit 3928fc4deaaSSebastian Reichel snps,low_credit: 3938fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3948fc4deaaSSebastian Reichel description: max read outstanding req. limit 3958fc4deaaSSebastian Reichel snps,priority: 3968fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3978fc4deaaSSebastian Reichel description: 3988fc4deaaSSebastian Reichel Bitmask of the tagged frames priorities assigned to the queue. 39993828834SSeb Laveze When a PFC frame is received with priorities matching the bitmask, 40093828834SSeb Laveze the queue is blocked from transmitting for the pause time specified 40193828834SSeb Laveze in the PFC frame. 4026fb8c20aSRohan G Thomas 4036fb8c20aSRohan G Thomas snps,coe-unsupported: 4046fb8c20aSRohan G Thomas type: boolean 4056fb8c20aSRohan G Thomas description: TX checksum offload is unsupported by the TX queue. 4066fb8c20aSRohan G Thomas 4078fc4deaaSSebastian Reichel allOf: 4088fc4deaaSSebastian Reichel - if: 4098fc4deaaSSebastian Reichel required: 4108fc4deaaSSebastian Reichel - snps,dcb-algorithm 4118fc4deaaSSebastian Reichel then: 4128fc4deaaSSebastian Reichel properties: 4138fc4deaaSSebastian Reichel snps,avb-algorithm: false 4148fc4deaaSSebastian Reichel - if: 4158fc4deaaSSebastian Reichel required: 4168fc4deaaSSebastian Reichel - snps,avb-algorithm 4178fc4deaaSSebastian Reichel then: 4188fc4deaaSSebastian Reichel properties: 4198fc4deaaSSebastian Reichel snps,dcb-algorithm: false 4208fc4deaaSSebastian Reichel snps,weight: false 4218fc4deaaSSebastian Reichel additionalProperties: false 4228fc4deaaSSebastian Reichel additionalProperties: false 4237db3545aSMaxime Ripard 4247db3545aSMaxime Ripard snps,reset-gpio: 425f80b1dfcSMaxime Ripard deprecated: true 4267db3545aSMaxime Ripard maxItems: 1 4277db3545aSMaxime Ripard description: 4287db3545aSMaxime Ripard PHY Reset GPIO 4297db3545aSMaxime Ripard 4307db3545aSMaxime Ripard snps,reset-active-low: 431f80b1dfcSMaxime Ripard deprecated: true 432d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4337db3545aSMaxime Ripard description: 4347db3545aSMaxime Ripard Indicates that the PHY Reset is active low 4357db3545aSMaxime Ripard 4367db3545aSMaxime Ripard snps,reset-delays-us: 437f80b1dfcSMaxime Ripard deprecated: true 4387db3545aSMaxime Ripard description: 4397db3545aSMaxime Ripard Triplet of delays. The 1st cell is reset pre-delay in micro 4407db3545aSMaxime Ripard seconds. The 2nd cell is reset pulse in micro seconds. The 3rd 4417db3545aSMaxime Ripard cell is reset post-delay in micro seconds. 4423d21a460SRob Herring minItems: 3 4433d21a460SRob Herring maxItems: 3 4447db3545aSMaxime Ripard 4457db3545aSMaxime Ripard snps,aal: 446d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4477db3545aSMaxime Ripard description: 4487db3545aSMaxime Ripard Use Address-Aligned Beats 4497db3545aSMaxime Ripard 4507db3545aSMaxime Ripard snps,fixed-burst: 451d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4527db3545aSMaxime Ripard description: 4537db3545aSMaxime Ripard Program the DMA to use the fixed burst mode 4547db3545aSMaxime Ripard 4557db3545aSMaxime Ripard snps,mixed-burst: 456d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4577db3545aSMaxime Ripard description: 4587db3545aSMaxime Ripard Program the DMA to use the mixed burst mode 4597db3545aSMaxime Ripard 4607db3545aSMaxime Ripard snps,force_thresh_dma_mode: 461d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4627db3545aSMaxime Ripard description: 4637db3545aSMaxime Ripard Force DMA to use the threshold mode for both tx and rx 4647db3545aSMaxime Ripard 4657db3545aSMaxime Ripard snps,force_sf_dma_mode: 466d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4677db3545aSMaxime Ripard description: 4687db3545aSMaxime Ripard Force DMA to use the Store and Forward mode for both tx and 4697db3545aSMaxime Ripard rx. This flag is ignored if force_thresh_dma_mode is set. 4707db3545aSMaxime Ripard 4717db3545aSMaxime Ripard snps,en-tx-lpi-clockgating: 472d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4737db3545aSMaxime Ripard description: 4747db3545aSMaxime Ripard Enable gating of the MAC TX clock during TX low-power mode 4757db3545aSMaxime Ripard 4767db3545aSMaxime Ripard snps,multicast-filter-bins: 477d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/uint32 4787db3545aSMaxime Ripard description: 4797db3545aSMaxime Ripard Number of multicast filter hash bins supported by this device 4807db3545aSMaxime Ripard instance 4817db3545aSMaxime Ripard 4827db3545aSMaxime Ripard snps,perfect-filter-entries: 483d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/uint32 4847db3545aSMaxime Ripard description: 4857db3545aSMaxime Ripard Number of perfect filter entries supported by this device 4867db3545aSMaxime Ripard instance 4877db3545aSMaxime Ripard 4887db3545aSMaxime Ripard snps,ps-speed: 489d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/uint32 4907db3545aSMaxime Ripard description: 4917db3545aSMaxime Ripard Port selection speed that can be passed to the core when PCS 4927db3545aSMaxime Ripard is supported. For example, this is used in case of SGMII and 4937db3545aSMaxime Ripard MAC2MAC connection. 4947db3545aSMaxime Ripard 49522ba1afdSJianguo Zhang snps,clk-csr: 49622ba1afdSJianguo Zhang $ref: /schemas/types.yaml#/definitions/uint32 49722ba1afdSJianguo Zhang description: 49822ba1afdSJianguo Zhang Frequency division factor for MDC clock. 49922ba1afdSJianguo Zhang 5007db3545aSMaxime Ripard mdio: 501b2d28642SRob Herring $ref: mdio.yaml# 502b2d28642SRob Herring unevaluatedProperties: false 5037db3545aSMaxime Ripard description: 5047db3545aSMaxime Ripard Creates and registers an MDIO bus. 5057db3545aSMaxime Ripard 5067db3545aSMaxime Ripard properties: 5077db3545aSMaxime Ripard compatible: 5087db3545aSMaxime Ripard const: snps,dwmac-mdio 5097db3545aSMaxime Ripard 5107db3545aSMaxime Ripard required: 5117db3545aSMaxime Ripard - compatible 5127db3545aSMaxime Ripard 5135361660aSMarek Vasut stmmac-axi-config: 5145361660aSMarek Vasut type: object 5155361660aSMarek Vasut unevaluatedProperties: false 5165361660aSMarek Vasut description: 5175361660aSMarek Vasut AXI BUS Mode parameters. 5185361660aSMarek Vasut 5195361660aSMarek Vasut properties: 5205361660aSMarek Vasut snps,lpi_en: 5215361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/flag 5225361660aSMarek Vasut description: 5235361660aSMarek Vasut enable Low Power Interface 5245361660aSMarek Vasut 5255361660aSMarek Vasut snps,xit_frm: 5265361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/flag 5275361660aSMarek Vasut description: 5285361660aSMarek Vasut unlock on WoL 5295361660aSMarek Vasut 5305361660aSMarek Vasut snps,wr_osr_lmt: 5315361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/uint32 5325361660aSMarek Vasut description: 5335361660aSMarek Vasut max write outstanding req. limit 5345361660aSMarek Vasut 5355361660aSMarek Vasut snps,rd_osr_lmt: 5365361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/uint32 5375361660aSMarek Vasut description: 5385361660aSMarek Vasut max read outstanding req. limit 5395361660aSMarek Vasut 5405361660aSMarek Vasut snps,kbbe: 5415361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/uint32 5425361660aSMarek Vasut description: 5435361660aSMarek Vasut do not cross 1KiB boundary. 5445361660aSMarek Vasut 5455361660aSMarek Vasut snps,blen: 5465361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/uint32-array 5475361660aSMarek Vasut description: 5485361660aSMarek Vasut this is a vector of supported burst length. 5495361660aSMarek Vasut minItems: 7 5505361660aSMarek Vasut maxItems: 7 5515361660aSMarek Vasut 5525361660aSMarek Vasut snps,fb: 5535361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/flag 5545361660aSMarek Vasut description: 5555361660aSMarek Vasut fixed-burst 5565361660aSMarek Vasut 5575361660aSMarek Vasut snps,mb: 5585361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/flag 5595361660aSMarek Vasut description: 5605361660aSMarek Vasut mixed-burst 5615361660aSMarek Vasut 5625361660aSMarek Vasut snps,rb: 5635361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/flag 5645361660aSMarek Vasut description: 5655361660aSMarek Vasut rebuild INCRx Burst 5665361660aSMarek Vasut 5677db3545aSMaxime Ripardrequired: 5687db3545aSMaxime Ripard - compatible 5697db3545aSMaxime Ripard - reg 5707db3545aSMaxime Ripard - interrupts 5717db3545aSMaxime Ripard - interrupt-names 57267d0da99SMaxime Ripard - phy-mode 5737db3545aSMaxime Ripard 5747db3545aSMaxime Riparddependencies: 5757db3545aSMaxime Ripard snps,reset-active-low: ["snps,reset-gpio"] 576affb6a3fSAndrew Halaney snps,reset-delays-us: ["snps,reset-gpio"] 5777db3545aSMaxime Ripard 5787db3545aSMaxime RipardallOf: 5793079bfdbSRob Herring - $ref: ethernet-controller.yaml# 5807db3545aSMaxime Ripard - if: 5817db3545aSMaxime Ripard properties: 5827db3545aSMaxime Ripard compatible: 5837db3545aSMaxime Ripard contains: 5847db3545aSMaxime Ripard enum: 5854b859450SMaxime Ripard - allwinner,sun7i-a20-gmac 5860569929dSMaxime Ripard - allwinner,sun8i-a83t-emac 5870569929dSMaxime Ripard - allwinner,sun8i-h3-emac 588b33be51cSMaxime Ripard - allwinner,sun8i-r40-gmac 5890569929dSMaxime Ripard - allwinner,sun8i-v3s-emac 5900569929dSMaxime Ripard - allwinner,sun50i-a64-emac 5913b840106S周琰杰 (Zhou Yanjie) - ingenic,jz4775-mac 5923b840106S周琰杰 (Zhou Yanjie) - ingenic,x1000-mac 5933b840106S周琰杰 (Zhou Yanjie) - ingenic,x1600-mac 5943b840106S周琰杰 (Zhou Yanjie) - ingenic,x1830-mac 5953b840106S周琰杰 (Zhou Yanjie) - ingenic,x2000-mac 596d0e3d29fSBartosz Golaszewski - qcom,sa8775p-ethqos 59725926a70SAndrew Halaney - qcom,sc8280xp-ethqos 5981d01efafSRob Herring - snps,dwmac-3.50a 5991d01efafSRob Herring - snps,dwmac-4.10a 6001d01efafSRob Herring - snps,dwmac-4.20a 60113f93511SEmil Renner Berthing - snps,dwmac-5.20 6027db3545aSMaxime Ripard - snps,dwxgmac 6037db3545aSMaxime Ripard - snps,dwxgmac-2.10 6047db3545aSMaxime Ripard - st,spear600-gmac 6057db3545aSMaxime Ripard 6067db3545aSMaxime Ripard then: 6077db3545aSMaxime Ripard properties: 6087db3545aSMaxime Ripard snps,pbl: 6097db3545aSMaxime Ripard description: 6107db3545aSMaxime Ripard Programmable Burst Length (tx and rx) 611d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/uint32 61209a2fb41SBiao Huang enum: [1, 2, 4, 8, 16, 32] 6137db3545aSMaxime Ripard 6147db3545aSMaxime Ripard snps,txpbl: 6157db3545aSMaxime Ripard description: 6167db3545aSMaxime Ripard Tx Programmable Burst Length. If set, DMA tx will use this 6177db3545aSMaxime Ripard value rather than snps,pbl. 618d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/uint32 61909a2fb41SBiao Huang enum: [1, 2, 4, 8, 16, 32] 6207db3545aSMaxime Ripard 6217db3545aSMaxime Ripard snps,rxpbl: 6227db3545aSMaxime Ripard description: 6237db3545aSMaxime Ripard Rx Programmable Burst Length. If set, DMA rx will use this 6247db3545aSMaxime Ripard value rather than snps,pbl. 625d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/uint32 62609a2fb41SBiao Huang enum: [1, 2, 4, 8, 16, 32] 6277db3545aSMaxime Ripard 6287db3545aSMaxime Ripard snps,no-pbl-x8: 629d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 6307db3545aSMaxime Ripard description: 6317db3545aSMaxime Ripard Don\'t multiply the pbl/txpbl/rxpbl values by 8. For core 6327db3545aSMaxime Ripard rev < 3.50, don\'t multiply the values by 4. 6337db3545aSMaxime Ripard 6347db3545aSMaxime Ripard - if: 6357db3545aSMaxime Ripard properties: 6367db3545aSMaxime Ripard compatible: 6377db3545aSMaxime Ripard contains: 6387db3545aSMaxime Ripard enum: 6394b859450SMaxime Ripard - allwinner,sun7i-a20-gmac 6400569929dSMaxime Ripard - allwinner,sun8i-a83t-emac 6410569929dSMaxime Ripard - allwinner,sun8i-h3-emac 642b33be51cSMaxime Ripard - allwinner,sun8i-r40-gmac 6430569929dSMaxime Ripard - allwinner,sun8i-v3s-emac 6440569929dSMaxime Ripard - allwinner,sun50i-a64-emac 64568277749SQing Zhang - loongson,ls2k-dwmac 64668277749SQing Zhang - loongson,ls7a-dwmac 6473b840106S周琰杰 (Zhou Yanjie) - ingenic,jz4775-mac 6483b840106S周琰杰 (Zhou Yanjie) - ingenic,x1000-mac 6493b840106S周琰杰 (Zhou Yanjie) - ingenic,x1600-mac 6503b840106S周琰杰 (Zhou Yanjie) - ingenic,x1830-mac 6513b840106S周琰杰 (Zhou Yanjie) - ingenic,x2000-mac 652d70c215bSBhupesh Sharma - qcom,qcs404-ethqos 653d0e3d29fSBartosz Golaszewski - qcom,sa8775p-ethqos 65425926a70SAndrew Halaney - qcom,sc8280xp-ethqos 655d70c215bSBhupesh Sharma - qcom,sm8150-ethqos 6567db3545aSMaxime Ripard - snps,dwmac-4.00 6577db3545aSMaxime Ripard - snps,dwmac-4.10a 658f2253143SChristophe Roullier - snps,dwmac-4.20a 659bdad810eSJoakim Zhang - snps,dwmac-5.10a 66013f93511SEmil Renner Berthing - snps,dwmac-5.20 6617db3545aSMaxime Ripard - snps,dwxgmac 6627db3545aSMaxime Ripard - snps,dwxgmac-2.10 6637db3545aSMaxime Ripard - st,spear600-gmac 6647db3545aSMaxime Ripard 6657db3545aSMaxime Ripard then: 666dbce0b65SRob Herring properties: 6677db3545aSMaxime Ripard snps,tso: 668d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 6697db3545aSMaxime Ripard description: 6707db3545aSMaxime Ripard Enables the TSO feature otherwise it will be managed by 6717db3545aSMaxime Ripard MAC HW capability register. 6727db3545aSMaxime Ripard 6736a0e321eSRob HerringadditionalProperties: true 6746a0e321eSRob Herring 6757db3545aSMaxime Ripardexamples: 6767db3545aSMaxime Ripard - | 6778fc4deaaSSebastian Reichel gmac0: ethernet@e0800000 { 6788fc4deaaSSebastian Reichel compatible = "snps,dwxgmac-2.10", "snps,dwxgmac"; 6798fc4deaaSSebastian Reichel reg = <0xe0800000 0x8000>; 6808fc4deaaSSebastian Reichel interrupt-parent = <&vic1>; 6818fc4deaaSSebastian Reichel interrupts = <24 23 22>; 6828fc4deaaSSebastian Reichel interrupt-names = "macirq", "eth_wake_irq", "eth_lpi"; 6838fc4deaaSSebastian Reichel mac-address = [000000000000]; /* Filled in by U-Boot */ 6848fc4deaaSSebastian Reichel max-frame-size = <3800>; 6858fc4deaaSSebastian Reichel phy-mode = "gmii"; 6868fc4deaaSSebastian Reichel snps,multicast-filter-bins = <256>; 6878fc4deaaSSebastian Reichel snps,perfect-filter-entries = <128>; 6888fc4deaaSSebastian Reichel rx-fifo-depth = <16384>; 6898fc4deaaSSebastian Reichel tx-fifo-depth = <16384>; 6908fc4deaaSSebastian Reichel clocks = <&clock>; 6918fc4deaaSSebastian Reichel clock-names = "stmmaceth"; 6928fc4deaaSSebastian Reichel snps,axi-config = <&stmmac_axi_setup>; 6938fc4deaaSSebastian Reichel snps,mtl-rx-config = <&mtl_rx_setup>; 6948fc4deaaSSebastian Reichel snps,mtl-tx-config = <&mtl_tx_setup>; 6958fc4deaaSSebastian Reichel 6967db3545aSMaxime Ripard stmmac_axi_setup: stmmac-axi-config { 6977db3545aSMaxime Ripard snps,wr_osr_lmt = <0xf>; 6987db3545aSMaxime Ripard snps,rd_osr_lmt = <0xf>; 6997db3545aSMaxime Ripard snps,blen = <256 128 64 32 0 0 0>; 7007db3545aSMaxime Ripard }; 7017db3545aSMaxime Ripard 7027db3545aSMaxime Ripard mtl_rx_setup: rx-queues-config { 7037db3545aSMaxime Ripard snps,rx-queues-to-use = <1>; 7047db3545aSMaxime Ripard snps,rx-sched-sp; 7057db3545aSMaxime Ripard queue0 { 7067db3545aSMaxime Ripard snps,dcb-algorithm; 7077db3545aSMaxime Ripard snps,map-to-dma-channel = <0x0>; 7087db3545aSMaxime Ripard snps,priority = <0x0>; 7097db3545aSMaxime Ripard }; 7107db3545aSMaxime Ripard }; 7117db3545aSMaxime Ripard 7127db3545aSMaxime Ripard mtl_tx_setup: tx-queues-config { 7137db3545aSMaxime Ripard snps,tx-queues-to-use = <2>; 7147db3545aSMaxime Ripard snps,tx-sched-wrr; 7157db3545aSMaxime Ripard queue0 { 7167db3545aSMaxime Ripard snps,weight = <0x10>; 7177db3545aSMaxime Ripard snps,dcb-algorithm; 7187db3545aSMaxime Ripard snps,priority = <0x0>; 7197db3545aSMaxime Ripard }; 7207db3545aSMaxime Ripard 7217db3545aSMaxime Ripard queue1 { 7227db3545aSMaxime Ripard snps,avb-algorithm; 7237db3545aSMaxime Ripard snps,send_slope = <0x1000>; 7247db3545aSMaxime Ripard snps,idle_slope = <0x1000>; 7257db3545aSMaxime Ripard snps,high_credit = <0x3E800>; 7267db3545aSMaxime Ripard snps,low_credit = <0xFFC18000>; 7277db3545aSMaxime Ripard snps,priority = <0x1>; 7287db3545aSMaxime Ripard }; 7297db3545aSMaxime Ripard }; 7307db3545aSMaxime Ripard 7317db3545aSMaxime Ripard mdio0 { 7327db3545aSMaxime Ripard #address-cells = <1>; 7337db3545aSMaxime Ripard #size-cells = <0>; 7347db3545aSMaxime Ripard compatible = "snps,dwmac-mdio"; 7357db3545aSMaxime Ripard phy1: ethernet-phy@0 { 7367db3545aSMaxime Ripard reg = <0>; 7377db3545aSMaxime Ripard }; 7387db3545aSMaxime Ripard }; 7397db3545aSMaxime Ripard }; 7407db3545aSMaxime Ripard 7417db3545aSMaxime Ripard# FIXME: We should set it, but it would report all the generic 7427db3545aSMaxime Ripard# properties as additional properties. 7437db3545aSMaxime Ripard# additionalProperties: false 7447db3545aSMaxime Ripard 7457db3545aSMaxime Ripard... 746