Currently the "snps,axi-config", "snps,mtl-rx-config" and
"snps,mtl-tx-config" DT node properties are marked as deprecated when
being defined as a phandle reference to a node with parameters. The new
way of defining the DW MAC interfaces config is to add sub-nodes to the DW
MAC device DT node with vendor-prefixless names. Make sure the STMMAC
driver supports them.

Signed-off-by: Serge Semin <sergey.se...@baikalelectronics.ru>

---

Changelog v2:
- Discard "snps" vendor-prefix from the new AXI/MTL Tx/Rx config
  sub-nodes.
---
 drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c 
b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
index 6dc9f10414e4..1815fe36b62f 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
@@ -95,7 +95,8 @@ static struct stmmac_axi *stmmac_axi_setup(struct 
platform_device *pdev)
        struct device_node *np;
        struct stmmac_axi *axi;
 
-       np = of_parse_phandle(pdev->dev.of_node, "snps,axi-config", 0);
+       np = of_parse_phandle(pdev->dev.of_node, "snps,axi-config", 0) ?:
+            of_get_child_by_name(pdev->dev.of_node, "axi-config");
        if (!np)
                return NULL;
 
@@ -150,11 +151,13 @@ static int stmmac_mtl_setup(struct platform_device *pdev,
        plat->rx_queues_cfg[0].mode_to_use = MTL_QUEUE_DCB;
        plat->tx_queues_cfg[0].mode_to_use = MTL_QUEUE_DCB;
 
-       rx_node = of_parse_phandle(pdev->dev.of_node, "snps,mtl-rx-config", 0);
+       rx_node = of_parse_phandle(pdev->dev.of_node, "snps,mtl-rx-config", 0) 
?:
+                 of_get_child_by_name(pdev->dev.of_node, "mtl-rx-config");
        if (!rx_node)
                return ret;
 
-       tx_node = of_parse_phandle(pdev->dev.of_node, "snps,mtl-tx-config", 0);
+       tx_node = of_parse_phandle(pdev->dev.of_node, "snps,mtl-tx-config", 0) 
?:
+                 of_get_child_by_name(pdev->dev.of_node, "mtl-tx-config");
        if (!tx_node) {
                of_node_put(rx_node);
                return ret;
-- 
2.29.2

Reply via email to