diff options
author | Sergey Shtylyov <s.shtylyov@omp.ru> | 2021-08-12 23:39:11 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-09-15 09:50:41 +0200 |
commit | 5c68b7795b4c7bdbd54148c9343b5a5edeb476d7 (patch) | |
tree | 9974cae1ee18b763448943a5d4777292d9bc5c03 /drivers/i2c | |
parent | f577e9f58ff079a61af08fae75b76cb8cc0c3057 (diff) | |
download | linux-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.c | 2 |
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); |