From: Andrew Morton <akpm@linux-foundation.org>
To: Mike Frysinger <vapier@gentoo.org>
Cc: sameo@linux.intel.com, linux-kernel@vger.kernel.org,
uclinux-dist-devel@blackfin.uclinux.org,
michael.hennerich@analog.com, cooloney@kernel.org
Subject: Re: [PATCH v2] mfd: ADP5520 Multifunction LCD Backlight and Keypad Input Device Driver
Date: Tue, 29 Sep 2009 14:19:39 -0700 [thread overview]
Message-ID: <20090929141939.b051fe74.akpm@linux-foundation.org> (raw)
In-Reply-To: <1253682664-27040-1-git-send-email-vapier@gentoo.org>
On Wed, 23 Sep 2009 01:11:04 -0400
Mike Frysinger <vapier@gentoo.org> wrote:
> +static void adp5520_irq_work(struct work_struct *work)
> +{
> + struct adp5520_chip *chip =
> + container_of(work, struct adp5520_chip, irq_work);
> + unsigned int events;
> + uint8_t reg_val;
> + int ret;
> +
> + ret = __adp5520_read(chip->client, MODE_STATUS, ®_val);
> + if (ret)
> + goto out;
> +
> + events = reg_val & (OVP_INT | CMPR_INT | GPI_INT | KR_INT | KP_INT);
> +
> + blocking_notifier_call_chain(&chip->notifier_list, events, NULL);
> + /* ACK, Sticky bits are W1C */
> + __adp5520_ack_bits(chip->client, MODE_STATUS, events);
> +
> +out:
> + enable_irq(chip->client->irq);
> +}
> +
> +static irqreturn_t adp5520_irq_handler(int irq, void *data)
> +{
> + struct adp5520_chip *chip = data;
> +
> + disable_irq_nosync(irq);
> + schedule_work(&chip->irq_work);
> +
> + return IRQ_HANDLED;
> +}
Disabling interrutps for an arbitrarily long period of time is pretty
nasty. Especially if some poor innocent device is trying to share that
irq (can this happen?).
Is there no other way?
next prev parent reply other threads:[~2009-09-29 21:21 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-17 18:27 [PATCH] mfd: ADP5520 Multifunction LCD Backlight and Keypad Input Device Driver Mike Frysinger
2009-09-23 5:11 ` [PATCH v2] " Mike Frysinger
2009-09-29 21:04 ` [Uclinux-dist-devel] " Mike Frysinger
2009-09-29 21:14 ` Andrew Morton
2009-09-29 21:19 ` Mike Frysinger
2009-09-29 21:31 ` Samuel Ortiz
2009-09-29 21:19 ` Andrew Morton [this message]
2009-09-29 21:57 ` Hennerich, Michael
2009-10-01 14:09 ` Samuel Ortiz
2009-10-02 9:38 ` Hennerich, Michael
2009-10-02 13:15 ` Samuel Ortiz
2009-10-02 14:39 ` Hennerich, Michael
2009-10-02 13:48 ` [Uclinux-dist-devel] [PATCH v2] mfd: ADP5520 Multifunction LCDBacklight " Hennerich, Michael
2009-10-02 14:05 ` Samuel Ortiz
2009-10-02 14:27 ` Mark Brown
2009-10-02 14:37 ` [Uclinux-dist-devel] [PATCH v2] mfd: ADP5520 MultifunctionLCDBacklight " Hennerich, Michael
2009-10-02 14:38 ` Mark Brown
2009-10-02 15:24 ` [Uclinux-dist-devel] [PATCH v2] mfd: ADP5520MultifunctionLCDBacklight " Hennerich, Michael
2009-10-06 7:44 ` [PATCH v3] mfd: ADP5520 Multifunction LCD Backlight " Mike Frysinger
2009-10-06 11:55 ` Mark Brown
2009-10-06 12:23 ` [PATCH v3] mfd: ADP5520 Multifunction LCD Backlight and KeypadInput " Hennerich, Michael
2009-10-06 12:36 ` Mark Brown
2009-10-06 12:55 ` Hennerich, Michael
2009-10-06 13:58 ` Mark Brown
2009-10-06 14:32 ` Hennerich, Michael
2009-10-06 14:48 ` Mark Brown
2009-10-06 15:05 ` Hennerich, Michael
2009-10-06 16:05 ` Mark Brown
2009-10-07 8:50 ` Hennerich, Michael
2009-10-07 10:06 ` Mark Brown
2009-10-07 12:11 ` Hennerich, Michael
2009-10-07 13:03 ` Mark Brown
2009-10-07 13:01 ` Hennerich, Michael
2009-10-07 13:19 ` Mark Brown
2009-10-07 13:35 ` Hennerich, Michael
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090929141939.b051fe74.akpm@linux-foundation.org \
--to=akpm@linux-foundation.org \
--cc=cooloney@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=michael.hennerich@analog.com \
--cc=sameo@linux.intel.com \
--cc=uclinux-dist-devel@blackfin.uclinux.org \
--cc=vapier@gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox