From: Thomas Gleixner Date: Thu, 19 Jun 2014 21:34:40 +0000 (+0000) Subject: irqchip: spear_shirq: Use the proper interfaces X-Git-Tag: v3.17-rc1~110^2~6^2~6 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=e3c871ab232ccc5fd82f76b21b9cae0113f01dc0;p=uclinux-h8%2Flinux.git irqchip: spear_shirq: Use the proper interfaces No point in doing a full irq lookup, when the desc pointer is available. Signed-off-by: Thomas Gleixner Link: https://lkml.kernel.org/r/20140619212713.404243909@linutronix.de Acked-by: Viresh Kumar Signed-off-by: Jason Cooper --- diff --git a/drivers/irqchip/spear-shirq.c b/drivers/irqchip/spear-shirq.c index 7ebb1a2fbfc7..874950c014be 100644 --- a/drivers/irqchip/spear-shirq.c +++ b/drivers/irqchip/spear-shirq.c @@ -232,12 +232,12 @@ static struct irq_chip shirq_chip = { static void shirq_handler(unsigned irq, struct irq_desc *desc) { - u32 i, j, val, mask, tmp; - struct irq_chip *chip; struct spear_shirq *shirq = irq_get_handler_data(irq); + struct irq_data *idata = irq_desc_get_irq_data(desc); + struct irq_chip *chip = irq_data_get_irq_chip(idata); + u32 i, j, val, mask, tmp; - chip = irq_get_chip(irq); - chip->irq_ack(&desc->irq_data); + chip->irq_ack(idata); mask = ((0x1 << shirq->nr_irqs) - 1) << shirq->offset; while ((val = readl(shirq->base + shirq->regs.status_reg) & @@ -263,7 +263,7 @@ static void shirq_handler(unsigned irq, struct irq_desc *desc) writel(tmp, shirq->base + shirq->regs.clear_reg); } } - chip->irq_unmask(&desc->irq_data); + chip->irq_unmask(idata); } static void __init spear_shirq_register(struct spear_shirq *shirq,