Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
riscv_aplic_direct.h
Go to the documentation of this file.
1/*
2 * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
3 * SPDX-License-Identifier: Apache-2.0
4 */
5
15
16#ifndef ZEPHYR_INCLUDE_DRIVERS_INTERRUPT_CONTROLLER_RISCV_APLIC_DIRECT_H_
17#define ZEPHYR_INCLUDE_DRIVERS_INTERRUPT_CONTROLLER_RISCV_APLIC_DIRECT_H_
18
19#include <zephyr/device.h>
20#include <zephyr/types.h>
21#include <zephyr/arch/riscv/csr.h>
22
32int riscv_aplic_direct_mode_enable(const struct device *dev, bool enable);
33
42
52
60unsigned int riscv_aplic_get_saved_irq(void);
61
70
76void aplic_irq_handler(const struct device *dev);
77
85int aplic_direct_init(const struct device *dev);
86
87#endif /* ZEPHYR_DRIVERS_INTERRUPT_CONTROLLER_INTC_RISCV_APLIC_DIRECT_H_ */
int riscv_aplic_direct_mode_enable(const struct device *dev, bool enable)
Enable or disable the APLIC delivery mode.
void aplic_irq_handler(const struct device *dev)
IRQ handler for APLIC direct-mode interrupts.
int riscv_aplic_set_priority(uint32_t local_irq, uint32_t prio)
Configure the priority for a specified interrupt source for a domain with direct delivery mode enable...
const struct device * riscv_aplic_get_saved_dev(void)
Get active interrupt controller device.
unsigned int riscv_aplic_get_saved_irq(void)
Get active interrupt ID.
int aplic_direct_init(const struct device *dev)
Initialization for APLIC with direct delivery mode enabled.
int riscv_aplic_is_enabled(uint32_t local_irq)
Check if a riscv APLIC-specific interrupt line is enabled.
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
Runtime device structure (in ROM) per driver instance.
Definition device.h:513