aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/common
diff options
context:
space:
mode:
authorJamie Iles <jamie@jamieiles.com>2011-12-01 05:16:46 -0500
committerRussell King <rmk+kernel@arm.linux.org.uk>2011-12-11 04:56:57 -0500
commitad622671a4da0b6db1c1382e6345e1361c5fbab8 (patch)
treebba2a369e1c1cccc910485355ef1f797360891b3 /arch/arm/common
parent6ae25a5b9d7ba86d6ac19c403dfa57dae6caa73d (diff)
ARM: 7183/1: vic: register the VIC for ST-modified VIC's
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. Acked-by: Linus Walleij <linus.walleij@stericsson.com> Cc: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Jamie Iles <jamie@jamieiles.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/common')
-rw-r--r--arch/arm/common/vic.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/arm/common/vic.c b/arch/arm/common/vic.c
index 6ed41ec2bbf5..77287504c8b4 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,
318 * and 020 within the page. We call this "second block". 318 * and 020 within the page. We call this "second block".
319 */ 319 */
320static void __init vic_init_st(void __iomem *base, unsigned int irq_start, 320static void __init vic_init_st(void __iomem *base, unsigned int irq_start,
321 u32 vic_sources) 321 u32 vic_sources, struct device_node *node)
322{ 322{
323 unsigned int i; 323 unsigned int i;
324 int vic_2nd_block = ((unsigned long)base & ~PAGE_MASK) != 0; 324 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,
345 } 345 }
346 346
347 vic_set_irq_sources(base, irq_start, vic_sources); 347 vic_set_irq_sources(base, irq_start, vic_sources);
348 vic_register(base, irq_start, 0, node);
348} 349}
349 350
350static void __init __vic_init(void __iomem *base, unsigned int irq_start, 351static 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,
367 368
368 switch(vendor) { 369 switch(vendor) {
369 case AMBA_VENDOR_ST: 370 case AMBA_VENDOR_ST:
370 vic_init_st(base, irq_start, vic_sources); 371 vic_init_st(base, irq_start, vic_sources, node);
371 return; 372 return;
372 default: 373 default:
373 printk(KERN_WARNING "VIC: unknown vendor, continuing anyways\n"); 374 printk(KERN_WARNING "VIC: unknown vendor, continuing anyways\n");