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>
This commit is contained in:
Magnus Damm
2007-08-12 15:22:02 +09:00
committed by Paul Mundt
parent d6aee69ca1
commit 6ef5fb2cfc
11 changed files with 105 additions and 97 deletions

View File

@@ -59,14 +59,14 @@ static inline unsigned int set_prio_field(struct intc_desc *desc,
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 enable_prio_16(struct intc_desc *desc, unsigned int data)
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);