Skip to content

Commit f7c10ac

Browse files
andyrosskartben
authored andcommitted
arch: Let CONFIG_IRQ_OFFLOAD_NESTED be overridable
This is currently selected by the arch, but some devices (in paticular xtensa ones which have configurable interrupt setups) might not actually be able to effect an irq_offload() from within an ISR even though we have code for it. Make this a default and not a select so that lower layers can override the setting. Signed-off-by: Andy Ross <[email protected]>
1 parent 8ba134c commit f7c10ac

File tree

1 file changed

+5
-8
lines changed

1 file changed

+5
-8
lines changed

arch/Kconfig

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,6 @@ config ARM64
5050
select ARCH_HAS_THREAD_LOCAL_STORAGE
5151
select USE_SWITCH
5252
select USE_SWITCH_SUPPORTED
53-
select IRQ_OFFLOAD_NESTED if IRQ_OFFLOAD
5453
select BARRIER_OPERATIONS_ARCH
5554
select ARCH_HAS_DIRECTED_IPIS
5655
select ARCH_HAS_DEMAND_PAGING
@@ -95,7 +94,6 @@ config X86
9594
select ARCH_HAS_THREAD_LOCAL_STORAGE
9695
select ARCH_HAS_DEMAND_PAGING if !X86_64
9796
select ARCH_HAS_DEMAND_MAPPING if ARCH_HAS_DEMAND_PAGING
98-
select IRQ_OFFLOAD_NESTED if IRQ_OFFLOAD
9997
select NEED_LIBC_MEM_PARTITION if USERSPACE && TIMING_FUNCTIONS \
10098
&& !BOARD_HAS_TIMING_FUNCTIONS \
10199
&& !SOC_HAS_TIMING_FUNCTIONS
@@ -123,7 +121,6 @@ config RISCV
123121
select ARCH_SUPPORTS_EMPTY_IRQ_SPURIOUS
124122
select ARCH_HAS_CODE_DATA_RELOCATION
125123
select ARCH_HAS_THREAD_LOCAL_STORAGE
126-
select IRQ_OFFLOAD_NESTED if IRQ_OFFLOAD
127124
select USE_SWITCH_SUPPORTED
128125
select USE_SWITCH
129126
select SCHED_IPI_SUPPORTED if SMP
@@ -138,7 +135,6 @@ config XTENSA
138135
select ARCH_IS_SET
139136
select USE_SWITCH
140137
select USE_SWITCH_SUPPORTED
141-
select IRQ_OFFLOAD_NESTED if IRQ_OFFLOAD
142138
select ARCH_HAS_CODE_DATA_RELOCATION
143139
select ARCH_HAS_TIMING_FUNCTIONS
144140
select ARCH_MEM_DOMAIN_DATA if USERSPACE
@@ -581,11 +577,12 @@ config IRQ_OFFLOAD
581577
config IRQ_OFFLOAD_NESTED
582578
bool "irq_offload() supports nested IRQs"
583579
depends on IRQ_OFFLOAD
580+
default y if ARM64 || X86 || RISCV || XTENSA
584581
help
585-
When set by the arch layer, indicates that irq_offload() may
586-
legally be called in interrupt context to cause a
587-
synchronous nested interrupt on the current CPU. Not all
588-
hardware is capable.
582+
When set by the platform layers, indicates that
583+
irq_offload() may legally be called in interrupt context to
584+
cause a synchronous nested interrupt on the current CPU.
585+
Not all hardware is capable.
589586

590587
config EXCEPTION_DEBUG
591588
bool "Unhandled exception debugging"

0 commit comments

Comments
 (0)