summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJosua Mayer <josua@solid-run.com>2019-07-09 15:01:00 +0200
committerDavid S. Miller <davem@davemloft.net>2019-07-09 22:03:04 +0200
commitea664b1bdc19f3884f9d2966b106b3ca8d253426 (patch)
tree6613381ca0122a7aff81be069b65a642c4950cd8
parentnet: mvmdio: allow up to four clocks to be specified for orion-mdio (diff)
downloadlinux-ea664b1bdc19f3884f9d2966b106b3ca8d253426.tar.xz
linux-ea664b1bdc19f3884f9d2966b106b3ca8d253426.zip
net: mvmdio: print warning when orion-mdio has too many clocks
Print a warning when device tree specifies more than the maximum of four clocks supported by orion-mdio. Because reading from mdio can lock up the Armada 8k when a required clock is not initialized, it is important to notify the user when a specified clock is ignored. Signed-off-by: Josua Mayer <josua@solid-run.com> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/marvell/mvmdio.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/ethernet/marvell/mvmdio.c b/drivers/net/ethernet/marvell/mvmdio.c
index e17d563e97a6..eba18065a4da 100644
--- a/drivers/net/ethernet/marvell/mvmdio.c
+++ b/drivers/net/ethernet/marvell/mvmdio.c
@@ -326,6 +326,10 @@ static int orion_mdio_probe(struct platform_device *pdev)
clk_prepare_enable(dev->clk[i]);
}
+ if (!IS_ERR(of_clk_get(pdev->dev.of_node, ARRAY_SIZE(dev->clk))))
+ dev_warn(&pdev->dev, "unsupported number of clocks, limiting to the first "
+ __stringify(ARRAY_SIZE(dev->clk)) "\n");
+
dev->err_interrupt = platform_get_irq(pdev, 0);
if (dev->err_interrupt > 0 &&
resource_size(r) < MVMDIO_ERR_INT_MASK + 4) {