2020-09-09 16:45:45 +08:00
|
|
|
/*
|
|
|
|
* Copyright (c) 2020 ITE Corporation. All Rights Reserved.
|
|
|
|
*
|
|
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
|
|
*/
|
|
|
|
|
|
|
|
/*
|
|
|
|
* common interrupt management code for riscv SOCs supporting the riscv
|
|
|
|
* privileged architecture specification
|
|
|
|
*/
|
2022-05-09 19:56:13 +08:00
|
|
|
#include <zephyr/kernel_structs.h>
|
2024-01-24 17:35:04 +08:00
|
|
|
#include <zephyr/offsets.h>
|
2022-05-09 19:56:13 +08:00
|
|
|
#include <zephyr/toolchain.h>
|
|
|
|
#include <zephyr/linker/sections.h>
|
2020-09-09 16:45:45 +08:00
|
|
|
#include <soc.h>
|
|
|
|
|
|
|
|
/* exports */
|
|
|
|
GTEXT(__soc_handle_irq)
|
|
|
|
|
|
|
|
/*
|
|
|
|
* SOC-specific function to handle pending IRQ number generating the interrupt.
|
|
|
|
* Exception number is given as parameter via register a0.
|
2022-05-24 17:06:57 +08:00
|
|
|
* Jump to get_irq() function directly and return to caller by its
|
|
|
|
* ret instruction.
|
2020-09-09 16:45:45 +08:00
|
|
|
*/
|
|
|
|
SECTION_FUNC(exception.other, __soc_handle_irq)
|
2022-05-24 17:06:57 +08:00
|
|
|
j get_irq
|