zephyr/arch/riscv
Peter Mitsis 0bcdae2c62 kernel: Add CONFIG_ARCH_HAS_DIRECTED_IPIS
Platforms that support IPIs allow them to be broadcast via the
new arch_sched_broadcast_ipi() routine (replacing arch_sched_ipi()).
Those that also allow IPIs to be directed to specific CPUs may
use arch_sched_directed_ipi() to do so.

As the kernel has the capability to track which CPUs may need an IPI
(see CONFIG_IPI_OPTIMIZE), this commit updates the signalling of
tracked IPIs to use the directed version if supported; otherwise
they continue to use the broadcast version.

Platforms that allow directed IPIs may see a significant reduction
in the number of IPI related ISRs when CONFIG_IPI_OPTIMIZE is
enabled and the number of CPUs increases.  These platforms can be
identified by the Kconfig option CONFIG_ARCH_HAS_DIRECTED_IPIS.

Signed-off-by: Peter Mitsis <peter.mitsis@intel.com>
2024-06-04 22:35:54 -04:00
..
core kernel: Add CONFIG_ARCH_HAS_DIRECTED_IPIS 2024-06-04 22:35:54 -04:00
include arch: define `struct arch_esf` and deprecate `z_arch_esf_t` 2024-06-04 14:02:51 -05:00
CMakeLists.txt
Kconfig arch: rename all esf struct to `struct arch_esf` 2024-06-04 14:02:51 -05:00
Kconfig.isa