On Mon, 16 Nov 2020 10:26:07 +0100 Marco Felsch wrote: > > > The code right above looks highly questionable as well: > > > > > > priv->refclk = clk_get_optional(dev, NULL); > > > if (IS_ERR(priv->refclk)) > > > dev_err_probe(dev, PTR_ERR(priv->refclk), "Failed to > > > request clock\n"); > > > > > > ret = clk_prepare_enable(priv->refclk); > > > if (ret) > > > return ret; > > > > > > I don't think clk_prepare_enable() will be too happy to see an error > > > pointer. This should probably be: > > > > > > priv->refclk = clk_get_optional(dev, NULL); > > > if (IS_ERR(priv->refclk)) > > > return dev_err_probe(dev, PTR_ERR(priv->refclk), > > > "Failed to request clock\n"); > > > > Right, especially if EPROBE_DEFER must be returned because the clock > > provider is not ready yet, we should have a chance to do that. > > damn.. I missed the return here. Thanks for covering that. Should I send > a fix or did you do that already?
Please do, I don't see any fix for this issue in patchwork right now.