]> git.baikalelectronics.ru Git - uboot.git/commit
microblaze: exception: fix return address for delay slot exceptions
authorOvidiu Panait <ovidiu.panait@windriver.com>
Sun, 13 Feb 2022 08:09:22 +0000 (10:09 +0200)
committerMichal Simek <michal.simek@xilinx.com>
Tue, 15 Feb 2022 12:11:43 +0000 (13:11 +0100)
commitcdca62f66cc2c4456343696d11ad61575c763c9c
treeaeee6ced6a02ba6d2f266cdaf102d9b7db4758d7
parent99c30309a11a6d8a3887f04cdea5f7c8510c71f9
microblaze: exception: fix return address for delay slot exceptions

According to the MicroBlaze reference manual (xilinx2021.2/ug984/page-37):
"""
If an exception is caused by an instruction in a delay slot (that is,
ESR[DS]=1), the exception handler should return execution to
the address stored in BTR instead of the normal exception return
address stored in R17.
"""

Adjust the code to print the proper return address for delay slot
exceptions.

Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
Link: https://lore.kernel.org/r/20220213080925.1548411-4-ovidiu.panait@windriver.com
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
arch/microblaze/cpu/exception.c