1 /* 2 * arch/arm/mach-omap1/include/ams-delta-fiq.h 3 * 4 * Taken from the original Amstrad modifications to fiq.h 5 * 6 * Copyright (c) 2004 Amstrad Plc 7 * Copyright (c) 2006 Matt Callow 8 * Copyright (c) 2010 Janusz Krzysztofik 9 * 10 * This program is free software; you can redistribute it and/or modify 11 * it under the terms of the GNU General Public License version 2 as 12 * published by the Free Software Foundation. 13 */ 14 #ifndef __AMS_DELTA_FIQ_H 15 #define __AMS_DELTA_FIQ_H 16 17 #include <plat/irqs.h> 18 19 /* 20 * Interrupt number used for passing control from FIQ to IRQ. 21 * IRQ12, described as reserved, has been selected. 22 */ 23 #define INT_DEFERRED_FIQ INT_1510_RES12 24 /* 25 * Base address of an interrupt handler that the INT_DEFERRED_FIQ belongs to. 26 */ 27 #if (INT_DEFERRED_FIQ < IH2_BASE) 28 #define DEFERRED_FIQ_IH_BASE OMAP_IH1_BASE 29 #else 30 #define DEFERRED_FIQ_IH_BASE OMAP_IH2_BASE 31 #endif 32 33 /* 34 * These are the offsets from the beginning of the fiq_buffer. They are put here 35 * since the buffer and header need to be accessed by drivers servicing devices 36 * which generate GPIO interrupts - e.g. keyboard, modem, hook switch. 37 */ 38 #define FIQ_MASK 0 39 #define FIQ_STATE 1 40 #define FIQ_KEYS_CNT 2 41 #define FIQ_TAIL_OFFSET 3 42 #define FIQ_HEAD_OFFSET 4 43 #define FIQ_BUF_LEN 5 44 #define FIQ_KEY 6 45 #define FIQ_MISSED_KEYS 7 46 #define FIQ_BUFFER_START 8 47 #define FIQ_GPIO_INT_MASK 9 48 #define FIQ_KEYS_HICNT 10 49 #define FIQ_IRQ_PEND 11 50 #define FIQ_SIR_CODE_L1 12 51 #define IRQ_SIR_CODE_L2 13 52 53 #define FIQ_CNT_INT_00 14 54 #define FIQ_CNT_INT_KEY 15 55 #define FIQ_CNT_INT_MDM 16 56 #define FIQ_CNT_INT_03 17 57 #define FIQ_CNT_INT_HSW 18 58 #define FIQ_CNT_INT_05 19 59 #define FIQ_CNT_INT_06 20 60 #define FIQ_CNT_INT_07 21 61 #define FIQ_CNT_INT_08 22 62 #define FIQ_CNT_INT_09 23 63 #define FIQ_CNT_INT_10 24 64 #define FIQ_CNT_INT_11 25 65 #define FIQ_CNT_INT_12 26 66 #define FIQ_CNT_INT_13 27 67 #define FIQ_CNT_INT_14 28 68 #define FIQ_CNT_INT_15 29 69 70 #define FIQ_CIRC_BUFF 30 /*Start of circular buffer */ 71 72 #ifndef __ASSEMBLER__ 73 extern unsigned int fiq_buffer[]; 74 extern unsigned char qwerty_fiqin_start, qwerty_fiqin_end; 75 76 extern void __init ams_delta_init_fiq(void); 77 #endif 78 79 #endif 80