diff options
author | Christophe Ricard <christophe.ricard@gmail.com> | 2015-12-23 23:45:22 +0100 |
---|---|---|
committer | Samuel Ortiz <sameo@linux.intel.com> | 2015-12-29 19:06:21 +0100 |
commit | 0b0a264df5d3854c3e6411c28616d2148c897bad (patch) | |
tree | e5dd1468c97c87c39455c7754096261bb328ac0a /drivers/nfc | |
parent | 397d6497bdf787b1a31e40322d6114a68c6a0455 (diff) | |
download | talos-obmc-linux-0b0a264df5d3854c3e6411c28616d2148c897bad.tar.gz talos-obmc-linux-0b0a264df5d3854c3e6411c28616d2148c897bad.zip |
nfc: fdp: Move i2c client irq checking
It is cleaner to check if the i2c_client irq is not configured
properly before allocating any data.
Signed-off-by: Christophe Ricard <christophe-h.ricard@st.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'drivers/nfc')
-rw-r--r-- | drivers/nfc/fdp/i2c.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/drivers/nfc/fdp/i2c.c b/drivers/nfc/fdp/i2c.c index 532db28145c7..5e797d5c38ed 100644 --- a/drivers/nfc/fdp/i2c.c +++ b/drivers/nfc/fdp/i2c.c @@ -298,6 +298,12 @@ static int fdp_nci_i2c_probe(struct i2c_client *client, return -ENODEV; } + /* Checking if we have an irq */ + if (client->irq <= 0) { + nfc_err(dev, "IRQ not present\n"); + return -ENODEV; + } + phy = devm_kzalloc(dev, sizeof(struct fdp_i2c_phy), GFP_KERNEL); if (!phy) @@ -307,12 +313,6 @@ static int fdp_nci_i2c_probe(struct i2c_client *client, phy->next_read_size = FDP_NCI_I2C_MIN_PAYLOAD; i2c_set_clientdata(client, phy); - /* Checking if we have an irq */ - if (client->irq <= 0) { - dev_err(dev, "IRQ not present\n"); - return -ENODEV; - } - r = request_threaded_irq(client->irq, NULL, fdp_nci_i2c_irq_thread_fn, IRQF_TRIGGER_RISING | IRQF_ONESHOT, FDP_I2C_DRIVER_NAME, phy); |