diff options
| author | bui duc phuc <phucduc.bui@gmail.com> | 2026-08-11 17:09:49 +0700 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2026-08-11 22:06:59 +0100 |
| commit | 6ec64d757af9b75a3c64f9f7dad76bdc1efc06ca (patch) | |
| tree | 8cfae72c200aff924b86bd1efd78f66d9e2bf2b0 /sound/soc/pxa | |
| parent | daa7ffd765ae67a83e77dae32c66ce2d6d995d19 (diff) | |
ASoC: pxa: Use devm_clk_get_optional() for extclk clock
The Device Tree binding defines the extclk clock as an optional
property, but the driver currently uses devm_clk_get() and manually
handles the absence of the clock.
Use devm_clk_get_optional() to match the binding and simplify the
optional clock handling. This also propagates errors other than the
absence of the optional clock, including -EPROBE_DEFER.
This changes the existing behavior for errors other than
-EPROBE_DEFER. RFC to discuss whether these errors should cause probe
to fail rather than being treated as an unavailable optional clock.
Fixes: 90eb6b59d311 ("ASoC: pxa-ssp: add support for an external clock in devicetree")
Signed-off-by: bui duc phuc <phucduc.bui@gmail.com>
Link: https://patch.msgid.link/20260811100949.61142-1-phucduc.bui@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/pxa')
| -rw-r--r-- | sound/soc/pxa/pxa-ssp.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/sound/soc/pxa/pxa-ssp.c b/sound/soc/pxa/pxa-ssp.c index f8054c1c59fa..3a0abcb0bfbd 100644 --- a/sound/soc/pxa/pxa-ssp.c +++ b/sound/soc/pxa/pxa-ssp.c @@ -769,13 +769,10 @@ static int pxa_ssp_probe(struct snd_soc_dai *dai) goto err_priv; } - priv->extclk = devm_clk_get(dev, "extclk"); + priv->extclk = devm_clk_get_optional(dev, "extclk"); if (IS_ERR(priv->extclk)) { ret = PTR_ERR(priv->extclk); - if (ret == -EPROBE_DEFER) - goto err_priv; - - priv->extclk = NULL; + goto err_priv; } } else { priv->ssp = pxa_ssp_request(dai->id + 1, "SoC audio"); |
