This patchset is the fourth one in the series of updates implemented in the framework of activity to simplify the DW MAC/STMMAC driver code and provide Baikal GMAC/X-GMAC support after all: [1: In-review v1]: net: stmmac: Fixes bundle #1 Link: https://lore.kernel.org/netdev/20230313224237.28757-1-Sergey.Semin@xxxxxxxxxxxxxxxxxxxx/ [2: Stalled v1]: net: stmmac: Fixes bundle #2 Link: ---not submitted yet--- [3: Stalled v1]: net: stmmac: Fixes bundle #3 Link: ---not submitted yet--- +> [4: In-review v1]: dt-bindings: net: dwmac: Extend clocks, props desc and constraints +> Link: ---you are looking at it--- [5: Stalled v1]: dt-bindings: net: dwmac: Fix MTL queues and AXI-bus props Link: ---not submitted yet--- [6: Stalled v1]: net: stmmac: Generic platform res, props and DMA cleanups Link: ---not submitted yet--- [7: Stalled v1]: net: stmmac: Generic platform rst, phy and clk cleanups Link: ---not submitted yet--- [8: Stalled v1]: net: stmmac: Main driver code cleanups bundle #1 Link: ---not submitted yet--- [9: Stalled v1]: net: stmmac: Main driver code cleanups bundle #2 Link: ---not submitted yet--- [10: Stalled v1]: net: stmmac: DW MAC HW info init refactoring Link: ---not submitted yet--- [11: Stalled v1]: net: stmmac: Convert to using HW capabilities bundle #1 Link: ---not submitted yet--- [12: Stalled v1]: net: stmmac: Convert to using HW capabilities bundle #2 Link: ---not submitted yet--- [13: Stalled v1]: net: stmmac: Convert to using HW capabilities bundle #3 Link: ---not submitted yet--- [14: Stalled v1]: net: stmmac: Convert to using HW capabilities bundle #4 Link: ---not submitted yet--- [15: Stalled v1]: net: stmmac: Unify/simplify HW-interface Link: ---not submitted yet--- [16: Stalled v1]: net: stmmac: Norm/Enh/etc DMA descriptor init fixes Link: ---not submitted yet--- [17: Stalled v1]: net: stmmac: Norm/Enh/etc DMA descriptor init cleanups Link: ---not submitted yet--- [18: Stalled v1]: net: stmmac: Main driver code cleanups bundle #3 Link: ---not submitted yet--- [..: In-prep] to be continued (IRQ handling refactoring, SW-reset-less config, generic GPIO support, ARP offload support, In-band RGMII link state, etc) [..: In-prep] to be continued (Baikal-{T,M,L,S} SoCs GMAC, X-GMAC and XPCS support) Please visit the next link for the detailed justification of the changes series introduced in the list above: Link: https://lore.kernel.org/netdev/20230313224237.28757-1-Sergey.Semin@xxxxxxxxxxxxxxxxxxxx/ Here is a short summary of what is introduced in this patchset. The series starts with fixes of the PBL (Programmable DMA Burst length) DT-property, which is supposed to be defined for each DW *MAC IP-core, but not only for a Allwinner sun* and Ingenic GMAC and DW xGMAC. The number of possible PBL values need to be also extended in accordance with the DW *MAC manual. Then the TSO flag property should be also declared free of the vendor-specific conditional schema, because the driver expects the compatible string to have the IP-core version specified anyway and none of the glue-drivers refer to the property directly. Moreover the original Allwinner sunXi bindings file didn't have the TSO-related property declared. So we can freely do that. Then in order to improve the DT-bindings maintainability we suggest to split up the generic DT-properties and generic DT-nodes schema leaving the properties definition in the "snps,dwmac.yaml" file and moving the generic DW *MAC DT-nodes bindings validation in the dedicated DT-schema "snps,dwmac-generic.yaml". We've found out that the DW MAC bindings don't provide a correct description of the System/CSR clocks and a comprehensive enough description of the clock-related "snps,clk-csr" property. So in order to have more descriptive bindings we suggest to add a bit more details about the App/CSR clocks and CSR-MDC divider property. Then seeing the any DW MAC IP-core revision can be equipped with an external Tx/Rx clock sources we suggest to add the "tx"/"rx" clocks declaration into the generic DW MAC DT-schema. Afterwards a set of the AXI-bus config property cleanups are introduced. First we suggest to drop the "snps,axi-config" property description since it duplicates the stmmac-axi-config sub-node DT-bindings. Second the unevaluatedProperties property is replaced with additionalProperties as more suitable for the "stmmac-axi-config" schema. Third the proper constraints are added to the properties of the "stmmac-axi-config" sub-node. Then three patches concerning the MTL Tx/Rx queue configs go, which add the sub-nodes properties constraints and fix the MTL Tx queue properties description. The next patch converts the DW MAC DT-bindings to using the "flag" definition instead of the native boolean type for relevant properties. It's done for the sake of the DT-schema unification. The series is closed with the two patches concerning the MTL queue config properties dependencies. First one provides a simpler construction for the MTL queue properties inter-dependencies. The second one adds the dependencies definition for the MTL Tx queue CBS-algo properties. Signed-off-by: Serge Semin <Sergey.Semin@xxxxxxxxxxxxxxxxxxxx> Cc: Alexey Malahov <Alexey.Malahov@xxxxxxxxxxxxxxxxxxxx> Cc: Pavel Parkhomenko <Pavel.Parkhomenko@xxxxxxxxxxxxxxxxxxxx> Cc: Christian Marangi <ansuelsmth@xxxxxxxxx> Cc: Richard Cochran <richardcochran@xxxxxxxxx> Cc: Biao Huang <biao.huang@xxxxxxxxxxxx> Cc: Yang Yingliang <yangyingliang@xxxxxxxxxx> Cc: devicetree@xxxxxxxxxxxxxxx Cc: netdev@xxxxxxxxxxxxxxx Cc: linux-stm32@xxxxxxxxxxxxxxxxxxxxxxxxxxxx Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx Cc: linux-kernel@xxxxxxxxxxxxxxx Serge Semin (16): dt-bindings: net: dwmac: Validate PBL for all IP-cores dt-bindings: net: dwmac: Extend number of PBL values dt-bindings: net: dwmac: Fix the TSO property declaration dt-bindings: net: dwmac: Detach Generic DW MAC bindings dt-bindings: net: dwmac: Elaborate snps,clk-csr description dt-bindings: net: dwmac: Elaborate stmmaceth/pclk clocks description dt-bindings: net: dwmac: Add Tx/Rx clock sources dt-bindings: net: dwmac: Drop prop names from snps,axi-config description dt-bindings: net: dwmac: Prohibit additional props in AXI-config dt-bindings: net: dwmac: Add AXI-bus properties constraints dt-bindings: net: dwmac: Add MTL Rx Queue properties constraints dt-bindings: net: dwmac: Add MTL Tx Queue properties constraints dt-bindings: net: dwmac: Fix MTL Tx Queue props description dt-bindings: net: dwmac: Use flag definition instead of booleans dt-bindings: net: dwmac: Simplify MTL queue props dependencies dt-bindings: net: dwmac: Add MTL Tx queue CBS-algo props dependencies .../bindings/net/snps,dwmac-generic.yaml | 155 +++++ .../devicetree/bindings/net/snps,dwmac.yaml | 586 +++++++----------- MAINTAINERS | 1 + 3 files changed, 381 insertions(+), 361 deletions(-) create mode 100644 Documentation/devicetree/bindings/net/snps,dwmac-generic.yaml -- 2.39.2