On 24.06.2016 04:27, David Gibson wrote: > On Thu, Jun 23, 2016 at 03:35:17PM -0700, Aaron Larson wrote: >> >> ppce500_spin.c uses SPR_PIR to initialize the spin table, however on >> Book E processors the correct SPR is SPR_BOOKE_PIR. >> >> Signed-off-by: Aaron Larson <alar...@ddci.com> > > Applied to ppc-for-2.7, thanks. > > IIRC this leaves a redundant bit in spin_init, but that can be cleaned > up later.
It's in spin_reset() ... and I'm not sure whether this value is needed between reset and kick time, so maybe it's safer to just keep that line in spin_reset()? >> --- >> hw/ppc/ppce500_spin.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/hw/ppc/ppce500_spin.c b/hw/ppc/ppce500_spin.c >> index 76bd78b..225177b 100644 >> --- a/hw/ppc/ppce500_spin.c >> +++ b/hw/ppc/ppce500_spin.c >> @@ -104,7 +104,7 @@ static void spin_kick(void *data) >> hwaddr map_start; >> >> cpu_synchronize_state(cpu); >> - stl_p(&curspin->pir, env->spr[SPR_PIR]); >> + stl_p(&curspin->pir, env->spr[SPR_BOOKE_PIR]); >> env->nip = ldq_p(&curspin->addr) & (map_size - 1); >> env->gpr[3] = ldq_p(&curspin->r3); >> env->gpr[4] = 0; >
signature.asc
Description: OpenPGP digital signature