diff options
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 | |||
| 385 | 385 | ||
| 386 | If unsure, say N. | 386 | If unsure, say N. |
| 387 | 387 | ||
| 388 | config USER_ABI_CALL0 | ||
| 389 | bool | ||
| 390 | |||
| 391 | choice | ||
| 392 | prompt "Userspace ABI" | ||
| 393 | default USER_ABI_DEFAULT | ||
| 394 | help | ||
| 395 | Select supported userspace ABI. | ||
| 396 | |||
| 397 | If unsure, choose the default ABI. | ||
| 398 | |||
| 399 | config USER_ABI_DEFAULT | ||
| 400 | bool "Default ABI only" | ||
| 401 | help | ||
| 402 | Assume default userspace ABI. For XEA2 cores it is windowed ABI. | ||
| 403 | call0 ABI binaries may be run on such kernel, but signal delivery | ||
| 404 | will not work correctly for them. | ||
| 405 | |||
| 406 | config USER_ABI_CALL0_ONLY | ||
| 407 | bool "Call0 ABI only" | ||
| 408 | select USER_ABI_CALL0 | ||
| 409 | help | ||
| 410 | Select this option to support only call0 ABI in userspace. | ||
| 411 | Windowed ABI binaries will crash with a segfault caused by | ||
| 412 | an illegal instruction exception on the first 'entry' opcode. | ||
| 413 | |||
| 414 | Choose this option if you're planning to run only user code | ||
| 415 | built with call0 ABI. | ||
| 416 | |||
| 417 | config USER_ABI_CALL0_PROBE | ||
| 418 | bool "Support both windowed and call0 ABI by probing" | ||
| 419 | select USER_ABI_CALL0 | ||
| 420 | help | ||
| 421 | Select this option to support both windowed and call0 userspace | ||
| 422 | ABIs. When enabled all processes are started with PS.WOE disabled | ||
| 423 | and a fast user exception handler for an illegal instruction is | ||
| 424 | used to turn on PS.WOE bit on the first 'entry' opcode executed by | ||
| 425 | the userspace. | ||
| 426 | |||
| 427 | This option should be enabled for the kernel that must support | ||
| 428 | both call0 and windowed ABIs in userspace at the same time. | ||
| 429 | |||
| 430 | Note that Xtensa ISA does not guarantee that entry opcode will | ||
| 431 | raise an illegal instruction exception on cores with XEA2 when | ||
| 432 | PS.WOE is disabled, check whether the target core supports it. | ||
| 433 | |||
| 434 | endchoice | ||
| 435 | |||
| 388 | endmenu | 436 | endmenu |
| 389 | 437 | ||
| 390 | config XTENSA_CALIBRATE_CCOUNT | 438 | config XTENSA_CALIBRATE_CCOUNT |
