net: stmmac: Do not request stmmaceth clock
authorThierry Reding <treding@nvidia.com>
Fri, 26 Jul 2019 10:27:41 +0000 (12:27 +0200)
committerDavid S. Miller <davem@davemloft.net>
Sat, 27 Jul 2019 20:52:26 +0000 (13:52 -0700)
The stmmaceth clock is specified by the slave_bus and apb_pclk clocks in
the device tree bindings for snps,dwc-qos-ethernet-4.10 compatible nodes
of this IP.

The subdrivers for these bindings will be requesting the stmmac clock
correctly at a later point, so there is no need to request it here and
cause an error message to be printed to the kernel log.

Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c

index 333b09564b885ae2df415d82b0c10192df54d501..7ad2bb90ceb140c670225b153b45d5c7f4e29ba3 100644 (file)
@@ -521,13 +521,15 @@ stmmac_probe_config_dt(struct platform_device *pdev, const char **mac)
        }
 
        /* clock setup */
-       plat->stmmac_clk = devm_clk_get(&pdev->dev,
-                                       STMMAC_RESOURCE_NAME);
-       if (IS_ERR(plat->stmmac_clk)) {
-               dev_warn(&pdev->dev, "Cannot get CSR clock\n");
-               plat->stmmac_clk = NULL;
+       if (!of_device_is_compatible(np, "snps,dwc-qos-ethernet-4.10")) {
+               plat->stmmac_clk = devm_clk_get(&pdev->dev,
+                                               STMMAC_RESOURCE_NAME);
+               if (IS_ERR(plat->stmmac_clk)) {
+                       dev_warn(&pdev->dev, "Cannot get CSR clock\n");
+                       plat->stmmac_clk = NULL;
+               }
+               clk_prepare_enable(plat->stmmac_clk);
        }
-       clk_prepare_enable(plat->stmmac_clk);
 
        plat->pclk = devm_clk_get(&pdev->dev, "pclk");
        if (IS_ERR(plat->pclk)) {