zephyr/drivers/interrupt_controller
Yong Cong Sin 796b795cda drivers: intc: plic: fix for SMP=n when MP_MAX_NUM_CPUS > 1
The functions to obtain the address are hardcoded to return
the address of the first core when `CONFIG_SMP != y`, this
causes an issue with enabling an IRQ when there are more than
one core in the system (`CONFIG_MP_MAX_NUM_CPUS > 1`), as the
driver would first enable the IRQ on the first core, and when
it tries to obtain the address for the following cores and
disable the IRQ on them, the functions continue to return the
address of the first core, causing the IRQ to be disabled
on the first core.

Fix this by determine if `CONFIG_MP_MAX_NUM_CPUS > 1` instead
of `CONFIG_SMP=y` when returning the address.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2024-10-04 10:50:14 +01:00
..
CMakeLists.txt
Kconfig
Kconfig.cavs
Kconfig.clic
Kconfig.dw
Kconfig.esp32
Kconfig.esp32c3
Kconfig.gd32_exti
Kconfig.gic
Kconfig.intel_vtd
Kconfig.it8xxx2
Kconfig.loapic
Kconfig.mtk_adsp
Kconfig.multilevel
Kconfig.multilevel.aggregator_template
Kconfig.npcx
Kconfig.nxp_irqsteer
Kconfig.nxp_pint
Kconfig.nxp_s32
Kconfig.plic drivers: intc: plic: implement irq affinity configuration 2024-10-02 13:48:05 -05:00
Kconfig.renesas_ra
Kconfig.rv32m1
Kconfig.sam0
Kconfig.shared_irq
Kconfig.stm32
Kconfig.vim
Kconfig.xec
Kconfig.xmc4xxx
intc_arcv2_irq_unit.c
intc_cavs.c
intc_cavs.h
intc_dw.c
intc_dw.h
intc_dw_ace.c
intc_eirq_nxp_s32.c
intc_esp32.c
intc_esp32c3.c
intc_exti_stm32.c
intc_gd32_exti.c
intc_gic.c
intc_gic_common_priv.h
intc_gicv3.c
intc_gicv3_its.c
intc_gicv3_priv.h
intc_gpio_stm32wb0.c
intc_intel_vtd.c
intc_intel_vtd.h
intc_ioapic.c
intc_ioapic_priv.h
intc_irqmp.c
intc_ite_it8xxx2.c
intc_ite_it8xxx2.h
intc_ite_it8xxx2_v2.c
intc_loapic.c
intc_loapic_spurious.S
intc_mchp_ecia_xec.c zephyr: bulk update to DT_NODE_HAS_STATUS_OKAY 2024-10-03 17:06:52 +01:00
intc_miwu.c
intc_mtk_adsp.c
intc_nrfx_clic.S
intc_nrfx_clic.c
intc_nuclei_eclic.S
intc_nuclei_eclic.c
intc_nxp_irqsteer.c
intc_nxp_pint.c
intc_plic.c drivers: intc: plic: fix for SMP=n when MP_MAX_NUM_CPUS > 1 2024-10-04 10:50:14 +01:00
intc_renesas_ra_icu.c
intc_rv32m1_intmux.c
intc_sam0_eic.c
intc_sam0_eic_priv.h
intc_shared_irq.c drivers: intc: shared_irq: change init and isr function to static 2024-09-19 18:28:58 +01:00
intc_swerv_pic.c
intc_system_apic.c
intc_vexriscv_litex.c
intc_vim.c
intc_wkpu_nxp_s32.c
intc_xmc4xxx.c
wuc_ite_it8xxx2.c