• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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