Message ID | 20210317161609.2104738-1-m.tretter@pengutronix.de |
---|---|
State | New |
Headers | show |
Series | net: macb: simplify clk_init with dev_err_probe | expand |
On 17/03/2021 at 17:16, Michael Tretter wrote: > On some platforms, e.g., the ZynqMP, devm_clk_get can return > -EPROBE_DEFER if the clock controller, which is implemented in firmware, > has not been probed yet. > > As clk_init is only called during probe, use dev_err_probe to simplify > the error message and hide it for -EPROBE_DEFER. > > Signed-off-by: Michael Tretter <m.tretter@pengutronix.de> Looks good to me: Acked-by: Nicolas Ferre <nicolas.ferre@microchip.com> Thanks Michael, regards, Nicolas > --- > drivers/net/ethernet/cadence/macb_main.c | 20 +++++++++----------- > 1 file changed, 9 insertions(+), 11 deletions(-) > > diff --git a/drivers/net/ethernet/cadence/macb_main.c b/drivers/net/ethernet/cadence/macb_main.c > index e7c123aadf56..f56f3dbbc015 100644 > --- a/drivers/net/ethernet/cadence/macb_main.c > +++ b/drivers/net/ethernet/cadence/macb_main.c > @@ -3758,17 +3758,15 @@ static int macb_clk_init(struct platform_device *pdev, struct clk **pclk, > *hclk = devm_clk_get(&pdev->dev, "hclk"); > } > > - if (IS_ERR_OR_NULL(*pclk)) { > - err = IS_ERR(*pclk) ? PTR_ERR(*pclk) : -ENODEV; > - dev_err(&pdev->dev, "failed to get macb_clk (%d)\n", err); > - return err; > - } > - > - if (IS_ERR_OR_NULL(*hclk)) { > - err = IS_ERR(*hclk) ? PTR_ERR(*hclk) : -ENODEV; > - dev_err(&pdev->dev, "failed to get hclk (%d)\n", err); > - return err; > - } > + if (IS_ERR_OR_NULL(*pclk)) > + return dev_err_probe(&pdev->dev, > + IS_ERR(*pclk) ? PTR_ERR(*pclk) : -ENODEV, > + "failed to get pclk\n"); > + > + if (IS_ERR_OR_NULL(*hclk)) > + return dev_err_probe(&pdev->dev, > + IS_ERR(*hclk) ? PTR_ERR(*hclk) : -ENODEV, > + "failed to get hclk\n"); > > *tx_clk = devm_clk_get_optional(&pdev->dev, "tx_clk"); > if (IS_ERR(*tx_clk)) > -- > 2.29.2 >
Hello: This patch was applied to netdev/net-next.git (refs/heads/master): On Wed, 17 Mar 2021 17:16:09 +0100 you wrote: > On some platforms, e.g., the ZynqMP, devm_clk_get can return > -EPROBE_DEFER if the clock controller, which is implemented in firmware, > has not been probed yet. > > As clk_init is only called during probe, use dev_err_probe to simplify > the error message and hide it for -EPROBE_DEFER. > > [...] Here is the summary with links: - net: macb: simplify clk_init with dev_err_probe https://git.kernel.org/netdev/net-next/c/a04be4b6b539 You are awesome, thank you! -- Deet-doot-dot, I am a bot. https://korg.docs.kernel.org/patchwork/pwbot.html
diff --git a/drivers/net/ethernet/cadence/macb_main.c b/drivers/net/ethernet/cadence/macb_main.c index e7c123aadf56..f56f3dbbc015 100644 --- a/drivers/net/ethernet/cadence/macb_main.c +++ b/drivers/net/ethernet/cadence/macb_main.c @@ -3758,17 +3758,15 @@ static int macb_clk_init(struct platform_device *pdev, struct clk **pclk, *hclk = devm_clk_get(&pdev->dev, "hclk"); } - if (IS_ERR_OR_NULL(*pclk)) { - err = IS_ERR(*pclk) ? PTR_ERR(*pclk) : -ENODEV; - dev_err(&pdev->dev, "failed to get macb_clk (%d)\n", err); - return err; - } - - if (IS_ERR_OR_NULL(*hclk)) { - err = IS_ERR(*hclk) ? PTR_ERR(*hclk) : -ENODEV; - dev_err(&pdev->dev, "failed to get hclk (%d)\n", err); - return err; - } + if (IS_ERR_OR_NULL(*pclk)) + return dev_err_probe(&pdev->dev, + IS_ERR(*pclk) ? PTR_ERR(*pclk) : -ENODEV, + "failed to get pclk\n"); + + if (IS_ERR_OR_NULL(*hclk)) + return dev_err_probe(&pdev->dev, + IS_ERR(*hclk) ? PTR_ERR(*hclk) : -ENODEV, + "failed to get hclk\n"); *tx_clk = devm_clk_get_optional(&pdev->dev, "tx_clk"); if (IS_ERR(*tx_clk))
On some platforms, e.g., the ZynqMP, devm_clk_get can return -EPROBE_DEFER if the clock controller, which is implemented in firmware, has not been probed yet. As clk_init is only called during probe, use dev_err_probe to simplify the error message and hide it for -EPROBE_DEFER. Signed-off-by: Michael Tretter <m.tretter@pengutronix.de> --- drivers/net/ethernet/cadence/macb_main.c | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-)