
On Mon, Sep 01, 2014 at 09:48:07PM +0800, Peng Fan wrote:
There are two ways to run into handle_exception, run command 'kgdb' and encounter a breakpoint which triggers exception handling.
The origin source code only saves regs when first run command 'kgdb'. Take the following for example, When run 'kgdb', regs is saved to entry_regs. When run 'bootz', regs is not saved. However, if we set a breakpoint, then continue. When breakpoint is reached, run `quit`, and Now return to the instruction which follows kgdb, but not bootz.This may cause errors. So, save regs for each handle_exception call to return to the correct place. Example: Target | Host =>kgdb | (gdb)b bootz | (gdb)c =>bootz | | (gdb)Here stop because of breakpoint | (gdb)q
Signed-off-by: Peng Fan van.freenix@gmail.com
Applied to u-boot/master, thanks!