[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <EAF47CD23C76F840A9E7FCE10091EFAB02BC1421BD@dbde02.ent.ti.com>
Date: Mon, 14 Dec 2009 17:01:11 +0530
From: "Shilimkar, Santosh" <santosh.shilimkar@...com>
To: Felipe Balbi <felipe.balbi@...ia.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
CC: Linux OMAP Mailing List <linux-omap@...r.kernel.org>,
Tony Lindgren <tony@...mide.com>,
Aaro Koskinen <aaro.koskinen@...ia.com>,
David Brownell <david-b@...bell.net>,
Linux USB Mailing List <linux-usb@...r.kernel.org>,
Anton Vorontsov <avorontsov@...mvista.com>,
Grazvydas Ignotas <notasas@...il.com>,
"Chikkature Rajashekar, Madhusudhan" <madhu.cr@...com>,
Greg Kroah-Hartman <gregkh@...e.de>,
Mark Brown <broonie@...nsource.wolfsonmicro.com>,
Samuel Ortiz <sameo@...nedhand.com>
Subject: RE: [RFC/PATCH 2/4] input: misc: twl4030: move to
request_threaded_irq
Felipe,
> -----Original Message-----
> From: linux-omap-owner@...r.kernel.org [mailto:linux-omap-owner@...r.kernel.org] On Behalf Of Felipe
> Balbi
> Sent: Monday, December 14, 2009 4:01 PM
> To: linux-kernel@...r.kernel.org
> Cc: Linux OMAP Mailing List; Tony Lindgren; Aaro Koskinen; David Brownell; Linux USB Mailing List;
> Anton Vorontsov; Grazvydas Ignotas; Chikkature Rajashekar, Madhusudhan; Greg Kroah-Hartman; Mark
> Brown; Samuel Ortiz; Felipe Balbi
> Subject: [RFC/PATCH 2/4] input: misc: twl4030: move to request_threaded_irq
>
> move to request_threaded_irq() on twl4030 children.
>
> Signed-off-by: Felipe Balbi <felipe.balbi@...ia.com>
> ---
> drivers/input/misc/twl4030-pwrbutton.c | 12 +-----------
> 1 files changed, 1 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/input/misc/twl4030-pwrbutton.c b/drivers/input/misc/twl4030-pwrbutton.c
> index f5fc997..cd47d9e 100644
> --- a/drivers/input/misc/twl4030-pwrbutton.c
> +++ b/drivers/input/misc/twl4030-pwrbutton.c
> @@ -39,16 +39,6 @@ static irqreturn_t powerbutton_irq(int irq, void *_pwr)
> int err;
> u8 value;
>
> -#ifdef CONFIG_LOCKDEP
> - /* WORKAROUND for lockdep forcing IRQF_DISABLED on us, which
> - * we don't want and can't tolerate since this is a threaded
> - * IRQ and can sleep due to the i2c reads it has to issue.
> - * Although it might be friendlier not to borrow this thread
> - * context...
> - */
> - local_irq_enable();
> -#endif
> -
> err = twl4030_i2c_read_u8(TWL4030_MODULE_PM_MASTER, &value,
> STS_HW_CONDITIONS);
> if (!err) {
> @@ -80,7 +70,7 @@ static int __devinit twl4030_pwrbutton_probe(struct platform_device *pdev)
> pwr->phys = "twl4030_pwrbutton/input0";
> pwr->dev.parent = &pdev->dev;
>
> - err = request_irq(irq, powerbutton_irq,
> + err = request_threaded_irq(irq, NULL, powerbutton_irq,
> IRQF_TRIGGER_FALLING | IRQF_TRIGGER_RISING,
> "twl4030_pwrbutton", pwr);
> if (err < 0) {
In whole of the series the ISR you have converted to threads using threaded_irq are very
small in size. They are like quick_change_handlers. So only advantage is the particular
interrupt is masked for bit longer than with you change.
I might be wrong here but it might introduce the spurious IRQ's because of bit of delay in the processing.What is the motive for this change ? Are we using this API as it suppose to be ?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists