From d5b1a65c0e3a0b6b46eb66d5d0284bf3a6cc1e0c Mon Sep 17 00:00:00 2001 From: Anup Patel Date: Tue, 14 Dec 2021 17:23:45 +0530 Subject: [PATCH] Add an abstract interrupt controller interface We add an abstract interrupt controller interface which can be used by devices to trigger wired interrupts. Signed-off-by: Anup Patel --- riscv/abstract_interrupt_controller.h | 14 ++++++++++++++ riscv/devices.h | 1 + 2 files changed, 15 insertions(+) create mode 100644 riscv/abstract_interrupt_controller.h diff --git a/riscv/abstract_interrupt_controller.h b/riscv/abstract_interrupt_controller.h new file mode 100644 index 00000000..946b079f --- /dev/null +++ b/riscv/abstract_interrupt_controller.h @@ -0,0 +1,14 @@ +#ifndef _RISCV_ABSTRACT_INTERRUPT_CONTROLLER_H +#define _RISCV_ABSTRACT_INTERRUPT_CONTROLLER_H + +#include "decode.h" +#include +#include + +class abstract_interrupt_controller_t { + public: + virtual void set_interrupt_level(uint32_t interrupt_id, int level) = 0; + virtual ~abstract_interrupt_controller_t() {} +}; + +#endif diff --git a/riscv/devices.h b/riscv/devices.h index 9200f29b..934904ac 100644 --- a/riscv/devices.h +++ b/riscv/devices.h @@ -4,6 +4,7 @@ #include "decode.h" #include "mmio_plugin.h" #include "abstract_device.h" +#include "abstract_interrupt_controller.h" #include "platform.h" #include #include