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 98b76eaf7dSYanhong Wang - starfive,jh7110-dwmac 997db3545aSMaxime Ripard 1007db3545aSMaxime Ripard reg: 10157b77df7SNeil Armstrong minItems: 1 10257b77df7SNeil Armstrong maxItems: 2 1037db3545aSMaxime Ripard 1047db3545aSMaxime Ripard interrupts: 1057db3545aSMaxime Ripard minItems: 1 1067db3545aSMaxime Ripard items: 1077db3545aSMaxime Ripard - description: Combined signal for various interrupt events 1087db3545aSMaxime Ripard - description: The interrupt to manage the remote wake-up packet detection 1097db3545aSMaxime Ripard - description: The interrupt that occurs when Rx exits the LPI state 1107db3545aSMaxime Ripard 1117db3545aSMaxime Ripard interrupt-names: 1127db3545aSMaxime Ripard minItems: 1 1137db3545aSMaxime Ripard items: 1147db3545aSMaxime Ripard - const: macirq 115d554ba0eSBhupesh Sharma - enum: [eth_wake_irq, eth_lpi] 1167db3545aSMaxime Ripard - const: eth_lpi 1177db3545aSMaxime Ripard 1187db3545aSMaxime Ripard clocks: 1197db3545aSMaxime Ripard minItems: 1 120517a882aSEzequiel Garcia maxItems: 8 121f2253143SChristophe Roullier additionalItems: true 1227db3545aSMaxime Ripard items: 1237db3545aSMaxime Ripard - description: GMAC main clock 1247db3545aSMaxime Ripard - description: Peripheral registers interface clock 1257db3545aSMaxime Ripard - description: 1267db3545aSMaxime Ripard PTP reference clock. This clock is used for programming the 1277db3545aSMaxime Ripard Timestamp Addend Register. If not passed then the system 1287db3545aSMaxime Ripard clock will be used and this is fine on some platforms. 1297db3545aSMaxime Ripard 1307db3545aSMaxime Ripard clock-names: 131f2253143SChristophe Roullier minItems: 1 132517a882aSEzequiel Garcia maxItems: 8 1337db3545aSMaxime Ripard additionalItems: true 1347db3545aSMaxime Ripard contains: 1357db3545aSMaxime Ripard enum: 1367db3545aSMaxime Ripard - stmmaceth 1377db3545aSMaxime Ripard - pclk 1387db3545aSMaxime Ripard - ptp_ref 1397db3545aSMaxime Ripard 1407db3545aSMaxime Ripard resets: 141843f6037SSamin Guo minItems: 1 142843f6037SSamin Guo items: 143843f6037SSamin Guo - description: GMAC stmmaceth reset 144843f6037SSamin Guo - description: AHB reset 1457db3545aSMaxime Ripard 1467db3545aSMaxime Ripard reset-names: 147843f6037SSamin Guo minItems: 1 148843f6037SSamin Guo items: 149843f6037SSamin Guo - const: stmmaceth 150843f6037SSamin Guo - const: ahb 1517db3545aSMaxime Ripard 152955fe312SClément Léger power-domains: 153955fe312SClément Léger maxItems: 1 154955fe312SClément Léger 1559c15d359SAlexandru Ardelean mac-mode: 1569e5c8d39SAlexandru Ardelean $ref: ethernet-controller.yaml#/properties/phy-connection-type 1579c15d359SAlexandru Ardelean description: 1589c15d359SAlexandru Ardelean The property is identical to 'phy-mode', and assumes that there is mode 1599c15d359SAlexandru Ardelean converter in-between the MAC & PHY (e.g. GMII-to-RGMII). This converter 1609c15d359SAlexandru Ardelean can be passive (no SW requirement), and requires that the MAC operate 1619c15d359SAlexandru Ardelean in a different mode than the PHY in order to function. 1629c15d359SAlexandru Ardelean 1637db3545aSMaxime Ripard snps,axi-config: 164d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/phandle 1657db3545aSMaxime Ripard description: 1667db3545aSMaxime Ripard AXI BUS Mode parameters. Phandle to a node that can contain the 1677db3545aSMaxime Ripard following properties 1687db3545aSMaxime Ripard * snps,lpi_en, enable Low Power Interface 1697db3545aSMaxime Ripard * snps,xit_frm, unlock on WoL 1707db3545aSMaxime Ripard * snps,wr_osr_lmt, max write outstanding req. limit 1717db3545aSMaxime Ripard * snps,rd_osr_lmt, max read outstanding req. limit 1727db3545aSMaxime Ripard * snps,kbbe, do not cross 1KiB boundary. 1737db3545aSMaxime Ripard * snps,blen, this is a vector of supported burst length. 1747db3545aSMaxime Ripard * snps,fb, fixed-burst 1757db3545aSMaxime Ripard * snps,mb, mixed-burst 1767db3545aSMaxime Ripard * snps,rb, rebuild INCRx Burst 1777db3545aSMaxime Ripard 1787db3545aSMaxime Ripard snps,mtl-rx-config: 179d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/phandle 1807db3545aSMaxime Ripard description: 1818fc4deaaSSebastian Reichel Multiple RX Queues parameters. Phandle to a node that 1828fc4deaaSSebastian Reichel implements the 'rx-queues-config' object described in 1838fc4deaaSSebastian Reichel this binding. 1848fc4deaaSSebastian Reichel 1858fc4deaaSSebastian Reichel rx-queues-config: 1868fc4deaaSSebastian Reichel type: object 1878fc4deaaSSebastian Reichel properties: 1888fc4deaaSSebastian Reichel snps,rx-queues-to-use: 1898fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 1908fc4deaaSSebastian Reichel description: number of RX queues to be used in the driver 1918fc4deaaSSebastian Reichel snps,rx-sched-sp: 1928fc4deaaSSebastian Reichel type: boolean 1938fc4deaaSSebastian Reichel description: Strict priority 1948fc4deaaSSebastian Reichel snps,rx-sched-wsp: 1958fc4deaaSSebastian Reichel type: boolean 1968fc4deaaSSebastian Reichel description: Weighted Strict priority 1978fc4deaaSSebastian Reichel allOf: 1988fc4deaaSSebastian Reichel - if: 1998fc4deaaSSebastian Reichel required: 2008fc4deaaSSebastian Reichel - snps,rx-sched-sp 2018fc4deaaSSebastian Reichel then: 2028fc4deaaSSebastian Reichel properties: 2038fc4deaaSSebastian Reichel snps,rx-sched-wsp: false 2048fc4deaaSSebastian Reichel - if: 2058fc4deaaSSebastian Reichel required: 2068fc4deaaSSebastian Reichel - snps,rx-sched-wsp 2078fc4deaaSSebastian Reichel then: 2088fc4deaaSSebastian Reichel properties: 2098fc4deaaSSebastian Reichel snps,rx-sched-sp: false 2108fc4deaaSSebastian Reichel patternProperties: 2118fc4deaaSSebastian Reichel "^queue[0-9]$": 2128fc4deaaSSebastian Reichel description: Each subnode represents a queue. 2138fc4deaaSSebastian Reichel type: object 2148fc4deaaSSebastian Reichel properties: 2158fc4deaaSSebastian Reichel snps,dcb-algorithm: 2168fc4deaaSSebastian Reichel type: boolean 2178fc4deaaSSebastian Reichel description: Queue to be enabled as DCB 2188fc4deaaSSebastian Reichel snps,avb-algorithm: 2198fc4deaaSSebastian Reichel type: boolean 2208fc4deaaSSebastian Reichel description: Queue to be enabled as AVB 2218fc4deaaSSebastian Reichel snps,map-to-dma-channel: 2228fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 2238fc4deaaSSebastian Reichel description: DMA channel id to map 2248fc4deaaSSebastian Reichel snps,route-avcp: 2258fc4deaaSSebastian Reichel type: boolean 2268fc4deaaSSebastian Reichel description: AV Untagged Control packets 2278fc4deaaSSebastian Reichel snps,route-ptp: 2288fc4deaaSSebastian Reichel type: boolean 2298fc4deaaSSebastian Reichel description: PTP Packets 2308fc4deaaSSebastian Reichel snps,route-dcbcp: 2318fc4deaaSSebastian Reichel type: boolean 2328fc4deaaSSebastian Reichel description: DCB Control Packets 2338fc4deaaSSebastian Reichel snps,route-up: 2348fc4deaaSSebastian Reichel type: boolean 2358fc4deaaSSebastian Reichel description: Untagged Packets 2368fc4deaaSSebastian Reichel snps,route-multi-broad: 2378fc4deaaSSebastian Reichel type: boolean 2388fc4deaaSSebastian Reichel description: Multicast & Broadcast Packets 2398fc4deaaSSebastian Reichel snps,priority: 2408fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 2418fc4deaaSSebastian Reichel description: Bitmask of the tagged frames priorities assigned to the queue 2428fc4deaaSSebastian Reichel allOf: 2438fc4deaaSSebastian Reichel - if: 2448fc4deaaSSebastian Reichel required: 2458fc4deaaSSebastian Reichel - snps,dcb-algorithm 2468fc4deaaSSebastian Reichel then: 2478fc4deaaSSebastian Reichel properties: 2488fc4deaaSSebastian Reichel snps,avb-algorithm: false 2498fc4deaaSSebastian Reichel - if: 2508fc4deaaSSebastian Reichel required: 2518fc4deaaSSebastian Reichel - snps,avb-algorithm 2528fc4deaaSSebastian Reichel then: 2538fc4deaaSSebastian Reichel properties: 2548fc4deaaSSebastian Reichel snps,dcb-algorithm: false 2558fc4deaaSSebastian Reichel - if: 2568fc4deaaSSebastian Reichel required: 2578fc4deaaSSebastian Reichel - snps,route-avcp 2588fc4deaaSSebastian Reichel then: 2598fc4deaaSSebastian Reichel properties: 2608fc4deaaSSebastian Reichel snps,route-ptp: false 2618fc4deaaSSebastian Reichel snps,route-dcbcp: false 2628fc4deaaSSebastian Reichel snps,route-up: false 2638fc4deaaSSebastian Reichel snps,route-multi-broad: false 2648fc4deaaSSebastian Reichel - if: 2658fc4deaaSSebastian Reichel required: 2668fc4deaaSSebastian Reichel - snps,route-ptp 2678fc4deaaSSebastian Reichel then: 2688fc4deaaSSebastian Reichel properties: 2698fc4deaaSSebastian Reichel snps,route-avcp: false 2708fc4deaaSSebastian Reichel snps,route-dcbcp: false 2718fc4deaaSSebastian Reichel snps,route-up: false 2728fc4deaaSSebastian Reichel snps,route-multi-broad: false 2738fc4deaaSSebastian Reichel - if: 2748fc4deaaSSebastian Reichel required: 2758fc4deaaSSebastian Reichel - snps,route-dcbcp 2768fc4deaaSSebastian Reichel then: 2778fc4deaaSSebastian Reichel properties: 2788fc4deaaSSebastian Reichel snps,route-avcp: false 2798fc4deaaSSebastian Reichel snps,route-ptp: false 2808fc4deaaSSebastian Reichel snps,route-up: false 2818fc4deaaSSebastian Reichel snps,route-multi-broad: false 2828fc4deaaSSebastian Reichel - if: 2838fc4deaaSSebastian Reichel required: 2848fc4deaaSSebastian Reichel - snps,route-up 2858fc4deaaSSebastian Reichel then: 2868fc4deaaSSebastian Reichel properties: 2878fc4deaaSSebastian Reichel snps,route-avcp: false 2888fc4deaaSSebastian Reichel snps,route-ptp: false 2898fc4deaaSSebastian Reichel snps,route-dcbcp: false 2908fc4deaaSSebastian Reichel snps,route-multi-broad: false 2918fc4deaaSSebastian Reichel - if: 2928fc4deaaSSebastian Reichel required: 2938fc4deaaSSebastian Reichel - snps,route-multi-broad 2948fc4deaaSSebastian Reichel then: 2958fc4deaaSSebastian Reichel properties: 2968fc4deaaSSebastian Reichel snps,route-avcp: false 2978fc4deaaSSebastian Reichel snps,route-ptp: false 2988fc4deaaSSebastian Reichel snps,route-dcbcp: false 2998fc4deaaSSebastian Reichel snps,route-up: false 3008fc4deaaSSebastian Reichel additionalProperties: false 3018fc4deaaSSebastian Reichel additionalProperties: false 3027db3545aSMaxime Ripard 3037db3545aSMaxime Ripard snps,mtl-tx-config: 304d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/phandle 3057db3545aSMaxime Ripard description: 3068fc4deaaSSebastian Reichel Multiple TX Queues parameters. Phandle to a node that 3078fc4deaaSSebastian Reichel implements the 'tx-queues-config' object described in 3088fc4deaaSSebastian Reichel this binding. 3098fc4deaaSSebastian Reichel 3108fc4deaaSSebastian Reichel tx-queues-config: 3118fc4deaaSSebastian Reichel type: object 3128fc4deaaSSebastian Reichel properties: 3138fc4deaaSSebastian Reichel snps,tx-queues-to-use: 3148fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3158fc4deaaSSebastian Reichel description: number of TX queues to be used in the driver 3168fc4deaaSSebastian Reichel snps,tx-sched-wrr: 3178fc4deaaSSebastian Reichel type: boolean 3188fc4deaaSSebastian Reichel description: Weighted Round Robin 3198fc4deaaSSebastian Reichel snps,tx-sched-wfq: 3208fc4deaaSSebastian Reichel type: boolean 3218fc4deaaSSebastian Reichel description: Weighted Fair Queuing 3228fc4deaaSSebastian Reichel snps,tx-sched-dwrr: 3238fc4deaaSSebastian Reichel type: boolean 3248fc4deaaSSebastian Reichel description: Deficit Weighted Round Robin 3258fc4deaaSSebastian Reichel snps,tx-sched-sp: 3268fc4deaaSSebastian Reichel type: boolean 3278fc4deaaSSebastian Reichel description: Strict priority 3288fc4deaaSSebastian Reichel allOf: 3298fc4deaaSSebastian Reichel - if: 3308fc4deaaSSebastian Reichel required: 3318fc4deaaSSebastian Reichel - snps,tx-sched-wrr 3328fc4deaaSSebastian Reichel then: 3338fc4deaaSSebastian Reichel properties: 3348fc4deaaSSebastian Reichel snps,tx-sched-wfq: false 3358fc4deaaSSebastian Reichel snps,tx-sched-dwrr: false 3368fc4deaaSSebastian Reichel snps,tx-sched-sp: false 3378fc4deaaSSebastian Reichel - if: 3388fc4deaaSSebastian Reichel required: 3398fc4deaaSSebastian Reichel - snps,tx-sched-wfq 3408fc4deaaSSebastian Reichel then: 3418fc4deaaSSebastian Reichel properties: 3428fc4deaaSSebastian Reichel snps,tx-sched-wrr: false 3438fc4deaaSSebastian Reichel snps,tx-sched-dwrr: false 3448fc4deaaSSebastian Reichel snps,tx-sched-sp: false 3458fc4deaaSSebastian Reichel - if: 3468fc4deaaSSebastian Reichel required: 3478fc4deaaSSebastian Reichel - snps,tx-sched-dwrr 3488fc4deaaSSebastian Reichel then: 3498fc4deaaSSebastian Reichel properties: 3508fc4deaaSSebastian Reichel snps,tx-sched-wrr: false 3518fc4deaaSSebastian Reichel snps,tx-sched-wfq: false 3528fc4deaaSSebastian Reichel snps,tx-sched-sp: false 3538fc4deaaSSebastian Reichel - if: 3548fc4deaaSSebastian Reichel required: 3558fc4deaaSSebastian Reichel - snps,tx-sched-sp 3568fc4deaaSSebastian Reichel then: 3578fc4deaaSSebastian Reichel properties: 3588fc4deaaSSebastian Reichel snps,tx-sched-wrr: false 3598fc4deaaSSebastian Reichel snps,tx-sched-wfq: false 3608fc4deaaSSebastian Reichel snps,tx-sched-dwrr: false 3618fc4deaaSSebastian Reichel patternProperties: 3628fc4deaaSSebastian Reichel "^queue[0-9]$": 3638fc4deaaSSebastian Reichel description: Each subnode represents a queue. 3648fc4deaaSSebastian Reichel type: object 3658fc4deaaSSebastian Reichel properties: 3668fc4deaaSSebastian Reichel snps,weight: 3678fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3688fc4deaaSSebastian Reichel description: TX queue weight (if using a DCB weight algorithm) 3698fc4deaaSSebastian Reichel snps,dcb-algorithm: 3708fc4deaaSSebastian Reichel type: boolean 3718fc4deaaSSebastian Reichel description: TX queue will be working in DCB 3728fc4deaaSSebastian Reichel snps,avb-algorithm: 3738fc4deaaSSebastian Reichel type: boolean 3748fc4deaaSSebastian Reichel description: 3758fc4deaaSSebastian Reichel TX queue will be working in AVB. 3768fc4deaaSSebastian Reichel Queue 0 is reserved for legacy traffic and so no AVB is 3778fc4deaaSSebastian Reichel available in this queue. 3788fc4deaaSSebastian Reichel snps,send_slope: 3798fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3808fc4deaaSSebastian Reichel description: enable Low Power Interface 3818fc4deaaSSebastian Reichel snps,idle_slope: 3828fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3838fc4deaaSSebastian Reichel description: unlock on WoL 3848fc4deaaSSebastian Reichel snps,high_credit: 3858fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3868fc4deaaSSebastian Reichel description: max write outstanding req. limit 3878fc4deaaSSebastian Reichel snps,low_credit: 3888fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3898fc4deaaSSebastian Reichel description: max read outstanding req. limit 3908fc4deaaSSebastian Reichel snps,priority: 3918fc4deaaSSebastian Reichel $ref: /schemas/types.yaml#/definitions/uint32 3928fc4deaaSSebastian Reichel description: 3938fc4deaaSSebastian Reichel Bitmask of the tagged frames priorities assigned to the queue. 39493828834SSeb Laveze When a PFC frame is received with priorities matching the bitmask, 39593828834SSeb Laveze the queue is blocked from transmitting for the pause time specified 39693828834SSeb Laveze in the PFC frame. 397*364366f5SRohan G Thomas 398*364366f5SRohan G Thomas snps,coe-unsupported: 399*364366f5SRohan G Thomas type: boolean 400*364366f5SRohan G Thomas description: TX checksum offload is unsupported by the TX queue. 401*364366f5SRohan G Thomas 4028fc4deaaSSebastian Reichel allOf: 4038fc4deaaSSebastian Reichel - if: 4048fc4deaaSSebastian Reichel required: 4058fc4deaaSSebastian Reichel - snps,dcb-algorithm 4068fc4deaaSSebastian Reichel then: 4078fc4deaaSSebastian Reichel properties: 4088fc4deaaSSebastian Reichel snps,avb-algorithm: false 4098fc4deaaSSebastian Reichel - if: 4108fc4deaaSSebastian Reichel required: 4118fc4deaaSSebastian Reichel - snps,avb-algorithm 4128fc4deaaSSebastian Reichel then: 4138fc4deaaSSebastian Reichel properties: 4148fc4deaaSSebastian Reichel snps,dcb-algorithm: false 4158fc4deaaSSebastian Reichel snps,weight: false 4168fc4deaaSSebastian Reichel additionalProperties: false 4178fc4deaaSSebastian Reichel additionalProperties: false 4187db3545aSMaxime Ripard 4197db3545aSMaxime Ripard snps,reset-gpio: 420f80b1dfcSMaxime Ripard deprecated: true 4217db3545aSMaxime Ripard maxItems: 1 4227db3545aSMaxime Ripard description: 4237db3545aSMaxime Ripard PHY Reset GPIO 4247db3545aSMaxime Ripard 4257db3545aSMaxime Ripard snps,reset-active-low: 426f80b1dfcSMaxime Ripard deprecated: true 427d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4287db3545aSMaxime Ripard description: 4297db3545aSMaxime Ripard Indicates that the PHY Reset is active low 4307db3545aSMaxime Ripard 4317db3545aSMaxime Ripard snps,reset-delays-us: 432f80b1dfcSMaxime Ripard deprecated: true 4337db3545aSMaxime Ripard description: 4347db3545aSMaxime Ripard Triplet of delays. The 1st cell is reset pre-delay in micro 4357db3545aSMaxime Ripard seconds. The 2nd cell is reset pulse in micro seconds. The 3rd 4367db3545aSMaxime Ripard cell is reset post-delay in micro seconds. 4373d21a460SRob Herring minItems: 3 4383d21a460SRob Herring maxItems: 3 4397db3545aSMaxime Ripard 4407db3545aSMaxime Ripard snps,aal: 441d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4427db3545aSMaxime Ripard description: 4437db3545aSMaxime Ripard Use Address-Aligned Beats 4447db3545aSMaxime Ripard 4457db3545aSMaxime Ripard snps,fixed-burst: 446d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4477db3545aSMaxime Ripard description: 4487db3545aSMaxime Ripard Program the DMA to use the fixed burst mode 4497db3545aSMaxime Ripard 4507db3545aSMaxime Ripard snps,mixed-burst: 451d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4527db3545aSMaxime Ripard description: 4537db3545aSMaxime Ripard Program the DMA to use the mixed burst mode 4547db3545aSMaxime Ripard 4557db3545aSMaxime Ripard snps,force_thresh_dma_mode: 456d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4577db3545aSMaxime Ripard description: 4587db3545aSMaxime Ripard Force DMA to use the threshold mode for both tx and rx 4597db3545aSMaxime Ripard 4607db3545aSMaxime Ripard snps,force_sf_dma_mode: 461d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4627db3545aSMaxime Ripard description: 4637db3545aSMaxime Ripard Force DMA to use the Store and Forward mode for both tx and 4647db3545aSMaxime Ripard rx. This flag is ignored if force_thresh_dma_mode is set. 4657db3545aSMaxime Ripard 4667db3545aSMaxime Ripard snps,en-tx-lpi-clockgating: 467d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 4687db3545aSMaxime Ripard description: 4697db3545aSMaxime Ripard Enable gating of the MAC TX clock during TX low-power mode 4707db3545aSMaxime Ripard 4717db3545aSMaxime Ripard snps,multicast-filter-bins: 472d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/uint32 4737db3545aSMaxime Ripard description: 4747db3545aSMaxime Ripard Number of multicast filter hash bins supported by this device 4757db3545aSMaxime Ripard instance 4767db3545aSMaxime Ripard 4777db3545aSMaxime Ripard snps,perfect-filter-entries: 478d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/uint32 4797db3545aSMaxime Ripard description: 4807db3545aSMaxime Ripard Number of perfect filter entries supported by this device 4817db3545aSMaxime Ripard instance 4827db3545aSMaxime Ripard 4837db3545aSMaxime Ripard snps,ps-speed: 484d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/uint32 4857db3545aSMaxime Ripard description: 4867db3545aSMaxime Ripard Port selection speed that can be passed to the core when PCS 4877db3545aSMaxime Ripard is supported. For example, this is used in case of SGMII and 4887db3545aSMaxime Ripard MAC2MAC connection. 4897db3545aSMaxime Ripard 49022ba1afdSJianguo Zhang snps,clk-csr: 49122ba1afdSJianguo Zhang $ref: /schemas/types.yaml#/definitions/uint32 49222ba1afdSJianguo Zhang description: 49322ba1afdSJianguo Zhang Frequency division factor for MDC clock. 49422ba1afdSJianguo Zhang 4957db3545aSMaxime Ripard mdio: 496b2d28642SRob Herring $ref: mdio.yaml# 497b2d28642SRob Herring unevaluatedProperties: false 4987db3545aSMaxime Ripard description: 4997db3545aSMaxime Ripard Creates and registers an MDIO bus. 5007db3545aSMaxime Ripard 5017db3545aSMaxime Ripard properties: 5027db3545aSMaxime Ripard compatible: 5037db3545aSMaxime Ripard const: snps,dwmac-mdio 5047db3545aSMaxime Ripard 5057db3545aSMaxime Ripard required: 5067db3545aSMaxime Ripard - compatible 5077db3545aSMaxime Ripard 5085361660aSMarek Vasut stmmac-axi-config: 5095361660aSMarek Vasut type: object 5105361660aSMarek Vasut unevaluatedProperties: false 5115361660aSMarek Vasut description: 5125361660aSMarek Vasut AXI BUS Mode parameters. 5135361660aSMarek Vasut 5145361660aSMarek Vasut properties: 5155361660aSMarek Vasut snps,lpi_en: 5165361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/flag 5175361660aSMarek Vasut description: 5185361660aSMarek Vasut enable Low Power Interface 5195361660aSMarek Vasut 5205361660aSMarek Vasut snps,xit_frm: 5215361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/flag 5225361660aSMarek Vasut description: 5235361660aSMarek Vasut unlock on WoL 5245361660aSMarek Vasut 5255361660aSMarek Vasut snps,wr_osr_lmt: 5265361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/uint32 5275361660aSMarek Vasut description: 5285361660aSMarek Vasut max write outstanding req. limit 5295361660aSMarek Vasut 5305361660aSMarek Vasut snps,rd_osr_lmt: 5315361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/uint32 5325361660aSMarek Vasut description: 5335361660aSMarek Vasut max read outstanding req. limit 5345361660aSMarek Vasut 5355361660aSMarek Vasut snps,kbbe: 5365361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/uint32 5375361660aSMarek Vasut description: 5385361660aSMarek Vasut do not cross 1KiB boundary. 5395361660aSMarek Vasut 5405361660aSMarek Vasut snps,blen: 5415361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/uint32-array 5425361660aSMarek Vasut description: 5435361660aSMarek Vasut this is a vector of supported burst length. 5445361660aSMarek Vasut minItems: 7 5455361660aSMarek Vasut maxItems: 7 5465361660aSMarek Vasut 5475361660aSMarek Vasut snps,fb: 5485361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/flag 5495361660aSMarek Vasut description: 5505361660aSMarek Vasut fixed-burst 5515361660aSMarek Vasut 5525361660aSMarek Vasut snps,mb: 5535361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/flag 5545361660aSMarek Vasut description: 5555361660aSMarek Vasut mixed-burst 5565361660aSMarek Vasut 5575361660aSMarek Vasut snps,rb: 5585361660aSMarek Vasut $ref: /schemas/types.yaml#/definitions/flag 5595361660aSMarek Vasut description: 5605361660aSMarek Vasut rebuild INCRx Burst 5615361660aSMarek Vasut 5627db3545aSMaxime Ripardrequired: 5637db3545aSMaxime Ripard - compatible 5647db3545aSMaxime Ripard - reg 5657db3545aSMaxime Ripard - interrupts 5667db3545aSMaxime Ripard - interrupt-names 56767d0da99SMaxime Ripard - phy-mode 5687db3545aSMaxime Ripard 5697db3545aSMaxime Riparddependencies: 5707db3545aSMaxime Ripard snps,reset-active-low: ["snps,reset-gpio"] 571affb6a3fSAndrew Halaney snps,reset-delays-us: ["snps,reset-gpio"] 5727db3545aSMaxime Ripard 5737db3545aSMaxime RipardallOf: 5743079bfdbSRob Herring - $ref: ethernet-controller.yaml# 5757db3545aSMaxime Ripard - if: 5767db3545aSMaxime Ripard properties: 5777db3545aSMaxime Ripard compatible: 5787db3545aSMaxime Ripard contains: 5797db3545aSMaxime Ripard enum: 5804b859450SMaxime Ripard - allwinner,sun7i-a20-gmac 5810569929dSMaxime Ripard - allwinner,sun8i-a83t-emac 5820569929dSMaxime Ripard - allwinner,sun8i-h3-emac 583b33be51cSMaxime Ripard - allwinner,sun8i-r40-gmac 5840569929dSMaxime Ripard - allwinner,sun8i-v3s-emac 5850569929dSMaxime Ripard - allwinner,sun50i-a64-emac 5863b840106S周琰杰 (Zhou Yanjie) - ingenic,jz4775-mac 5873b840106S周琰杰 (Zhou Yanjie) - ingenic,x1000-mac 5883b840106S周琰杰 (Zhou Yanjie) - ingenic,x1600-mac 5893b840106S周琰杰 (Zhou Yanjie) - ingenic,x1830-mac 5903b840106S周琰杰 (Zhou Yanjie) - ingenic,x2000-mac 591d0e3d29fSBartosz Golaszewski - qcom,sa8775p-ethqos 59225926a70SAndrew Halaney - qcom,sc8280xp-ethqos 5931d01efafSRob Herring - snps,dwmac-3.50a 5941d01efafSRob Herring - snps,dwmac-4.10a 5951d01efafSRob Herring - snps,dwmac-4.20a 59613f93511SEmil Renner Berthing - snps,dwmac-5.20 5977db3545aSMaxime Ripard - snps,dwxgmac 5987db3545aSMaxime Ripard - snps,dwxgmac-2.10 5997db3545aSMaxime Ripard - st,spear600-gmac 6007db3545aSMaxime Ripard 6017db3545aSMaxime Ripard then: 6027db3545aSMaxime Ripard properties: 6037db3545aSMaxime Ripard snps,pbl: 6047db3545aSMaxime Ripard description: 6057db3545aSMaxime Ripard Programmable Burst Length (tx and rx) 606d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/uint32 60709a2fb41SBiao Huang enum: [1, 2, 4, 8, 16, 32] 6087db3545aSMaxime Ripard 6097db3545aSMaxime Ripard snps,txpbl: 6107db3545aSMaxime Ripard description: 6117db3545aSMaxime Ripard Tx Programmable Burst Length. If set, DMA tx will use this 6127db3545aSMaxime Ripard value rather than snps,pbl. 613d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/uint32 61409a2fb41SBiao Huang enum: [1, 2, 4, 8, 16, 32] 6157db3545aSMaxime Ripard 6167db3545aSMaxime Ripard snps,rxpbl: 6177db3545aSMaxime Ripard description: 6187db3545aSMaxime Ripard Rx Programmable Burst Length. If set, DMA rx will use this 6197db3545aSMaxime Ripard value rather than snps,pbl. 620d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/uint32 62109a2fb41SBiao Huang enum: [1, 2, 4, 8, 16, 32] 6227db3545aSMaxime Ripard 6237db3545aSMaxime Ripard snps,no-pbl-x8: 624d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 6257db3545aSMaxime Ripard description: 6267db3545aSMaxime Ripard Don\'t multiply the pbl/txpbl/rxpbl values by 8. For core 6277db3545aSMaxime Ripard rev < 3.50, don\'t multiply the values by 4. 6287db3545aSMaxime Ripard 6297db3545aSMaxime Ripard - if: 6307db3545aSMaxime Ripard properties: 6317db3545aSMaxime Ripard compatible: 6327db3545aSMaxime Ripard contains: 6337db3545aSMaxime Ripard enum: 6344b859450SMaxime Ripard - allwinner,sun7i-a20-gmac 6350569929dSMaxime Ripard - allwinner,sun8i-a83t-emac 6360569929dSMaxime Ripard - allwinner,sun8i-h3-emac 637b33be51cSMaxime Ripard - allwinner,sun8i-r40-gmac 6380569929dSMaxime Ripard - allwinner,sun8i-v3s-emac 6390569929dSMaxime Ripard - allwinner,sun50i-a64-emac 64068277749SQing Zhang - loongson,ls2k-dwmac 64168277749SQing Zhang - loongson,ls7a-dwmac 6423b840106S周琰杰 (Zhou Yanjie) - ingenic,jz4775-mac 6433b840106S周琰杰 (Zhou Yanjie) - ingenic,x1000-mac 6443b840106S周琰杰 (Zhou Yanjie) - ingenic,x1600-mac 6453b840106S周琰杰 (Zhou Yanjie) - ingenic,x1830-mac 6463b840106S周琰杰 (Zhou Yanjie) - ingenic,x2000-mac 647d70c215bSBhupesh Sharma - qcom,qcs404-ethqos 648d0e3d29fSBartosz Golaszewski - qcom,sa8775p-ethqos 64925926a70SAndrew Halaney - qcom,sc8280xp-ethqos 650d70c215bSBhupesh Sharma - qcom,sm8150-ethqos 6517db3545aSMaxime Ripard - snps,dwmac-4.00 6527db3545aSMaxime Ripard - snps,dwmac-4.10a 653f2253143SChristophe Roullier - snps,dwmac-4.20a 654bdad810eSJoakim Zhang - snps,dwmac-5.10a 65513f93511SEmil Renner Berthing - snps,dwmac-5.20 6567db3545aSMaxime Ripard - snps,dwxgmac 6577db3545aSMaxime Ripard - snps,dwxgmac-2.10 6587db3545aSMaxime Ripard - st,spear600-gmac 6597db3545aSMaxime Ripard 6607db3545aSMaxime Ripard then: 661dbce0b65SRob Herring properties: 6627db3545aSMaxime Ripard snps,tso: 663d69c6dddSRob Herring $ref: /schemas/types.yaml#/definitions/flag 6647db3545aSMaxime Ripard description: 6657db3545aSMaxime Ripard Enables the TSO feature otherwise it will be managed by 6667db3545aSMaxime Ripard MAC HW capability register. 6677db3545aSMaxime Ripard 6686a0e321eSRob HerringadditionalProperties: true 6696a0e321eSRob Herring 6707db3545aSMaxime Ripardexamples: 6717db3545aSMaxime Ripard - | 6728fc4deaaSSebastian Reichel gmac0: ethernet@e0800000 { 6738fc4deaaSSebastian Reichel compatible = "snps,dwxgmac-2.10", "snps,dwxgmac"; 6748fc4deaaSSebastian Reichel reg = <0xe0800000 0x8000>; 6758fc4deaaSSebastian Reichel interrupt-parent = <&vic1>; 6768fc4deaaSSebastian Reichel interrupts = <24 23 22>; 6778fc4deaaSSebastian Reichel interrupt-names = "macirq", "eth_wake_irq", "eth_lpi"; 6788fc4deaaSSebastian Reichel mac-address = [000000000000]; /* Filled in by U-Boot */ 6798fc4deaaSSebastian Reichel max-frame-size = <3800>; 6808fc4deaaSSebastian Reichel phy-mode = "gmii"; 6818fc4deaaSSebastian Reichel snps,multicast-filter-bins = <256>; 6828fc4deaaSSebastian Reichel snps,perfect-filter-entries = <128>; 6838fc4deaaSSebastian Reichel rx-fifo-depth = <16384>; 6848fc4deaaSSebastian Reichel tx-fifo-depth = <16384>; 6858fc4deaaSSebastian Reichel clocks = <&clock>; 6868fc4deaaSSebastian Reichel clock-names = "stmmaceth"; 6878fc4deaaSSebastian Reichel snps,axi-config = <&stmmac_axi_setup>; 6888fc4deaaSSebastian Reichel snps,mtl-rx-config = <&mtl_rx_setup>; 6898fc4deaaSSebastian Reichel snps,mtl-tx-config = <&mtl_tx_setup>; 6908fc4deaaSSebastian Reichel 6917db3545aSMaxime Ripard stmmac_axi_setup: stmmac-axi-config { 6927db3545aSMaxime Ripard snps,wr_osr_lmt = <0xf>; 6937db3545aSMaxime Ripard snps,rd_osr_lmt = <0xf>; 6947db3545aSMaxime Ripard snps,blen = <256 128 64 32 0 0 0>; 6957db3545aSMaxime Ripard }; 6967db3545aSMaxime Ripard 6977db3545aSMaxime Ripard mtl_rx_setup: rx-queues-config { 6987db3545aSMaxime Ripard snps,rx-queues-to-use = <1>; 6997db3545aSMaxime Ripard snps,rx-sched-sp; 7007db3545aSMaxime Ripard queue0 { 7017db3545aSMaxime Ripard snps,dcb-algorithm; 7027db3545aSMaxime Ripard snps,map-to-dma-channel = <0x0>; 7037db3545aSMaxime Ripard snps,priority = <0x0>; 7047db3545aSMaxime Ripard }; 7057db3545aSMaxime Ripard }; 7067db3545aSMaxime Ripard 7077db3545aSMaxime Ripard mtl_tx_setup: tx-queues-config { 7087db3545aSMaxime Ripard snps,tx-queues-to-use = <2>; 7097db3545aSMaxime Ripard snps,tx-sched-wrr; 7107db3545aSMaxime Ripard queue0 { 7117db3545aSMaxime Ripard snps,weight = <0x10>; 7127db3545aSMaxime Ripard snps,dcb-algorithm; 7137db3545aSMaxime Ripard snps,priority = <0x0>; 7147db3545aSMaxime Ripard }; 7157db3545aSMaxime Ripard 7167db3545aSMaxime Ripard queue1 { 7177db3545aSMaxime Ripard snps,avb-algorithm; 7187db3545aSMaxime Ripard snps,send_slope = <0x1000>; 7197db3545aSMaxime Ripard snps,idle_slope = <0x1000>; 7207db3545aSMaxime Ripard snps,high_credit = <0x3E800>; 7217db3545aSMaxime Ripard snps,low_credit = <0xFFC18000>; 7227db3545aSMaxime Ripard snps,priority = <0x1>; 7237db3545aSMaxime Ripard }; 7247db3545aSMaxime Ripard }; 7257db3545aSMaxime Ripard 7267db3545aSMaxime Ripard mdio0 { 7277db3545aSMaxime Ripard #address-cells = <1>; 7287db3545aSMaxime Ripard #size-cells = <0>; 7297db3545aSMaxime Ripard compatible = "snps,dwmac-mdio"; 7307db3545aSMaxime Ripard phy1: ethernet-phy@0 { 7317db3545aSMaxime Ripard reg = <0>; 7327db3545aSMaxime Ripard }; 7337db3545aSMaxime Ripard }; 7347db3545aSMaxime Ripard }; 7357db3545aSMaxime Ripard 7367db3545aSMaxime Ripard# FIXME: We should set it, but it would report all the generic 7377db3545aSMaxime Ripard# properties as additional properties. 7387db3545aSMaxime Ripard# additionalProperties: false 7397db3545aSMaxime Ripard 7407db3545aSMaxime Ripard... 741