On Wed, Jun 5, 2013 at 11:15 PM, Steven J. Hill <Steven.Hill@xxxxxxxxxx> wrote: > On 06/05/2013 03:53 PM, David Daney wrote: >> >> >> You can only manipulate this bit if you know microMIPS is supported. So >> I think you should either not touch it for the non-microMIPS case, or >> make the write conditional on the presence of microMIPS support in the >> CPU. >> > I decided to surround with SYS_SUPPORTS_MICROMIPS so the function could be > optimized out in v7 of the patch. Since this is (AFAICT) run after cpu_probe, and cpu probe sets MIPS_CPU_MICROMIPS in options[0] if config3 has MIPS_CONF3_ISA set (as seen in the context), couldn't you do just the following in cpu_trap: if (cpu_has_mmips) { unsigned int config3 = read_c0_config3(); if (IS_ENABLED(CONFIG_CPU_MICROMIPS)) write_c0_config3(config3 | MIPS_CONF3_ISA_OE); else write_c0_config3(config3 & ~MIPS_CONF3_ISA_OE); } Regards Jonas