aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-versatile/core.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/arch/arm/mach-versatile/core.c b/arch/arm/mach-versatile/core.c
index 13a83e45a33b..136c32e7ed8e 100644
--- a/arch/arm/mach-versatile/core.c
+++ b/arch/arm/mach-versatile/core.c
@@ -63,23 +63,25 @@
63#define VA_VIC_BASE __io_address(VERSATILE_VIC_BASE) 63#define VA_VIC_BASE __io_address(VERSATILE_VIC_BASE)
64#define VA_SIC_BASE __io_address(VERSATILE_SIC_BASE) 64#define VA_SIC_BASE __io_address(VERSATILE_SIC_BASE)
65 65
66static void sic_mask_irq(unsigned int irq) 66static void sic_mask_irq(struct irq_data *d)
67{ 67{
68 irq -= IRQ_SIC_START; 68 unsigned int irq = d->irq - IRQ_SIC_START;
69
69 writel(1 << irq, VA_SIC_BASE + SIC_IRQ_ENABLE_CLEAR); 70 writel(1 << irq, VA_SIC_BASE + SIC_IRQ_ENABLE_CLEAR);
70} 71}
71 72
72static void sic_unmask_irq(unsigned int irq) 73static void sic_unmask_irq(struct irq_data *d)
73{ 74{
74 irq -= IRQ_SIC_START; 75 unsigned int irq = d->irq - IRQ_SIC_START;
76
75 writel(1 << irq, VA_SIC_BASE + SIC_IRQ_ENABLE_SET); 77 writel(1 << irq, VA_SIC_BASE + SIC_IRQ_ENABLE_SET);
76} 78}
77 79
78static struct irq_chip sic_chip = { 80static struct irq_chip sic_chip = {
79 .name = "SIC", 81 .name = "SIC",
80 .ack = sic_mask_irq, 82 .irq_ack = sic_mask_irq,
81 .mask = sic_mask_irq, 83 .irq_mask = sic_mask_irq,
82 .unmask = sic_unmask_irq, 84 .irq_unmask = sic_unmask_irq,
83}; 85};
84 86
85static void 87static void