1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Header file for interrupt functions
4  *
5  * (C) Copyright 2000-2009
6  * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
7  */
8 
9 #ifndef __IRQ_FUNC_H
10 #define __IRQ_FUNC_H
11 
12 struct pt_regs;
13 struct cmd_tbl;
14 
15 typedef void (interrupt_handler_t)(void *arg);
16 
17 int interrupt_init(void);
18 void timer_interrupt(struct pt_regs *regs);
19 void external_interrupt(struct pt_regs *regs);
20 void irq_install_handler(int vec, interrupt_handler_t *handler, void *arg);
21 void irq_free_handler(int vec);
22 void reset_timer(void);
23 
24 void enable_interrupts(void);
25 int disable_interrupts(void);
26 
27 /* Implemented in $(CPU)/interrupts.c */
28 int do_irqinfo(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]);
29 
30 #endif
31