summaryrefslogtreecommitdiffstats
path: root/drivers/i2c
diff options
context:
space:
mode:
authorSergey Shtylyov <s.shtylyov@omp.ru>2021-08-12 23:39:11 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-09-15 09:50:41 +0200
commit5c68b7795b4c7bdbd54148c9343b5a5edeb476d7 (patch)
tree9974cae1ee18b763448943a5d4777292d9bc5c03 /drivers/i2c
parentf577e9f58ff079a61af08fae75b76cb8cc0c3057 (diff)
downloadlinux-stable-5c68b7795b4c7bdbd54148c9343b5a5edeb476d7.tar.gz
linux-stable-5c68b7795b4c7bdbd54148c9343b5a5edeb476d7.tar.bz2
linux-stable-5c68b7795b4c7bdbd54148c9343b5a5edeb476d7.zip
i2c: synquacer: fix deferred probing
[ Upstream commit 8d744da241b81f4211f4813b0d3c1981326fa9ca ] The driver overrides the error codes returned by platform_get_irq() to -ENODEV, so if it returns -EPROBE_DEFER, the driver will fail the probe permanently instead of the deferred probing. Switch to propagating the error codes upstream. Fixes: 0d676a6c4390 ("i2c: add support for Socionext SynQuacer I2C controller") Signed-off-by: Sergey Shtylyov <s.shtylyov@omprussia.ru> Acked-by: Ard Biesheuvel <ardb@kernel.org> Signed-off-by: Wolfram Sang <wsa@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/i2c')
-rw-r--r--drivers/i2c/busses/i2c-synquacer.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/i2c/busses/i2c-synquacer.c b/drivers/i2c/busses/i2c-synquacer.c
index 31be1811d5e6..e4026c5416b1 100644
--- a/drivers/i2c/busses/i2c-synquacer.c
+++ b/drivers/i2c/busses/i2c-synquacer.c
@@ -578,7 +578,7 @@ static int synquacer_i2c_probe(struct platform_device *pdev)
i2c->irq = platform_get_irq(pdev, 0);
if (i2c->irq < 0)
- return -ENODEV;
+ return i2c->irq;
ret = devm_request_irq(&pdev->dev, i2c->irq, synquacer_i2c_isr,
0, dev_name(&pdev->dev), i2c);