MIPS: Clear ISA bit correctly in get_frame_info()
am: d0eae5bbd1
Change-Id: If9cf0de485b0caf623a10b330f9ca3ca743c0e3f
diff --git a/arch/mips/kernel/process.c b/arch/mips/kernel/process.c
index 9514e5f..c0aa99b 100644
--- a/arch/mips/kernel/process.c
+++ b/arch/mips/kernel/process.c
@@ -303,17 +303,14 @@
static int get_frame_info(struct mips_frame_info *info)
{
-#ifdef CONFIG_CPU_MICROMIPS
- union mips_instruction *ip = (void *) (((char *) info->func) - 1);
-#else
- union mips_instruction *ip = info->func;
-#endif
+ union mips_instruction *ip;
unsigned max_insns = info->func_size / sizeof(union mips_instruction);
unsigned i;
info->pc_offset = -1;
info->frame_size = 0;
+ ip = (void *)msk_isa16_mode((ulong)info->func);
if (!ip)
goto err;