diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2013-05-16 16:36:11 -0400 |
---|---|---|
committer | Wolfram Sang <wsa@the-dreams.de> | 2013-06-05 17:06:46 -0400 |
commit | 0c195afb8741c32974266ba7c964481ba418b4b5 (patch) | |
tree | 1cf95bb67a8a371a5ff71460dc51556ef15630cf /drivers | |
parent | 2c911103040faad9d092a72b9f4503f92154c1dc (diff) |
I2C: mv64xxx: fix error handling for request_irq()
Propagate the error code from request_irq() rather than ignoring it
entirely.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Acked-by: Mark A. Greer <mgreer@animalcreek.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/i2c/busses/i2c-mv64xxx.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/i2c/busses/i2c-mv64xxx.c b/drivers/i2c/busses/i2c-mv64xxx.c index 640b49df2ddd..4b45c7363501 100644 --- a/drivers/i2c/busses/i2c-mv64xxx.c +++ b/drivers/i2c/busses/i2c-mv64xxx.c | |||
@@ -630,12 +630,12 @@ mv64xxx_i2c_probe(struct platform_device *pd) | |||
630 | 630 | ||
631 | mv64xxx_i2c_hw_init(drv_data); | 631 | mv64xxx_i2c_hw_init(drv_data); |
632 | 632 | ||
633 | if (request_irq(drv_data->irq, mv64xxx_i2c_intr, 0, | 633 | rc = request_irq(drv_data->irq, mv64xxx_i2c_intr, 0, |
634 | MV64XXX_I2C_CTLR_NAME, drv_data)) { | 634 | MV64XXX_I2C_CTLR_NAME, drv_data); |
635 | if (rc) { | ||
635 | dev_err(&drv_data->adapter.dev, | 636 | dev_err(&drv_data->adapter.dev, |
636 | "mv64xxx: Can't register intr handler irq: %d\n", | 637 | "mv64xxx: Can't register intr handler irq%d: %d\n", |
637 | drv_data->irq); | 638 | drv_data->irq, rc); |
638 | rc = -EINVAL; | ||
639 | goto exit_clk; | 639 | goto exit_clk; |
640 | } else if ((rc = i2c_add_numbered_adapter(&drv_data->adapter)) != 0) { | 640 | } else if ((rc = i2c_add_numbered_adapter(&drv_data->adapter)) != 0) { |
641 | dev_err(&drv_data->adapter.dev, | 641 | dev_err(&drv_data->adapter.dev, |