[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH v1 00/14] riscv: introduce basic UART support and interrupts for hypervisor mode
The patch series introduces basic UART support (in interrupt mode) and support of interrupts for hypervisor mode. To implement this the following has been added: - APLIC and IMISC initialization. - Introduce of intc_hw_operations abstraction. - Introduce some APLIC and IMSIC operations. - Introduce init_IRQ(), platform_get_irq() and setup_irq() functions. - Update do_trap() handler to handle IRQ_S_EXT. - Introduce some other functions such as: get_s_time(), smp_clear_cpu_maps(), ioremap(). - Enable UART. Oleksii Kurochko (14): xen/riscv: implement get_s_time() xen/riscv: introduce smp_clear_cpu_maps() xen/riscv: introduce ioremap() xen/riscv: introduce init_IRQ() xen/riscv: introduce platform_get_irq() xen/riscv: riscv_of_processor_hartid() implementation xen/riscv: Introduce intc_hw_operations abstraction xen/riscv: imsic_init() implementation xen/riscv: aplic_init() implementation xen/riscv: implementation of aplic and imsic operations xen/riscv: add external interrupt handling for hypervisor mode xen/riscv: implement setup_irq() xen/riscv: initialize interrupt controller xen/riscv: add basic UART support xen/arch/riscv/Kconfig | 13 + xen/arch/riscv/Makefile | 3 + xen/arch/riscv/aplic.c | 302 +++++++++++++++++++++++ xen/arch/riscv/imsic.c | 374 +++++++++++++++++++++++++++++ xen/arch/riscv/include/asm/aplic.h | 89 +++++++ xen/arch/riscv/include/asm/imsic.h | 88 +++++++ xen/arch/riscv/include/asm/intc.h | 31 +++ xen/arch/riscv/include/asm/irq.h | 37 ++- xen/arch/riscv/include/asm/smp.h | 5 + xen/arch/riscv/include/asm/time.h | 6 + xen/arch/riscv/intc.c | 58 +++++ xen/arch/riscv/irq.c | 223 +++++++++++++++++ xen/arch/riscv/pt.c | 19 ++ xen/arch/riscv/setup.c | 23 ++ xen/arch/riscv/smpboot.c | 83 +++++++ xen/arch/riscv/stubs.c | 16 -- xen/arch/riscv/time.c | 7 + xen/arch/riscv/traps.c | 18 ++ xen/drivers/char/Kconfig | 1 - 19 files changed, 1378 insertions(+), 18 deletions(-) create mode 100644 xen/arch/riscv/imsic.c create mode 100644 xen/arch/riscv/include/asm/aplic.h create mode 100644 xen/arch/riscv/include/asm/imsic.h create mode 100644 xen/arch/riscv/irq.c create mode 100644 xen/arch/riscv/smpboot.c -- 2.49.0
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |