From: Florian Fainelli <florian@openwrt.org>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: LKML <linux-kernel@vger.kernel.org>,
Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [PATCH] vlynq: Convert irq functions
Date: Mon, 28 Mar 2011 10:15:02 +0200 [thread overview]
Message-ID: <201103281015.02968.florian@openwrt.org> (raw)
In-Reply-To: <alpine.LFD.2.00.1103251223240.31464@localhost6.localdomain6>
On Friday 25 March 2011 12:28:27 Thomas Gleixner wrote:
> Convert to the new irq_chip functions and the new namespace.
>
> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Florian Fainelli <florian@openwrt.org>
> ---
> drivers/vlynq/vlynq.c | 64
> ++++++++++++++++++++++++-------------------------- 1 file changed, 31
> insertions(+), 33 deletions(-)
>
> Index: linux-2.6-tip/drivers/vlynq/vlynq.c
> ===================================================================
> --- linux-2.6-tip.orig/drivers/vlynq/vlynq.c
> +++ linux-2.6-tip/drivers/vlynq/vlynq.c
> @@ -135,40 +135,40 @@ static void vlynq_reset(struct vlynq_dev
> msleep(5);
> }
>
> -static void vlynq_irq_unmask(unsigned int irq)
> +static void vlynq_irq_unmask(struct irq_data *d)
> {
> - u32 val;
> - struct vlynq_device *dev = get_irq_chip_data(irq);
> + struct vlynq_device *dev = irq_data_get_chip_data(d);
> int virq;
> + u32 val;
>
> BUG_ON(!dev);
> - virq = irq - dev->irq_start;
> + virq = d->irq - dev->irq_start;
> val = readl(&dev->remote->int_device[virq >> 2]);
> val |= (VINT_ENABLE | virq) << VINT_OFFSET(virq);
> writel(val, &dev->remote->int_device[virq >> 2]);
> }
>
> -static void vlynq_irq_mask(unsigned int irq)
> +static void vlynq_irq_mask(struct irq_data *d)
> {
> - u32 val;
> - struct vlynq_device *dev = get_irq_chip_data(irq);
> + struct vlynq_device *dev = irq_data_get_chip_data(d);
> int virq;
> + u32 val;
>
> BUG_ON(!dev);
> - virq = irq - dev->irq_start;
> + virq = d->irq - dev->irq_start;
> val = readl(&dev->remote->int_device[virq >> 2]);
> val &= ~(VINT_ENABLE << VINT_OFFSET(virq));
> writel(val, &dev->remote->int_device[virq >> 2]);
> }
>
> -static int vlynq_irq_type(unsigned int irq, unsigned int flow_type)
> +static int vlynq_irq_type(struct irq_data *d, unsigned int flow_type)
> {
> - u32 val;
> - struct vlynq_device *dev = get_irq_chip_data(irq);
> + struct vlynq_device *dev = irq_data_get_chip_data(d);
> int virq;
> + u32 val;
>
> BUG_ON(!dev);
> - virq = irq - dev->irq_start;
> + virq = d->irq - dev->irq_start;
> val = readl(&dev->remote->int_device[virq >> 2]);
> switch (flow_type & IRQ_TYPE_SENSE_MASK) {
> case IRQ_TYPE_EDGE_RISING:
> @@ -192,10 +192,9 @@ static int vlynq_irq_type(unsigned int i
> return 0;
> }
>
> -static void vlynq_local_ack(unsigned int irq)
> +static void vlynq_local_ack(struct irq_data *d)
> {
> - struct vlynq_device *dev = get_irq_chip_data(irq);
> -
> + struct vlynq_device *dev = irq_data_get_chip_data(d);
> u32 status = readl(&dev->local->status);
>
> pr_debug("%s: local status: 0x%08x\n",
> @@ -203,10 +202,9 @@ static void vlynq_local_ack(unsigned int
> writel(status, &dev->local->status);
> }
>
> -static void vlynq_remote_ack(unsigned int irq)
> +static void vlynq_remote_ack(struct irq_data *d)
> {
> - struct vlynq_device *dev = get_irq_chip_data(irq);
> -
> + struct vlynq_device *dev = irq_data_get_chip_data(d);
> u32 status = readl(&dev->remote->status);
>
> pr_debug("%s: remote status: 0x%08x\n",
> @@ -238,23 +236,23 @@ static irqreturn_t vlynq_irq(int irq, vo
>
> static struct irq_chip vlynq_irq_chip = {
> .name = "vlynq",
> - .unmask = vlynq_irq_unmask,
> - .mask = vlynq_irq_mask,
> - .set_type = vlynq_irq_type,
> + .irq_unmask = vlynq_irq_unmask,
> + .irq_mask = vlynq_irq_mask,
> + .irq_set_type = vlynq_irq_type,
> };
>
> static struct irq_chip vlynq_local_chip = {
> .name = "vlynq local error",
> - .unmask = vlynq_irq_unmask,
> - .mask = vlynq_irq_mask,
> - .ack = vlynq_local_ack,
> + .irq_unmask = vlynq_irq_unmask,
> + .irq_mask = vlynq_irq_mask,
> + .irq_ack = vlynq_local_ack,
> };
>
> static struct irq_chip vlynq_remote_chip = {
> .name = "vlynq local error",
> - .unmask = vlynq_irq_unmask,
> - .mask = vlynq_irq_mask,
> - .ack = vlynq_remote_ack,
> + .irq_unmask = vlynq_irq_unmask,
> + .irq_mask = vlynq_irq_mask,
> + .irq_ack = vlynq_remote_ack,
> };
>
> static int vlynq_setup_irq(struct vlynq_device *dev)
> @@ -291,17 +289,17 @@ static int vlynq_setup_irq(struct vlynq_
> for (i = dev->irq_start; i <= dev->irq_end; i++) {
> virq = i - dev->irq_start;
> if (virq == dev->local_irq) {
> - set_irq_chip_and_handler(i, &vlynq_local_chip,
> + irq_set_chip_and_handler(i, &vlynq_local_chip,
> handle_level_irq);
> - set_irq_chip_data(i, dev);
> + irq_set_chip_data(i, dev);
> } else if (virq == dev->remote_irq) {
> - set_irq_chip_and_handler(i, &vlynq_remote_chip,
> + irq_set_chip_and_handler(i, &vlynq_remote_chip,
> handle_level_irq);
> - set_irq_chip_data(i, dev);
> + irq_set_chip_data(i, dev);
> } else {
> - set_irq_chip_and_handler(i, &vlynq_irq_chip,
> + irq_set_chip_and_handler(i, &vlynq_irq_chip,
> handle_simple_irq);
> - set_irq_chip_data(i, dev);
> + irq_set_chip_data(i, dev);
> writel(0, &dev->remote->int_device[virq >> 2]);
> }
> }
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
prev parent reply other threads:[~2011-03-28 8:14 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-25 11:28 [PATCH] vlynq: Convert irq functions Thomas Gleixner
2011-03-25 20:56 ` [PATCH v2] " Thomas Gleixner
2011-03-28 8:15 ` Florian Fainelli
2011-03-28 17:36 ` [tip:irq/cleanup] " tip-bot for Thomas Gleixner
2011-03-28 8:15 ` Florian Fainelli [this message]
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=201103281015.02968.florian@openwrt.org \
--to=florian@openwrt.org \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=tglx@linutronix.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.