microblaze: start.S: add support for configurable vector base address
authorOvidiu Panait <ovidiu.panait@windriver.com>
Tue, 30 Nov 2021 16:33:56 +0000 (18:33 +0200)
committerMichal Simek <michal.simek@xilinx.com>
Wed, 5 Jan 2022 09:22:03 +0000 (10:22 +0100)
commitf149ee4c36dd907de496ff1a370adcdea5cb17ce
tree5e3dac0d39145eed4a3044be3d8a24d5072a3d28
parentb6aef109799614f1efa921bdb8a73e461d9bcbdd
microblaze: start.S: add support for configurable vector base address

Current code assumes that the vector base address is always at 0x0.
However, this value is configurable for MicroBlaze, so update the
__setup_exceptions routine to work with any vector base address.

The r4 register is reserved for the vector base address inside
__setup_exceptions and the function prologe/epilogue are also updated to
save and restore r4.

Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
Link: https://lore.kernel.org/r/20211130163358.2531677-9-ovidiu.panait@windriver.com
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
arch/microblaze/cpu/start.S