[PATCH] ARM: vic: register the VIC for ST-modified VIC's
Jamie Iles
jamie at jamieiles.com
Wed Nov 23 10:28:30 EST 2011
When probing the VIC, the ST variant has a different probing method to
account for the extra interrupts which meant we didn't previously call
vic_register() which registered the irq_domain.
Cc: Linus Walleij <linus.walleij at stericsson.com>
Cc: Russell King <rmk+linux at arm.linux.org.uk>
Cc: Marc Zyngier <marc.zyngier at arm.com>
Signed-off-by: Jamie Iles <jamie at jamieiles.com>
---
I _think_ it's just Nomadik affected here which I don't have access to.
I can send an updated pull request or put it in Russell's tracker,
whichever is easiest.
arch/arm/common/vic.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/arch/arm/common/vic.c b/arch/arm/common/vic.c
index 6ed41ec..7728750 100644
--- a/arch/arm/common/vic.c
+++ b/arch/arm/common/vic.c
@@ -318,7 +318,7 @@ static void __init vic_set_irq_sources(void __iomem *base,
* and 020 within the page. We call this "second block".
*/
static void __init vic_init_st(void __iomem *base, unsigned int irq_start,
- u32 vic_sources)
+ u32 vic_sources, struct device_node *node)
{
unsigned int i;
int vic_2nd_block = ((unsigned long)base & ~PAGE_MASK) != 0;
@@ -345,6 +345,7 @@ static void __init vic_init_st(void __iomem *base, unsigned int irq_start,
}
vic_set_irq_sources(base, irq_start, vic_sources);
+ vic_register(base, irq_start, 0, node);
}
static void __init __vic_init(void __iomem *base, unsigned int irq_start,
@@ -367,7 +368,7 @@ static void __init __vic_init(void __iomem *base, unsigned int irq_start,
switch(vendor) {
case AMBA_VENDOR_ST:
- vic_init_st(base, irq_start, vic_sources);
+ vic_init_st(base, irq_start, vic_sources, node);
return;
default:
printk(KERN_WARNING "VIC: unknown vendor, continuing anyways\n");
--
1.7.4.1
More information about the linux-arm-kernel
mailing list