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 79544a74c3SJonas Karlman - rockchip,rk3308-gmac 80517a882aSEzequiel Garcia - rockchip,rk3328-gmac 81517a882aSEzequiel Garcia - rockchip,rk3366-gmac 82517a882aSEzequiel Garcia - rockchip,rk3368-gmac 83*299e2aefSDetlev Casanova - rockchip,rk3576-gmac 84a2b77831SSebastian Reichel - rockchip,rk3588-gmac 85517a882aSEzequiel Garcia - rockchip,rk3399-gmac 86517a882aSEzequiel Garcia - rockchip,rv1108-gmac 877db3545aSMaxime Ripard - snps,dwmac 883781b6adSHerve Codina - snps,dwmac-3.40a 897db3545aSMaxime Ripard - snps,dwmac-3.50a 907db3545aSMaxime Ripard - snps,dwmac-3.610 917db3545aSMaxime Ripard - snps,dwmac-3.70a 927db3545aSMaxime Ripard - snps,dwmac-3.710 937db3545aSMaxime Ripard - snps,dwmac-4.00 947db3545aSMaxime Ripard - snps,dwmac-4.10a 95f2253143SChristophe Roullier - snps,dwmac-4.20a 96bdad810eSJoakim Zhang - snps,dwmac-5.10a 9713f93511SEmil Renner Berthing - snps,dwmac-5.20 987db3545aSMaxime Ripard - snps,dwxgmac 997db3545aSMaxime Ripard - snps,dwxgmac-2.10 10053e41b76SCristian Ciocaltea - starfive,jh7100-dwmac 101b76eaf7dSYanhong Wang - starfive,jh7110-dwmac 1027db3545aSMaxime Ripard 1037db3545aSMaxime Ripard reg: 10457b77df7SNeil Armstrong minItems: 1 10557b77df7SNeil Armstrong maxItems: 2 1067db3545aSMaxime Ripard 1077db3545aSMaxime Ripard interrupts: 1087db3545aSMaxime Ripard minItems: 1 1097db3545aSMaxime Ripard items: 1107db3545aSMaxime Ripard - description: Combined signal for various interrupt events 1117db3545aSMaxime Ripard - description: The interrupt to manage the remote wake-up packet detection 1127db3545aSMaxime Ripard - description: The interrupt that occurs when Rx exits the LPI state 1131963e65bSSuraj Jaiswal - description: The interrupt that occurs when HW safety error triggered 1147db3545aSMaxime Ripard 1157db3545aSMaxime Ripard interrupt-names: 1167db3545aSMaxime Ripard minItems: 1 1177db3545aSMaxime Ripard items: 1187db3545aSMaxime Ripard - const: macirq 1191963e65bSSuraj Jaiswal - enum: [eth_wake_irq, eth_lpi, sfty] 1201963e65bSSuraj Jaiswal - enum: [eth_wake_irq, eth_lpi, sfty] 1211963e65bSSuraj Jaiswal - enum: [eth_wake_irq, eth_lpi, sfty] 1227db3545aSMaxime Ripard 1237db3545aSMaxime Ripard clocks: 1247db3545aSMaxime Ripard minItems: 1 125517a882aSEzequiel Garcia maxItems: 8 126f2253143SChristophe Roullier additionalItems: true 1277db3545aSMaxime Ripard items: 1287db3545aSMaxime Ripard - description: GMAC main clock 1297db3545aSMaxime Ripard - description: Peripheral registers interface clock 1307db3545aSMaxime Ripard - description: 1317db3545aSMaxime Ripard PTP reference clock. This clock is used for programming the 1327db3545aSMaxime Ripard Timestamp Addend Register. If not passed then the system 1337db3545aSMaxime Ripard clock will be used and this is fine on some platforms. 1347db3545aSMaxime Ripard 1357db3545aSMaxime Ripard clock-names: 136f2253143SChristophe Roullier minItems: 1 137517a882aSEzequiel Garcia maxItems: 8 1387db3545aSMaxime Ripard additionalItems: true 1397db3545aSMaxime Ripard contains: 1407db3545aSMaxime Ripard enum: 1417db3545aSMaxime Ripard - stmmaceth 1427db3545aSMaxime Ripard - pclk 1437db3545aSMaxime Ripard - ptp_ref 1447db3545aSMaxime Ripard 1457db3545aSMaxime Ripard resets: 146843f6037SSamin Guo minItems: 1 147843f6037SSamin Guo items: 148843f6037SSamin Guo - description: GMAC stmmaceth reset 149843f6037SSamin Guo - description: AHB reset 1507db3545aSMaxime Ripard 1517db3545aSMaxime Ripard reset-names: 15253e41b76SCristian Ciocaltea oneOf: 15353e41b76SCristian Ciocaltea - items: 15453e41b76SCristian Ciocaltea - enum: [stmmaceth, ahb] 15553e41b76SCristian Ciocaltea - items: 156843f6037SSamin Guo - const: stmmaceth 157843f6037SSamin Guo - const: ahb 1587db3545aSMaxime Ripard 159955fe312SClément Léger power-domains: 160955fe312SClément Léger maxItems: 1 161955fe312SClément Léger 1629c15d359SAlexandru Ardelean mac-mode: 1639e5c8d39SAlexandru Ardelean $ref: ethernet-controller.yaml#/properties/phy-connection-type 1649c15d359SAlexandru Ardelean description: 1659c15d359SAlexandru Ardelean The property is identical to 'phy-mode', and assumes that there is mode 1669c15d359SAlexandru Ardelean converter in-between the MAC & PHY (e.g. GMII-to-RGMII). This converter 1679c15d359SAlexandru Ardelean can be passive (no SW requirement), and requires that the MAC operate 1689c15d359SAlexandru Ardelean in a different mode than the PHY in order to function. 1699c15d359SAlexandru Ardelean 1707db3545aSMaxime Ripard snps,axi-config: 171d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/phandle 1727db3545aSMaxime Ripard description: 1737db3545aSMaxime Ripard AXI BUS Mode parameters. Phandle to a node that can contain the 1747db3545aSMaxime Ripard following properties 1757db3545aSMaxime Ripard * snps,lpi_en, enable Low Power Interface 1767db3545aSMaxime Ripard * snps,xit_frm, unlock on WoL 1777db3545aSMaxime Ripard * snps,wr_osr_lmt, max write outstanding req. limit 1787db3545aSMaxime Ripard * snps,rd_osr_lmt, max read outstanding req. limit 1797db3545aSMaxime Ripard * snps,kbbe, do not cross 1KiB boundary. 1807db3545aSMaxime Ripard * snps,blen, this is a vector of supported burst length. 1817db3545aSMaxime Ripard * snps,fb, fixed-burst 1827db3545aSMaxime Ripard * snps,mb, mixed-burst 1837db3545aSMaxime Ripard * snps,rb, rebuild INCRx Burst 1847db3545aSMaxime Ripard 1857db3545aSMaxime Ripard snps,mtl-rx-config: 186d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/phandle 1877db3545aSMaxime Ripard description: 1888fc4deaaSSebastian Reichel Multiple RX Queues parameters. Phandle to a node that 1898fc4deaaSSebastian Reichel implements the 'rx-queues-config' object described in 1908fc4deaaSSebastian Reichel this binding. 1918fc4deaaSSebastian Reichel 1928fc4deaaSSebastian Reichel rx-queues-config: 1938fc4deaaSSebastian Reichel type: object 1948fc4deaaSSebastian Reichel properties: 1958fc4deaaSSebastian Reichel snps,rx-queues-to-use: 1968fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 1978fc4deaaSSebastian Reichel description: number of RX queues to be used in the driver 1988fc4deaaSSebastian Reichel snps,rx-sched-sp: 1998fc4deaaSSebastian Reichel type: boolean 2008fc4deaaSSebastian Reichel description: Strict priority 2018fc4deaaSSebastian Reichel snps,rx-sched-wsp: 2028fc4deaaSSebastian Reichel type: boolean 2038fc4deaaSSebastian Reichel description: Weighted Strict priority 2048fc4deaaSSebastian Reichel allOf: 2058fc4deaaSSebastian Reichel - if: 2068fc4deaaSSebastian Reichel required: 2078fc4deaaSSebastian Reichel - snps,rx-sched-sp 2088fc4deaaSSebastian Reichel then: 2098fc4deaaSSebastian Reichel properties: 2108fc4deaaSSebastian Reichel snps,rx-sched-wsp: false 2118fc4deaaSSebastian Reichel - if: 2128fc4deaaSSebastian Reichel required: 2138fc4deaaSSebastian Reichel - snps,rx-sched-wsp 2148fc4deaaSSebastian Reichel then: 2158fc4deaaSSebastian Reichel properties: 2168fc4deaaSSebastian Reichel snps,rx-sched-sp: false 2178fc4deaaSSebastian Reichel patternProperties: 2188fc4deaaSSebastian Reichel "^queue[0-9]$": 2198fc4deaaSSebastian Reichel description: Each subnode represents a queue. 2208fc4deaaSSebastian Reichel type: object 2218fc4deaaSSebastian Reichel properties: 2228fc4deaaSSebastian Reichel snps,dcb-algorithm: 2238fc4deaaSSebastian Reichel type: boolean 2248fc4deaaSSebastian Reichel description: Queue to be enabled as DCB 2258fc4deaaSSebastian Reichel snps,avb-algorithm: 2268fc4deaaSSebastian Reichel type: boolean 2278fc4deaaSSebastian Reichel description: Queue to be enabled as AVB 2288fc4deaaSSebastian Reichel snps,map-to-dma-channel: 2298fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 2308fc4deaaSSebastian Reichel description: DMA channel id to map 2318fc4deaaSSebastian Reichel snps,route-avcp: 2328fc4deaaSSebastian Reichel type: boolean 2338fc4deaaSSebastian Reichel description: AV Untagged Control packets 2348fc4deaaSSebastian Reichel snps,route-ptp: 2358fc4deaaSSebastian Reichel type: boolean 2368fc4deaaSSebastian Reichel description: PTP Packets 2378fc4deaaSSebastian Reichel snps,route-dcbcp: 2388fc4deaaSSebastian Reichel type: boolean 2398fc4deaaSSebastian Reichel description: DCB Control Packets 2408fc4deaaSSebastian Reichel snps,route-up: 2418fc4deaaSSebastian Reichel type: boolean 2428fc4deaaSSebastian Reichel description: Untagged Packets 2438fc4deaaSSebastian Reichel snps,route-multi-broad: 2448fc4deaaSSebastian Reichel type: boolean 2458fc4deaaSSebastian Reichel description: Multicast & Broadcast Packets 2468fc4deaaSSebastian Reichel snps,priority: 247992c287dSRob Herring $ref: /schemas/types.yaml#/definitions/uint32-array 248992c287dSRob Herring maxItems: 1 2498fc4deaaSSebastian Reichel description: Bitmask of the tagged frames priorities assigned to the queue 2508fc4deaaSSebastian Reichel allOf: 2518fc4deaaSSebastian Reichel - if: 2528fc4deaaSSebastian Reichel required: 2538fc4deaaSSebastian Reichel - snps,dcb-algorithm 2548fc4deaaSSebastian Reichel then: 2558fc4deaaSSebastian Reichel properties: 2568fc4deaaSSebastian Reichel snps,avb-algorithm: false 2578fc4deaaSSebastian Reichel - if: 2588fc4deaaSSebastian Reichel required: 2598fc4deaaSSebastian Reichel - snps,avb-algorithm 2608fc4deaaSSebastian Reichel then: 2618fc4deaaSSebastian Reichel properties: 2628fc4deaaSSebastian Reichel snps,dcb-algorithm: false 2638fc4deaaSSebastian Reichel - if: 2648fc4deaaSSebastian Reichel required: 2658fc4deaaSSebastian Reichel - snps,route-avcp 2668fc4deaaSSebastian Reichel then: 2678fc4deaaSSebastian Reichel properties: 2688fc4deaaSSebastian Reichel snps,route-ptp: false 2698fc4deaaSSebastian Reichel snps,route-dcbcp: false 2708fc4deaaSSebastian Reichel snps,route-up: false 2718fc4deaaSSebastian Reichel snps,route-multi-broad: false 2728fc4deaaSSebastian Reichel - if: 2738fc4deaaSSebastian Reichel required: 2748fc4deaaSSebastian Reichel - snps,route-ptp 2758fc4deaaSSebastian Reichel then: 2768fc4deaaSSebastian Reichel properties: 2778fc4deaaSSebastian Reichel snps,route-avcp: false 2788fc4deaaSSebastian Reichel snps,route-dcbcp: false 2798fc4deaaSSebastian Reichel snps,route-up: false 2808fc4deaaSSebastian Reichel snps,route-multi-broad: false 2818fc4deaaSSebastian Reichel - if: 2828fc4deaaSSebastian Reichel required: 2838fc4deaaSSebastian Reichel - snps,route-dcbcp 2848fc4deaaSSebastian Reichel then: 2858fc4deaaSSebastian Reichel properties: 2868fc4deaaSSebastian Reichel snps,route-avcp: false 2878fc4deaaSSebastian Reichel snps,route-ptp: false 2888fc4deaaSSebastian Reichel snps,route-up: false 2898fc4deaaSSebastian Reichel snps,route-multi-broad: false 2908fc4deaaSSebastian Reichel - if: 2918fc4deaaSSebastian Reichel required: 2928fc4deaaSSebastian Reichel - snps,route-up 2938fc4deaaSSebastian Reichel then: 2948fc4deaaSSebastian Reichel properties: 2958fc4deaaSSebastian Reichel snps,route-avcp: false 2968fc4deaaSSebastian Reichel snps,route-ptp: false 2978fc4deaaSSebastian Reichel snps,route-dcbcp: false 2988fc4deaaSSebastian Reichel snps,route-multi-broad: false 2998fc4deaaSSebastian Reichel - if: 3008fc4deaaSSebastian Reichel required: 3018fc4deaaSSebastian Reichel - snps,route-multi-broad 3028fc4deaaSSebastian Reichel then: 3038fc4deaaSSebastian Reichel properties: 3048fc4deaaSSebastian Reichel snps,route-avcp: false 3058fc4deaaSSebastian Reichel snps,route-ptp: false 3068fc4deaaSSebastian Reichel snps,route-dcbcp: false 3078fc4deaaSSebastian Reichel snps,route-up: false 3088fc4deaaSSebastian Reichel additionalProperties: false 3098fc4deaaSSebastian Reichel additionalProperties: false 3107db3545aSMaxime Ripard 3117db3545aSMaxime Ripard snps,mtl-tx-config: 312d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/phandle 3137db3545aSMaxime Ripard description: 3148fc4deaaSSebastian Reichel Multiple TX Queues parameters. Phandle to a node that 3158fc4deaaSSebastian Reichel implements the 'tx-queues-config' object described in 3168fc4deaaSSebastian Reichel this binding. 3178fc4deaaSSebastian Reichel 3188fc4deaaSSebastian Reichel tx-queues-config: 3198fc4deaaSSebastian Reichel type: object 3208fc4deaaSSebastian Reichel properties: 3218fc4deaaSSebastian Reichel snps,tx-queues-to-use: 3228fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3238fc4deaaSSebastian Reichel description: number of TX queues to be used in the driver 3248fc4deaaSSebastian Reichel snps,tx-sched-wrr: 3258fc4deaaSSebastian Reichel type: boolean 3268fc4deaaSSebastian Reichel description: Weighted Round Robin 3278fc4deaaSSebastian Reichel snps,tx-sched-wfq: 3288fc4deaaSSebastian Reichel type: boolean 3298fc4deaaSSebastian Reichel description: Weighted Fair Queuing 3308fc4deaaSSebastian Reichel snps,tx-sched-dwrr: 3318fc4deaaSSebastian Reichel type: boolean 3328fc4deaaSSebastian Reichel description: Deficit Weighted Round Robin 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 - if: 3428fc4deaaSSebastian Reichel required: 3438fc4deaaSSebastian Reichel - snps,tx-sched-wfq 3448fc4deaaSSebastian Reichel then: 3458fc4deaaSSebastian Reichel properties: 3468fc4deaaSSebastian Reichel snps,tx-sched-wrr: false 3478fc4deaaSSebastian Reichel snps,tx-sched-dwrr: false 3488fc4deaaSSebastian Reichel - if: 3498fc4deaaSSebastian Reichel required: 3508fc4deaaSSebastian Reichel - snps,tx-sched-dwrr 3518fc4deaaSSebastian Reichel then: 3528fc4deaaSSebastian Reichel properties: 3538fc4deaaSSebastian Reichel snps,tx-sched-wrr: false 3548fc4deaaSSebastian Reichel snps,tx-sched-wfq: false 3558fc4deaaSSebastian Reichel patternProperties: 3568fc4deaaSSebastian Reichel "^queue[0-9]$": 3578fc4deaaSSebastian Reichel description: Each subnode represents a queue. 3588fc4deaaSSebastian Reichel type: object 3598fc4deaaSSebastian Reichel properties: 3608fc4deaaSSebastian Reichel snps,weight: 3618fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3628fc4deaaSSebastian Reichel description: TX queue weight (if using a DCB weight algorithm) 3638fc4deaaSSebastian Reichel snps,dcb-algorithm: 3648fc4deaaSSebastian Reichel type: boolean 3658fc4deaaSSebastian Reichel description: TX queue will be working in DCB 3668fc4deaaSSebastian Reichel snps,avb-algorithm: 3678fc4deaaSSebastian Reichel type: boolean 3688fc4deaaSSebastian Reichel description: 3698fc4deaaSSebastian Reichel TX queue will be working in AVB. 3708fc4deaaSSebastian Reichel Queue 0 is reserved for legacy traffic and so no AVB is 3718fc4deaaSSebastian Reichel available in this queue. 3728fc4deaaSSebastian Reichel snps,send_slope: 3738fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3748fc4deaaSSebastian Reichel description: enable Low Power Interface 3758fc4deaaSSebastian Reichel snps,idle_slope: 3768fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3778fc4deaaSSebastian Reichel description: unlock on WoL 3788fc4deaaSSebastian Reichel snps,high_credit: 3798fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3808fc4deaaSSebastian Reichel description: max write outstanding req. limit 3818fc4deaaSSebastian Reichel snps,low_credit: 3828fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3838fc4deaaSSebastian Reichel description: max read outstanding req. limit 3848fc4deaaSSebastian Reichel snps,priority: 385992c287dSRob Herring $ref: /schemas/types.yaml#/definitions/uint32-array 386992c287dSRob Herring maxItems: 1 3878fc4deaaSSebastian Reichel description: 3888fc4deaaSSebastian Reichel Bitmask of the tagged frames priorities assigned to the queue. 38993828834SSeb Laveze When a PFC frame is received with priorities matching the bitmask, 39093828834SSeb Laveze the queue is blocked from transmitting for the pause time specified 39193828834SSeb Laveze in the PFC frame. 3926fb8c20aSRohan G Thomas 3936fb8c20aSRohan G Thomas snps,coe-unsupported: 3946fb8c20aSRohan G Thomas type: boolean 3956fb8c20aSRohan G Thomas description: TX checksum offload is unsupported by the TX queue. 3966fb8c20aSRohan G Thomas 3978fc4deaaSSebastian Reichel allOf: 3988fc4deaaSSebastian Reichel - if: 3998fc4deaaSSebastian Reichel required: 4008fc4deaaSSebastian Reichel - snps,dcb-algorithm 4018fc4deaaSSebastian Reichel then: 4028fc4deaaSSebastian Reichel properties: 4038fc4deaaSSebastian Reichel snps,avb-algorithm: false 4048fc4deaaSSebastian Reichel - if: 4058fc4deaaSSebastian Reichel required: 4068fc4deaaSSebastian Reichel - snps,avb-algorithm 4078fc4deaaSSebastian Reichel then: 4088fc4deaaSSebastian Reichel properties: 4098fc4deaaSSebastian Reichel snps,dcb-algorithm: false 4108fc4deaaSSebastian Reichel snps,weight: false 4118fc4deaaSSebastian Reichel additionalProperties: false 4128fc4deaaSSebastian Reichel additionalProperties: false 4137db3545aSMaxime Ripard 4147db3545aSMaxime Ripard snps,reset-gpio: 415f80b1dfcSMaxime Ripard deprecated: true 4167db3545aSMaxime Ripard maxItems: 1 4177db3545aSMaxime Ripard description: 4187db3545aSMaxime Ripard PHY Reset GPIO 4197db3545aSMaxime Ripard 4207db3545aSMaxime Ripard snps,reset-active-low: 421f80b1dfcSMaxime Ripard deprecated: true 422d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4237db3545aSMaxime Ripard description: 4247db3545aSMaxime Ripard Indicates that the PHY Reset is active low 4257db3545aSMaxime Ripard 4267db3545aSMaxime Ripard snps,reset-delays-us: 427f80b1dfcSMaxime Ripard deprecated: true 4287db3545aSMaxime Ripard description: 4297db3545aSMaxime Ripard Triplet of delays. The 1st cell is reset pre-delay in micro 4307db3545aSMaxime Ripard seconds. The 2nd cell is reset pulse in micro seconds. The 3rd 4317db3545aSMaxime Ripard cell is reset post-delay in micro seconds. 4323d21a460SRob Herring minItems: 3 4333d21a460SRob Herring maxItems: 3 4347db3545aSMaxime Ripard 4357db3545aSMaxime Ripard snps,aal: 436d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4377db3545aSMaxime Ripard description: 4387db3545aSMaxime Ripard Use Address-Aligned Beats 4397db3545aSMaxime Ripard 440d01e0e98SSerge Semin snps,pbl: 441d01e0e98SSerge Semin description: 442d01e0e98SSerge Semin Programmable Burst Length (tx and rx) 443d01e0e98SSerge Semin $ref: /schemas/types.yaml#/definitions/uint32 444d01e0e98SSerge Semin enum: [1, 2, 4, 8, 16, 32] 445d01e0e98SSerge Semin 446d01e0e98SSerge Semin snps,txpbl: 447d01e0e98SSerge Semin description: 448d01e0e98SSerge Semin Tx Programmable Burst Length. If set, DMA tx will use this 449d01e0e98SSerge Semin value rather than snps,pbl. 450d01e0e98SSerge Semin $ref: /schemas/types.yaml#/definitions/uint32 451d01e0e98SSerge Semin enum: [1, 2, 4, 8, 16, 32] 452d01e0e98SSerge Semin 453d01e0e98SSerge Semin snps,rxpbl: 454d01e0e98SSerge Semin description: 455d01e0e98SSerge Semin Rx Programmable Burst Length. If set, DMA rx will use this 456d01e0e98SSerge Semin value rather than snps,pbl. 457d01e0e98SSerge Semin $ref: /schemas/types.yaml#/definitions/uint32 458d01e0e98SSerge Semin enum: [1, 2, 4, 8, 16, 32] 459d01e0e98SSerge Semin 460d01e0e98SSerge Semin snps,no-pbl-x8: 461d01e0e98SSerge Semin $ref: /schemas/types.yaml#/definitions/flag 462d01e0e98SSerge Semin description: 463d01e0e98SSerge Semin Don\'t multiply the pbl/txpbl/rxpbl values by 8. For core 464d01e0e98SSerge Semin rev < 3.50, don\'t multiply the values by 4. 465d01e0e98SSerge Semin 4667db3545aSMaxime Ripard snps,fixed-burst: 467d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4687db3545aSMaxime Ripard description: 4697db3545aSMaxime Ripard Program the DMA to use the fixed burst mode 4707db3545aSMaxime Ripard 4717db3545aSMaxime Ripard snps,mixed-burst: 472d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4737db3545aSMaxime Ripard description: 4747db3545aSMaxime Ripard Program the DMA to use the mixed burst mode 4757db3545aSMaxime Ripard 4767db3545aSMaxime Ripard snps,force_thresh_dma_mode: 477d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4787db3545aSMaxime Ripard description: 4797db3545aSMaxime Ripard Force DMA to use the threshold mode for both tx and rx 4807db3545aSMaxime Ripard 4817db3545aSMaxime Ripard snps,force_sf_dma_mode: 482d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4837db3545aSMaxime Ripard description: 4847db3545aSMaxime Ripard Force DMA to use the Store and Forward mode for both tx and 4857db3545aSMaxime Ripard rx. This flag is ignored if force_thresh_dma_mode is set. 4867db3545aSMaxime Ripard 4877db3545aSMaxime Ripard snps,en-tx-lpi-clockgating: 488d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4897db3545aSMaxime Ripard description: 4907db3545aSMaxime Ripard Enable gating of the MAC TX clock during TX low-power mode 4917db3545aSMaxime Ripard 4927db3545aSMaxime Ripard snps,multicast-filter-bins: 493d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/uint32 4947db3545aSMaxime Ripard description: 4957db3545aSMaxime Ripard Number of multicast filter hash bins supported by this device 4967db3545aSMaxime Ripard instance 4977db3545aSMaxime Ripard 4987db3545aSMaxime Ripard snps,perfect-filter-entries: 499d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/uint32 5007db3545aSMaxime Ripard description: 5017db3545aSMaxime Ripard Number of perfect filter entries supported by this device 5027db3545aSMaxime Ripard instance 5037db3545aSMaxime Ripard 5047db3545aSMaxime Ripard snps,ps-speed: 505d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/uint32 5067db3545aSMaxime Ripard description: 5077db3545aSMaxime Ripard Port selection speed that can be passed to the core when PCS 5087db3545aSMaxime Ripard is supported. For example, this is used in case of SGMII and 5097db3545aSMaxime Ripard MAC2MAC connection. 5107db3545aSMaxime Ripard 51122ba1afdSJianguo Zhang snps,clk-csr: 51222ba1afdSJianguo Zhang $ref: /schemas/types.yaml#/definitions/uint32 51322ba1afdSJianguo Zhang description: 51422ba1afdSJianguo Zhang Frequency division factor for MDC clock. 51522ba1afdSJianguo Zhang 516390b14b5SRob Herring (Arm) snps,tso: 517390b14b5SRob Herring (Arm) $ref: /schemas/types.yaml#/definitions/flag 518390b14b5SRob Herring (Arm) description: 519390b14b5SRob Herring (Arm) Enables the TSO feature otherwise it will be managed by MAC HW capability 520390b14b5SRob Herring (Arm) register. 521390b14b5SRob Herring (Arm) 5227db3545aSMaxime Ripard mdio: 523b2d28642SRob Herring $ref: mdio.yaml# 524b2d28642SRob Herring unevaluatedProperties: false 5257db3545aSMaxime Ripard description: 5267db3545aSMaxime Ripard Creates and registers an MDIO bus. 5277db3545aSMaxime Ripard 5287db3545aSMaxime Ripard properties: 5297db3545aSMaxime Ripard compatible: 5307db3545aSMaxime Ripard const: snps,dwmac-mdio 5317db3545aSMaxime Ripard 5327db3545aSMaxime Ripard required: 5337db3545aSMaxime Ripard - compatible 5347db3545aSMaxime Ripard 5355361660aSMarek Vasut stmmac-axi-config: 5365361660aSMarek Vasut type: object 5375361660aSMarek Vasut unevaluatedProperties: false 5385361660aSMarek Vasut description: 5395361660aSMarek Vasut AXI BUS Mode parameters. 5405361660aSMarek Vasut 5415361660aSMarek Vasut properties: 5425361660aSMarek Vasut snps,lpi_en: 5435361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/flag 5445361660aSMarek Vasut description: 5455361660aSMarek Vasut enable Low Power Interface 5465361660aSMarek Vasut 5475361660aSMarek Vasut snps,xit_frm: 5485361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/flag 5495361660aSMarek Vasut description: 5505361660aSMarek Vasut unlock on WoL 5515361660aSMarek Vasut 5525361660aSMarek Vasut snps,wr_osr_lmt: 5535361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/uint32 5545361660aSMarek Vasut description: 5555361660aSMarek Vasut max write outstanding req. limit 5565361660aSMarek Vasut 5575361660aSMarek Vasut snps,rd_osr_lmt: 5585361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/uint32 5595361660aSMarek Vasut description: 5605361660aSMarek Vasut max read outstanding req. limit 5615361660aSMarek Vasut 5625361660aSMarek Vasut snps,kbbe: 5635361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/uint32 5645361660aSMarek Vasut description: 5655361660aSMarek Vasut do not cross 1KiB boundary. 5665361660aSMarek Vasut 5675361660aSMarek Vasut snps,blen: 5685361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/uint32-array 5695361660aSMarek Vasut description: 5705361660aSMarek Vasut this is a vector of supported burst length. 5715361660aSMarek Vasut minItems: 7 5725361660aSMarek Vasut maxItems: 7 5735361660aSMarek Vasut 5745361660aSMarek Vasut snps,fb: 5755361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/flag 5765361660aSMarek Vasut description: 5775361660aSMarek Vasut fixed-burst 5785361660aSMarek Vasut 5795361660aSMarek Vasut snps,mb: 5805361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/flag 5815361660aSMarek Vasut description: 5825361660aSMarek Vasut mixed-burst 5835361660aSMarek Vasut 5845361660aSMarek Vasut snps,rb: 5855361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/flag 5865361660aSMarek Vasut description: 5875361660aSMarek Vasut rebuild INCRx Burst 5885361660aSMarek Vasut 5897db3545aSMaxime Ripardrequired: 5907db3545aSMaxime Ripard - compatible 5917db3545aSMaxime Ripard - reg 5927db3545aSMaxime Ripard - interrupts 5937db3545aSMaxime Ripard - interrupt-names 59467d0da99SMaxime Ripard - phy-mode 5957db3545aSMaxime Ripard 5967db3545aSMaxime Riparddependencies: 5977db3545aSMaxime Ripard snps,reset-active-low: ["snps,reset-gpio"] 598affb6a3fSAndrew Halaney snps,reset-delays-us: ["snps,reset-gpio"] 5997db3545aSMaxime Ripard 6007db3545aSMaxime RipardallOf: 6013079bfdbSRob Herring - $ref: ethernet-controller.yaml# 6027db3545aSMaxime Ripard - if: 6037db3545aSMaxime Ripard properties: 6047db3545aSMaxime Ripard compatible: 605390b14b5SRob Herring (Arm) not: 6067db3545aSMaxime Ripard contains: 6077db3545aSMaxime Ripard enum: 6084b859450SMaxime Ripard - allwinner,sun7i-a20-gmac 6090569929dSMaxime Ripard - allwinner,sun8i-a83t-emac 6100569929dSMaxime Ripard - allwinner,sun8i-h3-emac 611b33be51cSMaxime Ripard - allwinner,sun8i-r40-gmac 6120569929dSMaxime Ripard - allwinner,sun8i-v3s-emac 6130569929dSMaxime Ripard - allwinner,sun50i-a64-emac 61468277749SQing Zhang - loongson,ls2k-dwmac 61568277749SQing Zhang - loongson,ls7a-dwmac 6163b840106S周琰杰 (Zhou Yanjie) - ingenic,jz4775-mac 6173b840106S周琰杰 (Zhou Yanjie) - ingenic,x1000-mac 6183b840106S周琰杰 (Zhou Yanjie) - ingenic,x1600-mac 6193b840106S周琰杰 (Zhou Yanjie) - ingenic,x1830-mac 6203b840106S周琰杰 (Zhou Yanjie) - ingenic,x2000-mac 621d70c215bSBhupesh Sharma - qcom,qcs404-ethqos 622d0e3d29fSBartosz Golaszewski - qcom,sa8775p-ethqos 62325926a70SAndrew Halaney - qcom,sc8280xp-ethqos 624d70c215bSBhupesh Sharma - qcom,sm8150-ethqos 6257db3545aSMaxime Ripard - snps,dwmac-4.00 6267db3545aSMaxime Ripard - snps,dwmac-4.10a 627f2253143SChristophe Roullier - snps,dwmac-4.20a 628bdad810eSJoakim Zhang - snps,dwmac-5.10a 62913f93511SEmil Renner Berthing - snps,dwmac-5.20 6307db3545aSMaxime Ripard - snps,dwxgmac 6317db3545aSMaxime Ripard - snps,dwxgmac-2.10 6327db3545aSMaxime Ripard - st,spear600-gmac 6337db3545aSMaxime Ripard 6347db3545aSMaxime Ripard then: 635dbce0b65SRob Herring properties: 636390b14b5SRob Herring (Arm) snps,tso: false 6377db3545aSMaxime Ripard 6386a0e321eSRob HerringadditionalProperties: true 6396a0e321eSRob Herring 6407db3545aSMaxime Ripardexamples: 6417db3545aSMaxime Ripard - | 6428fc4deaaSSebastian Reichel gmac0: ethernet@e0800000 { 6438fc4deaaSSebastian Reichel compatible = "snps,dwxgmac-2.10", "snps,dwxgmac"; 6448fc4deaaSSebastian Reichel reg = <0xe0800000 0x8000>; 6458fc4deaaSSebastian Reichel interrupt-parent = <&vic1>; 6468fc4deaaSSebastian Reichel interrupts = <24 23 22>; 6478fc4deaaSSebastian Reichel interrupt-names = "macirq", "eth_wake_irq", "eth_lpi"; 6488fc4deaaSSebastian Reichel mac-address = [000000000000]; /* Filled in by U-Boot */ 6498fc4deaaSSebastian Reichel max-frame-size = <3800>; 6508fc4deaaSSebastian Reichel phy-mode = "gmii"; 6518fc4deaaSSebastian Reichel snps,multicast-filter-bins = <256>; 6528fc4deaaSSebastian Reichel snps,perfect-filter-entries = <128>; 6538fc4deaaSSebastian Reichel rx-fifo-depth = <16384>; 6548fc4deaaSSebastian Reichel tx-fifo-depth = <16384>; 6558fc4deaaSSebastian Reichel clocks = <&clock>; 6568fc4deaaSSebastian Reichel clock-names = "stmmaceth"; 6578fc4deaaSSebastian Reichel snps,axi-config = <&stmmac_axi_setup>; 6588fc4deaaSSebastian Reichel snps,mtl-rx-config = <&mtl_rx_setup>; 6598fc4deaaSSebastian Reichel snps,mtl-tx-config = <&mtl_tx_setup>; 6608fc4deaaSSebastian Reichel 6617db3545aSMaxime Ripard stmmac_axi_setup: stmmac-axi-config { 6627db3545aSMaxime Ripard snps,wr_osr_lmt = <0xf>; 6637db3545aSMaxime Ripard snps,rd_osr_lmt = <0xf>; 6647db3545aSMaxime Ripard snps,blen = <256 128 64 32 0 0 0>; 6657db3545aSMaxime Ripard }; 6667db3545aSMaxime Ripard 6677db3545aSMaxime Ripard mtl_rx_setup: rx-queues-config { 6687db3545aSMaxime Ripard snps,rx-queues-to-use = <1>; 6697db3545aSMaxime Ripard snps,rx-sched-sp; 6707db3545aSMaxime Ripard queue0 { 6717db3545aSMaxime Ripard snps,dcb-algorithm; 6727db3545aSMaxime Ripard snps,map-to-dma-channel = <0x0>; 6737db3545aSMaxime Ripard snps,priority = <0x0>; 6747db3545aSMaxime Ripard }; 6757db3545aSMaxime Ripard }; 6767db3545aSMaxime Ripard 6777db3545aSMaxime Ripard mtl_tx_setup: tx-queues-config { 6787db3545aSMaxime Ripard snps,tx-queues-to-use = <2>; 6797db3545aSMaxime Ripard snps,tx-sched-wrr; 6807db3545aSMaxime Ripard queue0 { 6817db3545aSMaxime Ripard snps,weight = <0x10>; 6827db3545aSMaxime Ripard snps,dcb-algorithm; 6837db3545aSMaxime Ripard snps,priority = <0x0>; 6847db3545aSMaxime Ripard }; 6857db3545aSMaxime Ripard 6867db3545aSMaxime Ripard queue1 { 6877db3545aSMaxime Ripard snps,avb-algorithm; 6887db3545aSMaxime Ripard snps,send_slope = <0x1000>; 6897db3545aSMaxime Ripard snps,idle_slope = <0x1000>; 6907db3545aSMaxime Ripard snps,high_credit = <0x3E800>; 6917db3545aSMaxime Ripard snps,low_credit = <0xFFC18000>; 6927db3545aSMaxime Ripard snps,priority = <0x1>; 6937db3545aSMaxime Ripard }; 6947db3545aSMaxime Ripard }; 6957db3545aSMaxime Ripard 6967db3545aSMaxime Ripard mdio0 { 6977db3545aSMaxime Ripard #address-cells = <1>; 6987db3545aSMaxime Ripard #size-cells = <0>; 6997db3545aSMaxime Ripard compatible = "snps,dwmac-mdio"; 7007db3545aSMaxime Ripard phy1: ethernet-phy@0 { 7017db3545aSMaxime Ripard reg = <0>; 7027db3545aSMaxime Ripard }; 7037db3545aSMaxime Ripard }; 7047db3545aSMaxime Ripard }; 7057db3545aSMaxime Ripard 7067db3545aSMaxime Ripard# FIXME: We should set it, but it would report all the generic 7077db3545aSMaxime Ripard# properties as additional properties. 7087db3545aSMaxime Ripard# additionalProperties: false 7097db3545aSMaxime Ripard 7107db3545aSMaxime Ripard... 711