Lines Matching +full:irq +full:- +full:prio
2 * Copyright (c) 2017 Jean-Paul Etienne <fractalclone@gmail.com>
4 * SPDX-License-Identifier: Apache-2.0
12 #include <zephyr/irq.h>
20 void arch_irq_enable(unsigned int irq) in arch_irq_enable() argument
22 riscv_clic_irq_enable(irq); in arch_irq_enable()
25 void arch_irq_disable(unsigned int irq) in arch_irq_disable() argument
27 riscv_clic_irq_disable(irq); in arch_irq_disable()
30 int arch_irq_is_enabled(unsigned int irq) in arch_irq_is_enabled() argument
32 return riscv_clic_irq_is_enabled(irq); in arch_irq_is_enabled()
35 void z_riscv_irq_priority_set(unsigned int irq, unsigned int prio, uint32_t flags) in z_riscv_irq_priority_set() argument
37 riscv_clic_irq_priority_set(irq, prio, flags); in z_riscv_irq_priority_set()
40 void z_riscv_irq_vector_set(unsigned int irq) in z_riscv_irq_vector_set() argument
43 riscv_clic_irq_vector_set(irq); in z_riscv_irq_vector_set()
45 ARG_UNUSED(irq); in z_riscv_irq_vector_set()
51 void arch_irq_enable(unsigned int irq) in arch_irq_enable() argument
56 unsigned int level = irq_get_level(irq); in arch_irq_enable()
59 riscv_plic_irq_enable(irq); in arch_irq_enable()
68 mie = csr_read_set(mie, 1 << irq); in arch_irq_enable()
71 void arch_irq_disable(unsigned int irq) in arch_irq_disable() argument
76 unsigned int level = irq_get_level(irq); in arch_irq_disable()
79 riscv_plic_irq_disable(irq); in arch_irq_disable()
88 mie = csr_read_clear(mie, 1 << irq); in arch_irq_disable()
91 int arch_irq_is_enabled(unsigned int irq) in arch_irq_is_enabled() argument
96 unsigned int level = irq_get_level(irq); in arch_irq_is_enabled()
99 return riscv_plic_irq_is_enabled(irq); in arch_irq_is_enabled()
105 return !!(mie & (1 << irq)); in arch_irq_is_enabled()
109 void z_riscv_irq_priority_set(unsigned int irq, unsigned int prio, uint32_t flags) in z_riscv_irq_priority_set() argument
111 unsigned int level = irq_get_level(irq); in z_riscv_irq_priority_set()
114 riscv_plic_set_priority(irq, prio); in z_riscv_irq_priority_set()