Zephyr API Documentation 4.0.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
riscv_plic.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2022 Carlo Caione <ccaione@baylibre.com>
3 *
4 * SPDX-License-Identifier: Apache-2.0
5 */
6
12#ifndef ZEPHYR_INCLUDE_DRIVERS_RISCV_PLIC_H_
13#define ZEPHYR_INCLUDE_DRIVERS_RISCV_PLIC_H_
14
15#include <zephyr/device.h>
16
23
30
38
46
56
63
71unsigned int riscv_plic_get_irq(void);
72
80const struct device *riscv_plic_get_dev(void);
81
82#endif /* ZEPHYR_INCLUDE_DRIVERS_RISCV_PLIC_H_ */
unsigned int riscv_plic_get_irq(void)
Get active interrupt ID.
int riscv_plic_irq_set_affinity(uint32_t irq, uint32_t cpumask)
Set IRQ affinity.
void riscv_plic_irq_disable(uint32_t irq)
Disable interrupt.
const struct device * riscv_plic_get_dev(void)
Get active interrupt controller device.
void riscv_plic_irq_enable(uint32_t irq)
Enable interrupt.
int riscv_plic_irq_is_enabled(uint32_t irq)
Check if an interrupt is enabled.
void riscv_plic_set_priority(uint32_t irq, uint32_t prio)
Set interrupt priority.
void riscv_plic_irq_set_pending(uint32_t irq)
Set interrupt as pending.
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
Runtime device structure (in ROM) per driver instance.
Definition device.h:412