Files

69 lines
1.4 KiB
C

/*
* Copyright (c) 2021-2022 Amlogic, Inc. All rights reserved.
*
* SPDX-License-Identifier: MIT
*/
#ifndef __IRQ_H_
#define __IRQ_H_
extern void eclic_irq20_handler(void);
extern void eclic_irq21_handler(void);
extern void eclic_irq22_handler(void);
extern void eclic_irq23_handler(void);
extern void eclic_irq24_handler(void);
extern void eclic_irq50_handler(void);
#define CONCAT_STAGE_1(w, x, y, z) w##x##y##z
#define CONCAT2(w, x) w##x
#define CONCAT3(w, x, y) w##x##y
#define CONCAT4(w, x, y, z) CONCAT_STAGE_1(w, x, y, z)
/* Helper macros to build the IRQ handler and priority struct names */
#define IRQ_HANDLER(irqname) CONCAT3(eclic_irq, irqname, _handler)
#define DECLARE_IRQ(irq, routine)
/* IRQ_NUM define list */
#define IRQ_NUM_MAX 107
/* ao rtc irq20 rtc */
#define IRQ_NUM_RTC 20
/* ao rtc irq27 ir_rx1 */
#define IRQ_NUM_IRIN 27
/* ao rtc irq31 uart_a */
#define IRQ_NUM_AO_UART_A 31
/* ao rtc irq34 ao_isp */
#define IRQ_NUM_AO_ISP 34
/* ao rtc irq36 timerA */
#define IRQ_NUM_AO_TIMERA 36
/* ao rtc irq39 ao_watchdog */
#define IRQ_WATCHDOG 39
/* ee wol */
#define IRQ_ETH_PMT_NUM 106
/* ee mbox to ao */
#define IRQ_NUM_MBOX 82
/* ee timerA~timerJ */
#define IRQ_NUM_TIMERA 44
#define IRQ_NUM_TIMERB 45
#define IRQ_NUM_TIMERC 46
#define IRQ_NUM_TIMERD 47
#define IRQ_NUM_TIMERG 48
#define IRQ_NUM_TIMERH 49
#define IRQ_NUM_TIMERI 50
#define IRQ_NUM_TIMERJ 51
#define IRQ_NUM_TIMER IRQ_NUM_AO_TIMERA
#define IRQ_TIMER_PROI 8
#endif