net: stmmac: Restore DT backwards-compatibility
authorThierry Reding <treding@nvidia.com>
Tue, 21 Mar 2017 15:12:10 +0000 (16:12 +0100)
committerDavid S. Miller <davem@davemloft.net>
Wed, 22 Mar 2017 19:15:15 +0000 (12:15 -0700)
Recent changes to support multiple queues in the device tree bindings
resulted in the number of RX and TX queues to be initialized to zero for
device trees not adhering to the new bindings.

Restore backwards-compatibility with those device trees by falling back
to a single RX and TX queues each.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Acked-By: Joao Pinto <jpinto@synopsys.com>
Tested-by: Corentin Labbe <clabbe.montjoie@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c

index f5c8b1bca002ea8e08c3e22a859c38d46b12c3b1..7fc3a1ef395ab2e99060355d1c47e5b5f1f9d9f1 100644 (file)
@@ -143,6 +143,13 @@ static void stmmac_mtl_setup(struct platform_device *pdev,
        struct device_node *tx_node;
        u8 queue = 0;
 
+       /* For backwards-compatibility with device trees that don't have any
+        * snps,mtl-rx-config or snps,mtl-tx-config properties, we fall back
+        * to one RX and TX queues each.
+        */
+       plat->rx_queues_to_use = 1;
+       plat->tx_queues_to_use = 1;
+
        rx_node = of_parse_phandle(pdev->dev.of_node, "snps,mtl-rx-config", 0);
        if (!rx_node)
                return;