Lines Matching refs:regs

33 void check_user_fault(struct rt_hw_exp_stack *regs, uint32_t pc_adj, char *info)  in check_user_fault()  argument
35 uint32_t mode = regs->cpsr; in check_user_fault()
39 rt_kprintf("%s! pc = 0x%08x\n", info, regs->pc - pc_adj); in check_user_fault()
41 lwp_core_dump(regs, pc_adj); in check_user_fault()
47 int check_data_abort(struct rt_hw_exp_stack *regs) in check_data_abort() argument
63 regs->pc -= 8; in check_data_abort()
70 int check_prefetch_abort(struct rt_hw_exp_stack *regs) in check_prefetch_abort() argument
86 regs->pc -= 4; in check_prefetch_abort()
99 void rt_hw_show_register(struct rt_hw_exp_stack *regs) in rt_hw_show_register() argument
102 …rt_kprintf("r00:0x%08x r01:0x%08x r02:0x%08x r03:0x%08x\n", regs->r0, regs->r1, regs->r2, regs->r3… in rt_hw_show_register()
103 …rt_kprintf("r04:0x%08x r05:0x%08x r06:0x%08x r07:0x%08x\n", regs->r4, regs->r5, regs->r6, regs->r7… in rt_hw_show_register()
104 rt_kprintf("r08:0x%08x r09:0x%08x r10:0x%08x\n", regs->r8, regs->r9, regs->r10); in rt_hw_show_register()
105 rt_kprintf("fp :0x%08x ip :0x%08x\n", regs->fp, regs->ip); in rt_hw_show_register()
106 rt_kprintf("sp :0x%08x lr :0x%08x pc :0x%08x\n", regs->sp, regs->lr, regs->pc); in rt_hw_show_register()
107 rt_kprintf("cpsr:0x%08x\n", regs->cpsr); in rt_hw_show_register()
133 void rt_hw_trap_undef(struct rt_hw_exp_stack *regs) in rt_hw_trap_undef() argument
140 if (regs->cpsr & (1 << 5)) in rt_hw_trap_undef()
143 addr = regs->pc - 2; in rt_hw_trap_undef()
154 addr = regs->pc - 4; in rt_hw_trap_undef()
161 regs->pc = addr; in rt_hw_trap_undef()
167 check_user_fault(regs, 4, "User undefined instruction"); in rt_hw_trap_undef()
169 rt_unwind(regs, 4); in rt_hw_trap_undef()
171 rt_hw_show_register(regs); in rt_hw_trap_undef()
187 void rt_hw_trap_swi(struct rt_hw_exp_stack *regs) in rt_hw_trap_swi() argument
190 rt_hw_show_register(regs); in rt_hw_trap_swi()
205 void rt_hw_trap_pabt(struct rt_hw_exp_stack *regs) in rt_hw_trap_pabt() argument
208 if (dbg_check_event(regs, 4)) in rt_hw_trap_pabt()
212 if (check_prefetch_abort(regs)) in rt_hw_trap_pabt()
216 check_user_fault(regs, 4, "User prefetch abort"); in rt_hw_trap_pabt()
218 rt_unwind(regs, 4); in rt_hw_trap_pabt()
220 rt_hw_show_register(regs); in rt_hw_trap_pabt()
235 void rt_hw_trap_dabt(struct rt_hw_exp_stack *regs) in rt_hw_trap_dabt() argument
238 if (dbg_check_event(regs, 8)) in rt_hw_trap_dabt()
242 if (check_data_abort(regs)) in rt_hw_trap_dabt()
246 check_user_fault(regs, 8, "User data abort"); in rt_hw_trap_dabt()
248 rt_unwind(regs, 8); in rt_hw_trap_dabt()
250 rt_hw_show_register(regs); in rt_hw_trap_dabt()
264 void rt_hw_trap_resv(struct rt_hw_exp_stack *regs) in rt_hw_trap_resv() argument
267 rt_hw_show_register(regs); in rt_hw_trap_resv()