35 lines
786 B
C
35 lines
786 B
C
/*
|
|
* Copyright (c) 2024, Nordic Semiconductor ASA
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
#include <zephyr/kernel.h>
|
|
#include <zephyr/drivers/interrupt_controller/riscv_clic.h>
|
|
#include <hal/nrf_vpr_clic.h>
|
|
|
|
void riscv_clic_irq_enable(uint32_t irq)
|
|
{
|
|
nrf_vpr_clic_int_enable_set(NRF_VPRCLIC, irq, true);
|
|
}
|
|
|
|
void riscv_clic_irq_disable(uint32_t irq)
|
|
{
|
|
nrf_vpr_clic_int_enable_set(NRF_VPRCLIC, irq, false);
|
|
}
|
|
|
|
int riscv_clic_irq_is_enabled(uint32_t irq)
|
|
{
|
|
return nrf_vpr_clic_int_enable_check(NRF_VPRCLIC, irq);
|
|
}
|
|
|
|
void riscv_clic_irq_priority_set(uint32_t irq, uint32_t pri, uint32_t flags)
|
|
{
|
|
nrf_vpr_clic_int_priority_set(NRF_VPRCLIC, irq, NRF_VPR_CLIC_INT_TO_PRIO(pri));
|
|
}
|
|
|
|
void riscv_clic_irq_set_pending(uint32_t irq)
|
|
{
|
|
nrf_vpr_clic_int_pending_set(NRF_VPRCLIC, irq);
|
|
}
|