Monday, August 2, 2010

Why the TLB handler didn't work and how I solved?

ERL bit turned on at first because it's not initialized correctly, ERET raises Exception. Simple. Nah.....
The code from sgi port supposed to bootloader initialized it, but in this hardware, bootloader actually doesn't do that.

        mfc0    v0, COP_0_STATUS_REG
-       li      v1, ~SR_INT_ENAB
+       li      v1, ~(SR_INT_ENAB | SR_ERL | SR_EXL)
        and     v0, v1
       mtc0    v0, COP_0_STATUS_REG

No comments:

Post a Comment