1 /* 2 * EHV_PIC private definitions and structure. 3 * 4 * Copyright 2008-2010 Freescale Semiconductor, Inc. 5 * 6 * This file is licensed under the terms of the GNU General Public License 7 * version 2. This program is licensed "as is" without any warranty of any 8 * kind, whether express or implied. 9 */ 10 #ifndef __EHV_PIC_H__ 11 #define __EHV_PIC_H__ 12 13 #include <linux/irq.h> 14 15 #define NR_EHV_PIC_INTS 1024 16 17 #define EHV_PIC_INFO(name) EHV_PIC_##name 18 19 #define EHV_PIC_VECPRI_POLARITY_NEGATIVE 0 20 #define EHV_PIC_VECPRI_POLARITY_POSITIVE 1 21 #define EHV_PIC_VECPRI_SENSE_EDGE 0 22 #define EHV_PIC_VECPRI_SENSE_LEVEL 0x2 23 #define EHV_PIC_VECPRI_POLARITY_MASK 0x1 24 #define EHV_PIC_VECPRI_SENSE_MASK 0x2 25 26 struct ehv_pic { 27 /* The remapper for this EHV_PIC */ 28 struct irq_domain *irqhost; 29 30 /* The "linux" controller struct */ 31 struct irq_chip hc_irq; 32 33 /* core int flag */ 34 int coreint_flag; 35 }; 36 37 void ehv_pic_init(void); 38 unsigned int ehv_pic_get_irq(void); 39 40 #endif /* __EHV_PIC_H__ */ 41