From: Xu Yang Date: Wed, 7 May 2025 10:27:14 +0000 (+0800) Subject: i2c: core: add useful info when defer probe X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=5c52473b4496b3514444b55b1230d772cae2baa0;p=users%2Fjedix%2Flinux-maple.git i2c: core: add useful info when defer probe Add an useful info when failed to get irq/wakeirq due to -EPROBE_DEFER. Before: [ 15.737361] i2c 2-0050: deferred probe pending: (reason unknown) After: [ 15.816295] i2c 2-0050: deferred probe pending: tcpci: can't get irq Signed-off-by: Xu Yang Reviewed-by: Carlos Song Reviewed-by: Frank Li Signed-off-by: Wolfram Sang --- diff --git a/drivers/i2c/i2c-core-base.c b/drivers/i2c/i2c-core-base.c index dc3c60a7d382..32ffd12bff9f 100644 --- a/drivers/i2c/i2c-core-base.c +++ b/drivers/i2c/i2c-core-base.c @@ -520,7 +520,7 @@ static int i2c_device_probe(struct device *dev) client->flags |= I2C_CLIENT_WAKE; } if (irq == -EPROBE_DEFER) { - status = irq; + status = dev_err_probe(dev, irq, "can't get irq\n"); goto put_sync_adapter; } @@ -548,7 +548,7 @@ static int i2c_device_probe(struct device *dev) wakeirq = fwnode_irq_get_byname(fwnode, "wakeup"); if (wakeirq == -EPROBE_DEFER) { - status = wakeirq; + status = dev_err_probe(dev, wakeirq, "can't get wakeirq\n"); goto put_sync_adapter; }