Hi All, I just noticed that in setup.c there is this little bit: s = read_32bit_cp0_register(CP0_STATUS); s &= ~(ST0_CU1|ST0_CU2|ST0_CU3|ST0_KX|ST0_SX|ST0_FR); s |= ST0_CU0; write_32bit_cp0_register(CP0_STATUS, s); And it doesn't mask off ST0_UX - is this an oversight? With my RM7K the kernel is called with ST0_UX set, and since it doesn't clear it the XTLB handler is called - which faults things.. So, would this patch be appropriate in general: --- setup.c 2001/12/02 11:34:38 1.96 +++ setup.c 2002/01/09 08:05:43 @@ -558,7 +558,7 @@ /* Disable coprocessors and set FPU for 16 FPRs */ s = read_32bit_cp0_register(CP0_STATUS); - s &= ~(ST0_CU1|ST0_CU2|ST0_CU3|ST0_KX|ST0_SX|ST0_FR); + s &= ~(ST0_CU1|ST0_CU2|ST0_CU3|ST0_UX|ST0_KX|ST0_SX|ST0_FR); s |= ST0_CU0; write_32bit_cp0_register(CP0_STATUS, s); or is it better to make the xtlb handler work in the 32 bit case? Thanks, Jason