ASoC: dwc: Propagate -EPROBE_DEFER from IRQ lookup

platform_get_irq_optional() never returns 0. It returns a positive IRQ
number on success or a negative error code on failure.

Return -EPROBE_DEFER from platform_get_irq_optional() so the driver is
re-probed when the interrupt resource becomes available instead of
continuing probe without an IRQ.

Signed-off-by: bui duc phuc <phucduc.bui@gmail.com>
Link: https://patch.msgid.link/20260806061046.25323-1-phucduc.bui@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
bui duc phuc 2026-08-06 13:10:45 +07:00 committed by Mark Brown
parent e7a5d3b04c
commit 564db8b8da
No known key found for this signature in database
GPG Key ID: 24D68B725D5487D0

View File

@ -955,7 +955,9 @@ static int dw_i2s_probe(struct platform_device *pdev)
}
irq = platform_get_irq_optional(pdev, 0);
if (irq >= 0) {
if (irq == -EPROBE_DEFER)
return irq;
if (irq > 0) {
ret = devm_request_irq(&pdev->dev, irq, i2s_irq_handler, 0,
pdev->name, dev);
if (ret < 0) {