diff options
author | Ed Nash <enash54@gmail.com> | 2013-04-21 14:59:36 -0400 |
---|---|---|
committer | Anthony Felice <tony.felice@timesys.com> | 2013-04-23 15:46:07 -0400 |
commit | 3f9ca1a36347c86266f65a654f0f71799540554b (patch) | |
tree | a6e4df517aaafa7ad1ae898cdbf173d559101938 | |
parent | c0cfb5767277856a41ae2dd1ed31dfd8cb37f2a0 (diff) |
limit Linux use of SRAM so as not to conflict with MQX. Similarly, leave M4 routing interrupt routing bits unchanged3.0-vybrid-ts33.0-vybrid-ts2.1
-rw-r--r-- | arch/arm/mach-mvf/cpu.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-mvf/irq.c | 9 |
2 files changed, 8 insertions, 3 deletions
diff --git a/arch/arm/mach-mvf/cpu.c b/arch/arm/mach-mvf/cpu.c index 4c6d018cd076..9d972e179399 100644 --- a/arch/arm/mach-mvf/cpu.c +++ b/arch/arm/mach-mvf/cpu.c @@ -81,7 +81,7 @@ EXPORT_SYMBOL(mvf_revision); static int __init post_cpu_init(void) { - iram_init(MVF_IRAM_BASE_ADDR, MVF_IRAM_SIZE); + iram_init(MVF_IRAM_BASE_ADDR+0x70000, 64*1024); /* Move wait routine into iRAM */ ccm_base = MVF_IO_ADDRESS(MVF_CCM_BASE_ADDR); diff --git a/arch/arm/mach-mvf/irq.c b/arch/arm/mach-mvf/irq.c index 89c7d382173f..62cc054b60f3 100644 --- a/arch/arm/mach-mvf/irq.c +++ b/arch/arm/mach-mvf/irq.c @@ -49,6 +49,7 @@ void mvf_init_irq(void) void __iomem *int_router_base = MVF_IO_ADDRESS(MVF_MSCM_INT_ROUTER_BASE); struct irq_desc *desc; + unsigned short route; /* start offset if private timer irq id, which is 29. * ID table: @@ -68,6 +69,10 @@ void mvf_init_irq(void) mvf_register_gpios(); - for (i = 0; i < 112; i++) - __raw_writew(1, int_router_base + 0x80 + 2 * i); + int_router_base += 0x80; + for (i = 0; i < 112; i++) { + route = 1 | __raw_readw(int_router_base); + __raw_writew(route, int_router_base); + int_router_base += 2; + } } |