Re: [PATCH v4 2/3] hwmon: (lm90) add support to handle IRQ
From: Jean Delvare
Date: Mon Nov 04 2013 - 04:34:51 EST
Hi Wei,
I'm hitting a problem with that patch now...
On Wed, 7 Aug 2013 14:18:25 +0800, Wei Ni wrote:
> When the temperature exceed the limit range value,
> the driver can handle the interrupt.
>
> Signed-off-by: Wei Ni <wni@xxxxxxxxxx>
> ---
> drivers/hwmon/lm90.c | 23 +++++++++++++++++++++++
> 1 file changed, 23 insertions(+)
>
> diff --git a/drivers/hwmon/lm90.c b/drivers/hwmon/lm90.c
> index 1da2eff..2e68773 100644
> --- a/drivers/hwmon/lm90.c
> +++ b/drivers/hwmon/lm90.c
> @@ -89,6 +89,7 @@
> #include <linux/err.h>
> #include <linux/mutex.h>
> #include <linux/sysfs.h>
> +#include <linux/interrupt.h>
>
> /*
> * Addresses to scan
> @@ -1433,6 +1434,16 @@ static bool lm90_is_tripped(struct i2c_client *client)
> return true;
> }
>
> +static irqreturn_t lm90_irq_thread(int irq, void *dev_id)
> +{
> + struct i2c_client *client = dev_id;
> +
> + if (lm90_is_tripped(client))
Did you really send the latest version of the patch? lm90_is_tripped()
takes two arguments now, but here you only pass one.
If you have a more up-to-date version of this patch, please send it
over quickly.
> + return IRQ_HANDLED;
> + else
> + return IRQ_NONE;
> +}
> +
> static int lm90_probe(struct i2c_client *client,
> const struct i2c_device_id *id)
> {
> @@ -1509,6 +1520,18 @@ static int lm90_probe(struct i2c_client *client,
> goto exit_remove_files;
> }
>
> + if (client->irq) {
> + dev_dbg(dev, "IRQ: %d\n", client->irq);
> + err = devm_request_threaded_irq(dev, client->irq,
> + NULL, lm90_irq_thread,
> + IRQF_TRIGGER_LOW | IRQF_ONESHOT,
> + "lm90", client);
> + if (err < 0) {
> + dev_err(dev, "cannot request IRQ: %d\n", client->irq);
> + goto exit_remove_files;
> + }
> + }
> +
> return 0;
>
> exit_remove_files:
--
Jean Delvare
--
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/