162306a36Sopenharmony_ci/* 262306a36Sopenharmony_ci * This file is subject to the terms and conditions of the GNU General Public 362306a36Sopenharmony_ci * License. See the file "COPYING" in the main directory of this archive 462306a36Sopenharmony_ci * for more details. 562306a36Sopenharmony_ci * 662306a36Sopenharmony_ci * Copyright (C) 2004-2008 Cavium Networks 762306a36Sopenharmony_ci */ 862306a36Sopenharmony_ci#ifndef __OCTEON_IRQ_H__ 962306a36Sopenharmony_ci#define __OCTEON_IRQ_H__ 1062306a36Sopenharmony_ci 1162306a36Sopenharmony_ci#define NR_IRQS OCTEON_IRQ_LAST 1262306a36Sopenharmony_ci#define MIPS_CPU_IRQ_BASE OCTEON_IRQ_SW0 1362306a36Sopenharmony_ci 1462306a36Sopenharmony_cienum octeon_irq { 1562306a36Sopenharmony_ci/* 1 - 8 represent the 8 MIPS standard interrupt sources */ 1662306a36Sopenharmony_ci OCTEON_IRQ_SW0 = 1, 1762306a36Sopenharmony_ci OCTEON_IRQ_SW1, 1862306a36Sopenharmony_ci/* CIU0, CUI2, CIU4 are 3, 4, 5 */ 1962306a36Sopenharmony_ci OCTEON_IRQ_5 = 6, 2062306a36Sopenharmony_ci OCTEON_IRQ_PERF, 2162306a36Sopenharmony_ci OCTEON_IRQ_TIMER, 2262306a36Sopenharmony_ci/* sources in CIU_INTX_EN0 */ 2362306a36Sopenharmony_ci OCTEON_IRQ_WORKQ0, 2462306a36Sopenharmony_ci OCTEON_IRQ_WDOG0 = OCTEON_IRQ_WORKQ0 + 64, 2562306a36Sopenharmony_ci OCTEON_IRQ_MBOX0 = OCTEON_IRQ_WDOG0 + 32, 2662306a36Sopenharmony_ci OCTEON_IRQ_MBOX1, 2762306a36Sopenharmony_ci OCTEON_IRQ_MBOX2, 2862306a36Sopenharmony_ci OCTEON_IRQ_MBOX3, 2962306a36Sopenharmony_ci OCTEON_IRQ_PCI_INT0, 3062306a36Sopenharmony_ci OCTEON_IRQ_PCI_INT1, 3162306a36Sopenharmony_ci OCTEON_IRQ_PCI_INT2, 3262306a36Sopenharmony_ci OCTEON_IRQ_PCI_INT3, 3362306a36Sopenharmony_ci OCTEON_IRQ_PCI_MSI0, 3462306a36Sopenharmony_ci OCTEON_IRQ_PCI_MSI1, 3562306a36Sopenharmony_ci OCTEON_IRQ_PCI_MSI2, 3662306a36Sopenharmony_ci OCTEON_IRQ_PCI_MSI3, 3762306a36Sopenharmony_ci 3862306a36Sopenharmony_ci OCTEON_IRQ_TWSI, 3962306a36Sopenharmony_ci OCTEON_IRQ_TWSI2, 4062306a36Sopenharmony_ci OCTEON_IRQ_RML, 4162306a36Sopenharmony_ci OCTEON_IRQ_TIMER0, 4262306a36Sopenharmony_ci OCTEON_IRQ_TIMER1, 4362306a36Sopenharmony_ci OCTEON_IRQ_TIMER2, 4462306a36Sopenharmony_ci OCTEON_IRQ_TIMER3, 4562306a36Sopenharmony_ci#ifndef CONFIG_PCI_MSI 4662306a36Sopenharmony_ci OCTEON_IRQ_LAST = 127 4762306a36Sopenharmony_ci#endif 4862306a36Sopenharmony_ci}; 4962306a36Sopenharmony_ci 5062306a36Sopenharmony_ci#ifdef CONFIG_PCI_MSI 5162306a36Sopenharmony_ci/* 256 - 511 represent the MSI interrupts 0-255 */ 5262306a36Sopenharmony_ci#define OCTEON_IRQ_MSI_BIT0 (256) 5362306a36Sopenharmony_ci 5462306a36Sopenharmony_ci#define OCTEON_IRQ_MSI_LAST (OCTEON_IRQ_MSI_BIT0 + 255) 5562306a36Sopenharmony_ci#define OCTEON_IRQ_LAST (OCTEON_IRQ_MSI_LAST + 1) 5662306a36Sopenharmony_ci#endif 5762306a36Sopenharmony_ci 5862306a36Sopenharmony_ci#endif 59