18c2ecf20Sopenharmony_ci/*
28c2ecf20Sopenharmony_ci * include/asm-mips/txx9irq.h
38c2ecf20Sopenharmony_ci * TX39/TX49 interrupt controller definitions.
48c2ecf20Sopenharmony_ci *
58c2ecf20Sopenharmony_ci * This file is subject to the terms and conditions of the GNU General Public
68c2ecf20Sopenharmony_ci * License.  See the file "COPYING" in the main directory of this archive
78c2ecf20Sopenharmony_ci * for more details.
88c2ecf20Sopenharmony_ci */
98c2ecf20Sopenharmony_ci#ifndef __ASM_TXX9IRQ_H
108c2ecf20Sopenharmony_ci#define __ASM_TXX9IRQ_H
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ci#include <irq.h>
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ci#ifdef CONFIG_IRQ_MIPS_CPU
158c2ecf20Sopenharmony_ci#define TXX9_IRQ_BASE	(MIPS_CPU_IRQ_BASE + 8)
168c2ecf20Sopenharmony_ci#else
178c2ecf20Sopenharmony_ci#ifdef CONFIG_I8259
188c2ecf20Sopenharmony_ci#define TXX9_IRQ_BASE	(I8259A_IRQ_BASE + 16)
198c2ecf20Sopenharmony_ci#else
208c2ecf20Sopenharmony_ci#define TXX9_IRQ_BASE	0
218c2ecf20Sopenharmony_ci#endif
228c2ecf20Sopenharmony_ci#endif
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ci#ifdef CONFIG_CPU_TX39XX
258c2ecf20Sopenharmony_ci#define TXx9_MAX_IR 16
268c2ecf20Sopenharmony_ci#else
278c2ecf20Sopenharmony_ci#define TXx9_MAX_IR 32
288c2ecf20Sopenharmony_ci#endif
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_civoid txx9_irq_init(unsigned long baseaddr);
318c2ecf20Sopenharmony_ciint txx9_irq(void);
328c2ecf20Sopenharmony_ciint txx9_irq_set_pri(int irc_irq, int new_pri);
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ci#endif /* __ASM_TXX9IRQ_H */
35