zephyr/drivers/interrupt_controller
Yong Cong Sin 65fb61bc68 drivers: intc: plic: implement software-generated interrupt
Implement `riscv_plic_irq_set_pending()` to trigger a
software-generated interrupt.

The "4. Interrupt Pending Bits" of the riscv-plic specs
described the reading of the pending bits, but not the writing

Since not all PLIC implementations support software-generated
interrupt, the function is compiled only when
`CONFIG_PLIC_SUPPORTS_SOFT_INTERRUPT` is enabled on PLIC that
supports it, such as the Andes' NCEPLIC100.

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2024-10-09 09:41:50 +02:00
..
CMakeLists.txt drivers: intc: add STM32WB0 GPIO interrupt controller 2024-09-12 10:03:37 +02:00
intc_arcv2_irq_unit.c
intc_cavs.c drivers: intc: update to use multi-level API 2024-05-25 11:24:32 +03:00
intc_cavs.h
intc_dw_ace.c drivers: intc: update to use multi-level API 2024-05-25 11:24:32 +03:00
intc_dw.c drivers: intc: update to use multi-level API 2024-05-25 11:24:32 +03:00
intc_dw.h
intc_eirq_nxp_s32.c drivers: nxp: convert SIUL2 drivers to native 2024-07-31 10:08:24 +02:00
intc_esp32.c drivers: esp32: update to hal_espressif v5.1 2024-04-05 13:39:53 +02:00
intc_esp32c3.c drivers: intc: esp32c2: Added support 2024-08-16 14:08:22 -04:00
intc_exti_stm32.c drivers: intc: stm32: correct inconsistent parameter names 2024-10-07 17:12:34 +01:00
intc_gd32_exti.c
intc_gic_common_priv.h
intc_gic.c drivers: intc: gic: implement set pending interrupt 2024-08-12 15:54:42 +02:00
intc_gicv3_its.c
intc_gicv3_priv.h
intc_gicv3.c arm/gicv3: set routing affinity before enable IRQ 2024-09-04 09:53:04 +02:00
intc_gpio_stm32wb0.c drivers: intc: stm32: correct inconsistent parameter names 2024-10-07 17:12:34 +01:00
intc_intel_vtd.c
intc_intel_vtd.h
intc_ioapic_priv.h
intc_ioapic.c
intc_irqmp.c
intc_ite_it8xxx2_v2.c Revert "drivers/interrupt: it8xxx2: Register interrupt number 0 to handle" 2024-08-28 06:49:36 -04:00
intc_ite_it8xxx2.c Revert "drivers/interrupt: it8xxx2: Register interrupt number 0 to handle" 2024-08-28 06:49:36 -04:00
intc_ite_it8xxx2.h
intc_loapic_spurious.S
intc_loapic.c drivers: loapic: move 'z_loapic_int_vec_set()' into pinned section 2024-06-13 17:49:01 +02:00
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 drivers: MediaTek MT8195 Audio DSP interrupt controller 2024-06-01 05:40:05 -07:00
intc_nrfx_clic.c drivers: interrupt_controller: add intc_nrfx_clic 2024-04-23 15:35:12 +02:00
intc_nrfx_clic.S drivers: interrupt_controller: add intc_nrfx_clic 2024-04-23 15:35:12 +02:00
intc_nuclei_eclic.c drivers: interrupt_controller: nuclei_eclic: always use clic common entry 2024-08-26 17:05:53 +02:00
intc_nuclei_eclic.S drivers: interrupt_controller: nuclei_eclic: always use clic common entry 2024-08-26 17:05:53 +02:00
intc_nxp_irqsteer.c drivers: interrupt_controller: irq_steer: use new multilevel irq impl 2024-05-25 11:24:32 +03:00
intc_nxp_pint.c drivers: interrupt_controller: Enable PINT-irq when deepsleep is not used 2024-04-11 11:28:52 -05:00
intc_plic.c drivers: intc: plic: implement software-generated interrupt 2024-10-09 09:41:50 +02:00
intc_renesas_ra_icu.c
intc_rv32m1_intmux.c drivers: intc: update to use multi-level API 2024-05-25 11:24:32 +03:00
intc_sam0_eic_priv.h
intc_sam0_eic.c
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 style: drivers: comply with MISRA C:2012 Rule 15.6 2024-08-20 10:33:51 +02:00
intc_system_apic.c drivers: added missing parenthesis 2024-05-17 09:29:48 +02:00
intc_vexriscv_litex.c drivers: intc: litex: add helper for interrupts 2024-08-01 08:59:37 +01:00
intc_vim.c
intc_wkpu_nxp_s32.c drivers: intc: nxp: convert wkpu to native driver 2024-08-02 15:14:33 -05:00
intc_xmc4xxx.c
Kconfig drivers: MediaTek MT8195 Audio DSP interrupt controller 2024-06-01 05:40:05 -07:00
Kconfig.cavs
Kconfig.clic drivers: interrupt_controller: nuclei_eclic: always use clic common entry 2024-08-26 17:05:53 +02:00
Kconfig.dw
Kconfig.esp32 drivers: intc: esp32c2: Added support 2024-08-16 14:08:22 -04:00
Kconfig.esp32c3 drivers: intc: esp32c2: Added support 2024-08-16 14:08:22 -04:00
Kconfig.gd32_exti
Kconfig.gic drivers: interrupt controller: update GIC Kconfigs 2024-06-18 14:33:58 -04:00
Kconfig.intel_vtd
Kconfig.it8xxx2
Kconfig.loapic
Kconfig.mtk_adsp drivers: MediaTek MT8195 Audio DSP interrupt controller 2024-06-01 05:40:05 -07:00
Kconfig.multilevel
Kconfig.multilevel.aggregator_template
Kconfig.npcx
Kconfig.nxp_irqsteer
Kconfig.nxp_pint
Kconfig.nxp_s32 drivers: intc: nxp: convert wkpu to native driver 2024-08-02 15:14:33 -05:00
Kconfig.plic drivers: intc: plic: implement software-generated interrupt 2024-10-09 09:41:50 +02:00
Kconfig.renesas_ra drivers: interrupt_controller: renesas_ra: Enable GEN_ISR_TABLES explicitly 2024-06-20 12:57:54 +02:00
Kconfig.rv32m1
Kconfig.sam0
Kconfig.shared_irq
Kconfig.stm32 drivers: intc: add STM32WB0 GPIO interrupt controller 2024-09-12 10:03:37 +02:00
Kconfig.vim
Kconfig.xec
Kconfig.xmc4xxx
wuc_ite_it8xxx2.c