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>
This commit is contained in:

committed by
Stafford Horne

parent
ddc92bec6d
commit
91993c8c2e
@@ -124,6 +124,17 @@ config OPENRISC_NO_SPR_SR_DSX
|
||||
Say N here if you know that your OpenRISC processor has
|
||||
SPR_SR_DSX bit implemented. Say Y if you are unsure.
|
||||
|
||||
config OPENRISC_HAVE_SHADOW_GPRS
|
||||
bool "Support for shadow gpr files" if !SMP
|
||||
default y if SMP
|
||||
help
|
||||
Say Y here if your OpenRISC processor features shadowed
|
||||
register files. They will in such case be used as a
|
||||
scratch reg storage on exception entry.
|
||||
|
||||
On SMP systems, this feature is mandatory.
|
||||
On a unicore system it's safe to say N here if you are unsure.
|
||||
|
||||
config CMDLINE
|
||||
string "Default kernel command string"
|
||||
default ""
|
||||
|
Reference in New Issue
Block a user