openrisc: use shadow registers to save regs on exception
authorStefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Sun, 11 May 2014 09:08:37 +0000 (12:08 +0300)
committerStafford Horne <shorne@gmail.com>
Fri, 3 Nov 2017 05:01:11 +0000 (14:01 +0900)
commit91993c8c2ed52781a0f42bf7f40e28adc96e2bb2
tree4da05548436187fe5cc787f200284f16454fa584
parentddc92bec6d7d7e8a07794a8dbeade19476891b53
openrisc: use shadow registers to save regs on exception

Previously, the area between 0x0-0x100 have been used as a "scratch"
memory area to temporarily store regs during exception entry. In a
multi-core environment, this will not work.

This change is to use shadow registers for nested context.

Currently only the "critical" temp load/stores are covered, the
EMERGENCY_PRINT ones are left as is (when they are used, it's game over
anyway), they need to be handled as well in the future.

Signed-off-by: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Signed-off-by: Stafford Horne <shorne@gmail.com>
arch/openrisc/Kconfig
arch/openrisc/kernel/head.S