sh: intc - add a clear register to struct intc_prio_reg
We need a secondary register member in struct intc_prio_reg to support
dual priority registers used by ipi on x3.
Signed-off-by: Magnus Damm <damm@igel.co.jp>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
diff --git a/arch/sh/kernel/cpu/irq/intc.c b/arch/sh/kernel/cpu/irq/intc.c
index 5681940..24a8d55 100644
--- a/arch/sh/kernel/cpu/irq/intc.c
+++ b/arch/sh/kernel/cpu/irq/intc.c
@@ -59,14 +59,14 @@
static void disable_prio_16(struct intc_desc *desc, unsigned int data)
{
- unsigned long addr = _INTC_PTR(desc, prio_regs, data)->reg;
+ unsigned long addr = _INTC_PTR(desc, prio_regs, data)->set_reg;
ctrl_outw(set_prio_field(desc, ctrl_inw(addr), 0, data), addr);
}
static void enable_prio_16(struct intc_desc *desc, unsigned int data)
{
- unsigned long addr = _INTC_PTR(desc, prio_regs, data)->reg;
+ unsigned long addr = _INTC_PTR(desc, prio_regs, data)->set_reg;
unsigned int prio = _INTC_VALUE(data);
ctrl_outw(set_prio_field(desc, ctrl_inw(addr), prio, data), addr);
@@ -74,14 +74,14 @@
static void disable_prio_32(struct intc_desc *desc, unsigned int data)
{
- unsigned long addr = _INTC_PTR(desc, prio_regs, data)->reg;
+ unsigned long addr = _INTC_PTR(desc, prio_regs, data)->set_reg;
ctrl_outl(set_prio_field(desc, ctrl_inl(addr), 0, data), addr);
}
static void enable_prio_32(struct intc_desc *desc, unsigned int data)
{
- unsigned long addr = _INTC_PTR(desc, prio_regs, data)->reg;
+ unsigned long addr = _INTC_PTR(desc, prio_regs, data)->set_reg;
unsigned int prio = _INTC_VALUE(data);
ctrl_outl(set_prio_field(desc, ctrl_inl(addr), prio, data), addr);