On Sun, Mar 29, 2020 at 03:16:59PM +0200, Uwe Kleine-König wrote: > On Sun, Mar 29, 2020 at 11:48:09AM +0100, Russell King wrote: > > Honour deferred probing for devm_clk_get() so that we can get the clock > > for PWM. > > > > Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxx> > > --- > > drivers/gpio/gpio-mvebu.c | 3 +++ > > 1 file changed, 3 insertions(+) > > > > diff --git a/drivers/gpio/gpio-mvebu.c b/drivers/gpio/gpio-mvebu.c > > index fa5641615db6..ee13b11c5298 100644 > > --- a/drivers/gpio/gpio-mvebu.c > > +++ b/drivers/gpio/gpio-mvebu.c > > @@ -1132,6 +1132,9 @@ static int mvebu_gpio_probe(struct platform_device *pdev) > > } > > > > mvchip->clk = devm_clk_get(&pdev->dev, NULL); > > + if (mvchip->clk == ERR_PTR(-EPROBE_DEFER)) > > + return -EPROBE_DEFER; > > + > > /* Not all SoCs require a clock.*/ > > if (!IS_ERR(mvchip->clk)) > > clk_prepare_enable(mvchip->clk); > > I'd say the following is the right thing to do here: > > mvchip->clk = devm_clk_get_optional(...); > if (IS_ERR(mvchip->clk)) > return ... It's not that simple. The clock is required for Armada 370, and is optional for Armada 8040. -- RMK's Patch system: https://www.armlinux.org.uk/developer/patches/ FTTC broadband for 0.8mile line in suburbia: sync at 10.2Mbps down 587kbps up