stack was misaligned

This commit is contained in:
Markus Fröschle
2013-11-19 14:59:20 +00:00
parent 1c1362f33a
commit a97d38e9f9
2 changed files with 5 additions and 2 deletions

View File

@@ -554,7 +554,9 @@ access_mmu:
move.l MCF_MMU_MMUAR,d0
cmp.l #__FASTRAM_END,d0 // above max User RAM area?
bge bus_error // -> bus error
bra _mmutr_miss // else we have an MMU TLB miss
bsr _mmutr_miss // else we have an MMU TLB miss
move.l (sp)+,d0 // restore register
rte
bus_error:
move.l (sp)+,d0 // restore register

View File

@@ -345,7 +345,7 @@ void mmu_init(void)
MCF_MMU_MMUOR_UAA; /* update allocation address field */
}
void __attribute__((interrupt)) mmutr_miss(void)
void mmutr_miss(void)
{
register uint32_t address asm("d0");
@@ -367,6 +367,7 @@ void __attribute__((interrupt)) mmutr_miss(void)
MCF_MMU_MMUOR = MCF_MMU_MMUOR_ITLB | /* instruction */
MCF_MMU_MMUOR_ACC | /* access TLB */
MCF_MMU_MMUOR_UAA; /* update allocation address field */
}