diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2019-09-17 14:27:30 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2019-09-17 14:27:30 -0700 |
commit | 6dec8c15e5faa2a3c02d2e1d1b03b926b545ec0a (patch) | |
tree | 71d5a41de2c90d4f49b77f5397b2d6bbb18f0d31 /arch/xtensa/Kconfig | |
parent | d590284419b1d7cc2dc646e9bdde4da19061cf0f (diff) | |
parent | 982792f45894878b9ec13df81e6e02209b34cb11 (diff) | |
download | lwn-6dec8c15e5faa2a3c02d2e1d1b03b926b545ec0a.tar.gz lwn-6dec8c15e5faa2a3c02d2e1d1b03b926b545ec0a.zip |
Merge tag 'xtensa-20190917' of git://github.com/jcmvbkbc/linux-xtensa
Pull Xtensa updates from Max Filippov:
- add support for xtensa call0 ABI in userspace
- update xtensa virt board DTS for PCI root complex in KIO range
- remove free_initrd_mem
* tag 'xtensa-20190917' of git://github.com/jcmvbkbc/linux-xtensa:
xtensa: virt: move PCI root complex to KIO range
xtensa: add support for call0 ABI in userspace
xtensa: clean up PS_WOE_BIT usage
xtensa: remove free_initrd_mem
Diffstat (limited to 'arch/xtensa/Kconfig')
-rw-r--r-- | arch/xtensa/Kconfig | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/arch/xtensa/Kconfig b/arch/xtensa/Kconfig index ebc135bda921..fb64469ca8f0 100644 --- a/arch/xtensa/Kconfig +++ b/arch/xtensa/Kconfig @@ -385,6 +385,54 @@ config FAST_SYSCALL_SPILL_REGISTERS If unsure, say N. +config USER_ABI_CALL0 + bool + +choice + prompt "Userspace ABI" + default USER_ABI_DEFAULT + help + Select supported userspace ABI. + + If unsure, choose the default ABI. + +config USER_ABI_DEFAULT + bool "Default ABI only" + help + Assume default userspace ABI. For XEA2 cores it is windowed ABI. + call0 ABI binaries may be run on such kernel, but signal delivery + will not work correctly for them. + +config USER_ABI_CALL0_ONLY + bool "Call0 ABI only" + select USER_ABI_CALL0 + help + Select this option to support only call0 ABI in userspace. + Windowed ABI binaries will crash with a segfault caused by + an illegal instruction exception on the first 'entry' opcode. + + Choose this option if you're planning to run only user code + built with call0 ABI. + +config USER_ABI_CALL0_PROBE + bool "Support both windowed and call0 ABI by probing" + select USER_ABI_CALL0 + help + Select this option to support both windowed and call0 userspace + ABIs. When enabled all processes are started with PS.WOE disabled + and a fast user exception handler for an illegal instruction is + used to turn on PS.WOE bit on the first 'entry' opcode executed by + the userspace. + + This option should be enabled for the kernel that must support + both call0 and windowed ABIs in userspace at the same time. + + Note that Xtensa ISA does not guarantee that entry opcode will + raise an illegal instruction exception on cores with XEA2 when + PS.WOE is disabled, check whether the target core supports it. + +endchoice + endmenu config XTENSA_CALIBRATE_CCOUNT |