PPC: e500: fix mpic_iack address
authorScott Wood <scottwood@freescale.com>
Mon, 21 Jan 2013 15:53:54 +0000 (15:53 +0000)
committerAlexander Graf <agraf@suse.de>
Fri, 25 Jan 2013 21:02:56 +0000 (22:02 +0100)
MPIC+0xa0 is IACK for the current CPU.  MPIC+0x200a0 is IACK for CPU 0.
This fix allows EPR to work with an SMP target.

Signed-off-by: Scott Wood <scottwood@freescale.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
hw/ppc/e500.c

index 9ccf4d1840dd25a86967b32b00337c51cc9e9ea5..530f9290f00cf323ffad81b3ebdd29ce34075b45 100644 (file)
@@ -505,7 +505,7 @@ void ppce500_init(PPCE500Params *params)
         irqs[i][OPENPIC_OUTPUT_CINT] = input[PPCE500_INPUT_CINT];
         env->spr[SPR_BOOKE_PIR] = cs->cpu_index = i;
         env->mpic_iack = MPC8544_CCSRBAR_BASE +
-                         MPC8544_MPIC_REGS_OFFSET + 0x200A0;
+                         MPC8544_MPIC_REGS_OFFSET + 0xa0;
 
         ppc_booke_timers_init(cpu, 400000000, PPC_TIMER_E500);