[PATCH] NFC: pn544: i2c: fix error handling of irq_of_parse_and_map

From: Dmitry Torokhov
Date: Fri Nov 14 2014 - 17:29:33 EST


Return value of irq_of_parse_and_map() is unsigned int, with 0
indicating failure, so testing for negative result never works.

Signed-off-by: Dmitry Torokhov <dtor@xxxxxxxxxxxx>
---

Not tested, found by casual code inspection.

drivers/nfc/pn544/i2c.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/drivers/nfc/pn544/i2c.c b/drivers/nfc/pn544/i2c.c
index 440291a..cfb3f0b 100644
--- a/drivers/nfc/pn544/i2c.c
+++ b/drivers/nfc/pn544/i2c.c
@@ -918,13 +918,12 @@ static int pn544_hci_i2c_of_request_resources(struct i2c_client *client)
}

/* IRQ */
- ret = irq_of_parse_and_map(pp, 0);
- if (ret < 0) {
- nfc_err(&client->dev,
- "Unable to get irq, error: %d\n", ret);
+ client->irq = irq_of_parse_and_map(pp, 0);
+ if (!client->irq) {
+ nfc_err(&client->dev, "Unable to get irq\n");
+ ret = -EINVAL;
goto err_gpio_fw;
}
- client->irq = ret;

return 0;

--
2.1.0.rc2.206.gedb03e5


--
Dmitry
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/