Message ID | 1596791682-4311-1-git-send-email-shengjiu.wang@nxp.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | ASoC: fsl_sai: Add -EPROBE_DEFER check for regmap init | expand |
On Fri, Aug 07, 2020 at 05:14:42PM +0800, Shengjiu Wang wrote: > Regmap initialization may return -EPROBE_DEFER for clock > may not be ready, so check -EPROBE_DEFER error type before > start another Regmap initialization. > > Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> > --- > sound/soc/fsl/fsl_sai.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/sound/soc/fsl/fsl_sai.c b/sound/soc/fsl/fsl_sai.c > index a22562f2df47..eb933fe9b6d1 100644 > --- a/sound/soc/fsl/fsl_sai.c > +++ b/sound/soc/fsl/fsl_sai.c > @@ -927,7 +927,7 @@ static int fsl_sai_probe(struct platform_device *pdev) > "bus", base, &fsl_sai_regmap_config); > > /* Compatible with old DTB cases */ > - if (IS_ERR(sai->regmap)) > + if (IS_ERR(sai->regmap) && PTR_ERR(sai->regmap) != -EPROBE_DEFER) > sai->regmap = devm_regmap_init_mmio_clk(&pdev->dev, > "sai", base, &fsl_sai_regmap_config); > if (IS_ERR(sai->regmap)) { In that case, might need a !EPROBE_DEFER check for this fallback devm_regmap_init_mmio_clk at "sai" clock too?
On Mon, Aug 10, 2020 at 4:02 PM Nicolin Chen <nicoleotsuka@gmail.com> wrote: > > On Fri, Aug 07, 2020 at 05:14:42PM +0800, Shengjiu Wang wrote: > > Regmap initialization may return -EPROBE_DEFER for clock > > may not be ready, so check -EPROBE_DEFER error type before > > start another Regmap initialization. > > > > Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> > > --- > > sound/soc/fsl/fsl_sai.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/sound/soc/fsl/fsl_sai.c b/sound/soc/fsl/fsl_sai.c > > index a22562f2df47..eb933fe9b6d1 100644 > > --- a/sound/soc/fsl/fsl_sai.c > > +++ b/sound/soc/fsl/fsl_sai.c > > @@ -927,7 +927,7 @@ static int fsl_sai_probe(struct platform_device *pdev) > > "bus", base, &fsl_sai_regmap_config); > > > > /* Compatible with old DTB cases */ > > - if (IS_ERR(sai->regmap)) > > + if (IS_ERR(sai->regmap) && PTR_ERR(sai->regmap) != -EPROBE_DEFER) > > sai->regmap = devm_regmap_init_mmio_clk(&pdev->dev, > > "sai", base, &fsl_sai_regmap_config); > > if (IS_ERR(sai->regmap)) { > > In that case, might need a !EPROBE_DEFER check for this > fallback devm_regmap_init_mmio_clk at "sai" clock too? No, I think it is ok for this fallback to return directly with EPROBE_DEFER. best regards wang shengjiu
On Fri, Aug 07, 2020 at 05:14:42PM +0800, Shengjiu Wang wrote: > Regmap initialization may return -EPROBE_DEFER for clock > may not be ready, so check -EPROBE_DEFER error type before > start another Regmap initialization. > > Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> Acked-by: Nicolin Chen <nicoleotsuka@gmail.com>
diff --git a/sound/soc/fsl/fsl_sai.c b/sound/soc/fsl/fsl_sai.c index a22562f2df47..eb933fe9b6d1 100644 --- a/sound/soc/fsl/fsl_sai.c +++ b/sound/soc/fsl/fsl_sai.c @@ -927,7 +927,7 @@ static int fsl_sai_probe(struct platform_device *pdev) "bus", base, &fsl_sai_regmap_config); /* Compatible with old DTB cases */ - if (IS_ERR(sai->regmap)) + if (IS_ERR(sai->regmap) && PTR_ERR(sai->regmap) != -EPROBE_DEFER) sai->regmap = devm_regmap_init_mmio_clk(&pdev->dev, "sai", base, &fsl_sai_regmap_config); if (IS_ERR(sai->regmap)) {
Regmap initialization may return -EPROBE_DEFER for clock may not be ready, so check -EPROBE_DEFER error type before start another Regmap initialization. Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> --- sound/soc/fsl/fsl_sai.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)