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 /* 18 * Interrupt number used for passing control from FIQ to IRQ. 19 * IRQ12, described as reserved, has been selected. 20 */ 21 #define INT_DEFERRED_FIQ INT_1510_RES12 22 /* 23 * Base address of an interrupt handler that the INT_DEFERRED_FIQ belongs to. 24 */ 25 #if (INT_DEFERRED_FIQ < IH2_BASE) 26 #define DEFERRED_FIQ_IH_BASE OMAP_IH1_BASE 27 #else 28 #define DEFERRED_FIQ_IH_BASE OMAP_IH2_BASE 29 #endif 30 31 /* 32 * These are the offsets from the beginning of the fiq_buffer. They are put here 33 * since the buffer and header need to be accessed by drivers servicing devices 34 * which generate GPIO interrupts - e.g. keyboard, modem, hook switch. 35 */ 36 #define FIQ_MASK 0 37 #define FIQ_STATE 1 38 #define FIQ_KEYS_CNT 2 39 #define FIQ_TAIL_OFFSET 3 40 #define FIQ_HEAD_OFFSET 4 41 #define FIQ_BUF_LEN 5 42 #define FIQ_KEY 6 43 #define FIQ_MISSED_KEYS 7 44 #define FIQ_BUFFER_START 8 45 #define FIQ_GPIO_INT_MASK 9 46 #define FIQ_KEYS_HICNT 10 47 #define FIQ_IRQ_PEND 11 48 #define FIQ_SIR_CODE_L1 12 49 #define IRQ_SIR_CODE_L2 13 50 51 #define FIQ_CNT_INT_00 14 52 #define FIQ_CNT_INT_KEY 15 53 #define FIQ_CNT_INT_MDM 16 54 #define FIQ_CNT_INT_03 17 55 #define FIQ_CNT_INT_HSW 18 56 #define FIQ_CNT_INT_05 19 57 #define FIQ_CNT_INT_06 20 58 #define FIQ_CNT_INT_07 21 59 #define FIQ_CNT_INT_08 22 60 #define FIQ_CNT_INT_09 23 61 #define FIQ_CNT_INT_10 24 62 #define FIQ_CNT_INT_11 25 63 #define FIQ_CNT_INT_12 26 64 #define FIQ_CNT_INT_13 27 65 #define FIQ_CNT_INT_14 28 66 #define FIQ_CNT_INT_15 29 67 68 #define FIQ_CIRC_BUFF 30 /*Start of circular buffer */ 69 70 #ifndef __ASSEMBLER__ 71 extern unsigned int fiq_buffer[]; 72 extern unsigned char qwerty_fiqin_start, qwerty_fiqin_end; 73 74 extern void __init ams_delta_init_fiq(void); 75 #endif 76 77 #endif 78