1 /*
2  * arch/arm/mach-sa1100/include/mach/collie.h
3  *
4  * This file contains the hardware specific definitions for Assabet
5  * Only include this file from SA1100-specific files.
6  *
7  * ChangeLog:
8  *   04-06-2001 Lineo Japan, Inc.
9  *   04-16-2001 SHARP Corporation
10  *   07-07-2002 Chris Larson <clarson@digi.com>
11  *
12  */
13 #ifndef __ASM_ARCH_COLLIE_H
14 #define __ASM_ARCH_COLLIE_H
15 
16 
17 #define COLLIE_SCOOP_GPIO_BASE	(GPIO_MAX + 1)
18 #define COLLIE_GPIO_CHARGE_ON	(COLLIE_SCOOP_GPIO_BASE + 0)
19 #define COLLIE_SCP_DIAG_BOOT1	SCOOP_GPCR_PA12
20 #define COLLIE_SCP_DIAG_BOOT2	SCOOP_GPCR_PA13
21 #define COLLIE_SCP_MUTE_L	SCOOP_GPCR_PA14
22 #define COLLIE_SCP_MUTE_R	SCOOP_GPCR_PA15
23 #define COLLIE_SCP_5VON		SCOOP_GPCR_PA16
24 #define COLLIE_SCP_AMP_ON	SCOOP_GPCR_PA17
25 #define COLLIE_GPIO_VPEN	(COLLIE_SCOOP_GPIO_BASE + 7)
26 #define COLLIE_SCP_LB_VOL_CHG	SCOOP_GPCR_PA19
27 
28 #define COLLIE_SCOOP_IO_DIR	( COLLIE_SCP_MUTE_L | COLLIE_SCP_MUTE_R | \
29 				COLLIE_SCP_5VON | COLLIE_SCP_AMP_ON | \
30 				COLLIE_SCP_LB_VOL_CHG )
31 #define COLLIE_SCOOP_IO_OUT	( COLLIE_SCP_MUTE_L | COLLIE_SCP_MUTE_R )
32 
33 /* GPIOs for which the generic definition doesn't say much */
34 
35 #define COLLIE_GPIO_ON_KEY		GPIO_GPIO (0)
36 #define COLLIE_GPIO_AC_IN		GPIO_GPIO (1)
37 #define COLLIE_GPIO_SDIO_INT		GPIO_GPIO (11)
38 #define COLLIE_GPIO_CF_IRQ		GPIO_GPIO (14)
39 #define COLLIE_GPIO_nREMOCON_INT	GPIO_GPIO (15)
40 #define COLLIE_GPIO_UCB1x00_RESET	GPIO_GPIO (16)
41 #define COLLIE_GPIO_nMIC_ON		GPIO_GPIO (17)
42 #define COLLIE_GPIO_nREMOCON_ON		GPIO_GPIO (18)
43 #define COLLIE_GPIO_CO			GPIO_GPIO (20)
44 #define COLLIE_GPIO_MCP_CLK		GPIO_GPIO (21)
45 #define COLLIE_GPIO_CF_CD		GPIO_GPIO (22)
46 #define COLLIE_GPIO_UCB1x00_IRQ		GPIO_GPIO (23)
47 #define COLLIE_GPIO_WAKEUP		GPIO_GPIO (24)
48 #define COLLIE_GPIO_GA_INT		GPIO_GPIO (25)
49 #define COLLIE_GPIO_MAIN_BAT_LOW	GPIO_GPIO (26)
50 
51 /* Interrupts */
52 
53 #define COLLIE_IRQ_GPIO_ON_KEY		IRQ_GPIO0
54 #define COLLIE_IRQ_GPIO_AC_IN		IRQ_GPIO1
55 #define COLLIE_IRQ_GPIO_SDIO_IRQ	IRQ_GPIO11
56 #define COLLIE_IRQ_GPIO_CF_IRQ		IRQ_GPIO14
57 #define COLLIE_IRQ_GPIO_nREMOCON_INT	IRQ_GPIO15
58 #define COLLIE_IRQ_GPIO_CO		IRQ_GPIO20
59 #define COLLIE_IRQ_GPIO_CF_CD		IRQ_GPIO22
60 #define COLLIE_IRQ_GPIO_UCB1x00_IRQ	IRQ_GPIO23
61 #define COLLIE_IRQ_GPIO_WAKEUP		IRQ_GPIO24
62 #define COLLIE_IRQ_GPIO_GA_INT		IRQ_GPIO25
63 #define COLLIE_IRQ_GPIO_MAIN_BAT_LOW	IRQ_GPIO26
64 
65 #define COLLIE_LCM_IRQ_GPIO_RTS		IRQ_LOCOMO_GPIO0
66 #define COLLIE_LCM_IRQ_GPIO_CTS		IRQ_LOCOMO_GPIO1
67 #define COLLIE_LCM_IRQ_GPIO_DSR		IRQ_LOCOMO_GPIO2
68 #define COLLIE_LCM_IRQ_GPIO_DTR		IRQ_LOCOMO_GPIO3
69 #define COLLIE_LCM_IRQ_GPIO_nSD_DETECT	IRQ_LOCOMO_GPIO13
70 #define COLLIE_LCM_IRQ_GPIO_nSD_WP	IRQ_LOCOMO_GPIO14
71 
72 /* GPIO's on the TC35143AF (Toshiba Analog Frontend) */
73 #define COLLIE_TC35143_GPIO_VERSION0    UCB_IO_0	/* GPIO0=Version                 */
74 #define COLLIE_TC35143_GPIO_TBL_CHK     UCB_IO_1	/* GPIO1=TBL_CHK                 */
75 #define COLLIE_TC35143_GPIO_VPEN_ON     UCB_IO_2	/* GPIO2=VPNE_ON                 */
76 #define COLLIE_TC35143_GPIO_IR_ON       UCB_IO_3	/* GPIO3=IR_ON                   */
77 #define COLLIE_TC35143_GPIO_AMP_ON      UCB_IO_4	/* GPIO4=AMP_ON                  */
78 #define COLLIE_TC35143_GPIO_VERSION1    UCB_IO_5	/* GPIO5=Version                 */
79 #define COLLIE_TC35143_GPIO_FS8KLPF     UCB_IO_5	/* GPIO5=fs 8k LPF               */
80 #define COLLIE_TC35143_GPIO_BUZZER_BIAS UCB_IO_6	/* GPIO6=BUZZER BIAS             */
81 #define COLLIE_TC35143_GPIO_MBAT_ON     UCB_IO_7	/* GPIO7=MBAT_ON                 */
82 #define COLLIE_TC35143_GPIO_BBAT_ON     UCB_IO_8	/* GPIO8=BBAT_ON                 */
83 #define COLLIE_TC35143_GPIO_TMP_ON      UCB_IO_9	/* GPIO9=TMP_ON                  */
84 #define COLLIE_TC35143_GPIO_IN		( UCB_IO_0 | UCB_IO_2 | UCB_IO_5 )
85 #define COLLIE_TC35143_GPIO_OUT		( UCB_IO_1 | UCB_IO_3 | UCB_IO_4 | UCB_IO_6 | \
86 					UCB_IO_7 | UCB_IO_8 | UCB_IO_9 )
87 
88 #endif
89