mirror of
https://github.com/torvalds/linux.git
synced 2026-09-24 06:24:02 +02:00
ASoC: rockchip: rockchip_i2s: Propagate -EPROBE_DEFER from devm_pinctrl_get()
Return -EPROBE_DEFER from devm_pinctrl_get() instead of ignoring it and continuing probe. This allows the driver to be reprobed once the pinctrl provider becomes available. Signed-off-by: bui duc phuc <phucduc.bui@gmail.com> Link: https://patch.msgid.link/20260806052136.21034-6-phucduc.bui@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
c1bf7ae0c8
commit
be4f82d152
|
|
@ -790,7 +790,11 @@ static int rockchip_i2s_probe(struct platform_device *pdev)
|
|||
|
||||
i2s->bclk_ratio = 64;
|
||||
i2s->pinctrl = devm_pinctrl_get(&pdev->dev);
|
||||
if (!IS_ERR(i2s->pinctrl)) {
|
||||
if (IS_ERR(i2s->pinctrl)) {
|
||||
if (PTR_ERR(i2s->pinctrl) == -EPROBE_DEFER)
|
||||
return -EPROBE_DEFER;
|
||||
dev_dbg(&pdev->dev, "failed to find i2s pinctrl\n");
|
||||
} else {
|
||||
i2s->bclk_on = pinctrl_lookup_state(i2s->pinctrl, "bclk_on");
|
||||
if (!IS_ERR_OR_NULL(i2s->bclk_on)) {
|
||||
i2s->bclk_off = pinctrl_lookup_state(i2s->pinctrl, "bclk_off");
|
||||
|
|
@ -799,8 +803,6 @@ static int rockchip_i2s_probe(struct platform_device *pdev)
|
|||
return -EINVAL;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
dev_dbg(&pdev->dev, "failed to find i2s pinctrl\n");
|
||||
}
|
||||
|
||||
i2s_pinctrl_select_bclk_off(i2s);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user