Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / arch / arm / mach-pxa / include / mach / poodle.h
1 /*
2  * arch/arm/mach-pxa/include/mach/poodle.h
3  *
4  * May be copied or modified under the terms of the GNU General Public
5  * License.  See linux/COPYING for more information.
6  *
7  * Based on:
8  *   arch/arm/mach-sa1100/include/mach/collie.h
9  *
10  * ChangeLog:
11  *   04-06-2001 Lineo Japan, Inc.
12  *   04-16-2001 SHARP Corporation
13  *   Update to 2.6 John Lenz
14  */
15 #ifndef __ASM_ARCH_POODLE_H
16 #define __ASM_ARCH_POODLE_H  1
17
18 #include "irqs.h" /* PXA_GPIO_TO_IRQ */
19
20 /*
21  * GPIOs
22  */
23 /* PXA GPIOs */
24 #define POODLE_GPIO_ON_KEY              (0)
25 #define POODLE_GPIO_AC_IN               (1)
26 #define POODLE_GPIO_CO                  16
27 #define POODLE_GPIO_TP_INT              (5)
28 #define POODLE_GPIO_TP_CS               (24)
29 #define POODLE_GPIO_WAKEUP              (11)    /* change battery */
30 #define POODLE_GPIO_GA_INT              (10)
31 #define POODLE_GPIO_IR_ON               (22)
32 #define POODLE_GPIO_HP_IN               (4)
33 #define POODLE_GPIO_CF_IRQ              (17)
34 #define POODLE_GPIO_CF_CD               (14)
35 #define POODLE_GPIO_CF_STSCHG           (14)
36 #define POODLE_GPIO_SD_PWR              (33)
37 #define POODLE_GPIO_SD_PWR1             (3)
38 #define POODLE_GPIO_nSD_CLK             (6)
39 #define POODLE_GPIO_nSD_WP              (7)
40 #define POODLE_GPIO_nSD_INT             (8)
41 #define POODLE_GPIO_nSD_DETECT          (9)
42 #define POODLE_GPIO_MAIN_BAT_LOW        (13)
43 #define POODLE_GPIO_BAT_COVER           (13)
44 #define POODLE_GPIO_USB_PULLUP          (20)
45 #define POODLE_GPIO_ADC_TEMP_ON         (21)
46 #define POODLE_GPIO_BYPASS_ON           (36)
47 #define POODLE_GPIO_CHRG_ON             (38)
48 #define POODLE_GPIO_CHRG_FULL           (16)
49 #define POODLE_GPIO_DISCHARGE_ON        (42) /* Enable battery discharge */
50
51 /* PXA GPIOs */
52 #define POODLE_IRQ_GPIO_ON_KEY          PXA_GPIO_TO_IRQ(0)
53 #define POODLE_IRQ_GPIO_AC_IN           PXA_GPIO_TO_IRQ(1)
54 #define POODLE_IRQ_GPIO_HP_IN           PXA_GPIO_TO_IRQ(4)
55 #define POODLE_IRQ_GPIO_CO              PXA_GPIO_TO_IRQ(16)
56 #define POODLE_IRQ_GPIO_TP_INT          PXA_GPIO_TO_IRQ(5)
57 #define POODLE_IRQ_GPIO_WAKEUP          PXA_GPIO_TO_IRQ(11)
58 #define POODLE_IRQ_GPIO_GA_INT          PXA_GPIO_TO_IRQ(10)
59 #define POODLE_IRQ_GPIO_CF_IRQ          PXA_GPIO_TO_IRQ(17)
60 #define POODLE_IRQ_GPIO_CF_CD           PXA_GPIO_TO_IRQ(14)
61 #define POODLE_IRQ_GPIO_nSD_INT         PXA_GPIO_TO_IRQ(8)
62 #define POODLE_IRQ_GPIO_nSD_DETECT      PXA_GPIO_TO_IRQ(9)
63 #define POODLE_IRQ_GPIO_MAIN_BAT_LOW    PXA_GPIO_TO_IRQ(13)
64
65 /* SCOOP GPIOs */
66 #define POODLE_SCOOP_CHARGE_ON  SCOOP_GPCR_PA11
67 #define POODLE_SCOOP_CP401      SCOOP_GPCR_PA13
68 #define POODLE_SCOOP_VPEN       SCOOP_GPCR_PA18
69 #define POODLE_SCOOP_L_PCLK     SCOOP_GPCR_PA20
70 #define POODLE_SCOOP_L_LCLK     SCOOP_GPCR_PA21
71 #define POODLE_SCOOP_HS_OUT     SCOOP_GPCR_PA22
72
73 #define POODLE_SCOOP_IO_DIR     ( POODLE_SCOOP_VPEN | POODLE_SCOOP_HS_OUT )
74 #define POODLE_SCOOP_IO_OUT     ( 0 )
75
76 #define POODLE_SCOOP_GPIO_BASE  (PXA_NR_BUILTIN_GPIO)
77 #define POODLE_GPIO_CHARGE_ON   (POODLE_SCOOP_GPIO_BASE + 0)
78 #define POODLE_GPIO_CP401       (POODLE_SCOOP_GPIO_BASE + 2)
79 #define POODLE_GPIO_VPEN        (POODLE_SCOOP_GPIO_BASE + 7)
80 #define POODLE_GPIO_L_PCLK      (POODLE_SCOOP_GPIO_BASE + 9)
81 #define POODLE_GPIO_L_LCLK      (POODLE_SCOOP_GPIO_BASE + 10)
82 #define POODLE_GPIO_HS_OUT      (POODLE_SCOOP_GPIO_BASE + 11)
83
84 #define POODLE_LOCOMO_GPIO_AMP_ON      LOCOMO_GPIO(8)
85 #define POODLE_LOCOMO_GPIO_MUTE_L      LOCOMO_GPIO(10)
86 #define POODLE_LOCOMO_GPIO_MUTE_R      LOCOMO_GPIO(11)
87 #define POODLE_LOCOMO_GPIO_232VCC_ON   LOCOMO_GPIO(12)
88 #define POODLE_LOCOMO_GPIO_JK_B        LOCOMO_GPIO(13)
89
90 #define POODLE_NR_IRQS          (IRQ_BOARD_START + 4)   /* 4 for LoCoMo */
91
92 extern struct platform_device poodle_locomo_device;
93
94 #endif /* __ASM_ARCH_POODLE_H  */