Merge branch 'fix/asoc' into for-linus
[sfrench/cifs-2.6.git] / arch / arm / mach-sa1100 / include / mach / h3600_gpio.h
1 /*
2  *
3  * Definitions for H3600 Handheld Computer
4  *
5  * Copyright 2000 Compaq Computer Corporation.
6  *
7  * Use consistent with the GNU GPL is permitted,
8  * provided that this copyright notice is
9  * preserved in its entirety in all copies and derived works.
10  *
11  * COMPAQ COMPUTER CORPORATION MAKES NO WARRANTIES, EXPRESSED OR IMPLIED,
12  * AS TO THE USEFULNESS OR CORRECTNESS OF THIS CODE OR ITS
13  * FITNESS FOR ANY PARTICULAR PURPOSE.
14  *
15  * Author: Jamey Hicks.
16  *
17  * History:
18  *
19  * 2001-10-??   Andrew Christian   Added support for iPAQ H3800
20  *
21  */
22
23 #ifndef _INCLUDE_H3600_GPIO_H_
24 #define _INCLUDE_H3600_GPIO_H_
25
26 /*
27  * GPIO lines that are common across ALL iPAQ models are in "h3600.h"
28  * This file contains machine-specific definitions
29  */
30
31 #define GPIO_H3600_SUSPEND              GPIO_GPIO (0)
32 /* GPIO[2:9] used by LCD on H3600/3800, used as GPIO on H3100 */
33 #define GPIO_H3100_BT_ON                GPIO_GPIO (2)
34 #define GPIO_H3100_GPIO3                GPIO_GPIO (3)
35 #define GPIO_H3100_QMUTE                GPIO_GPIO (4)
36 #define GPIO_H3100_LCD_3V_ON            GPIO_GPIO (5)
37 #define GPIO_H3100_AUD_ON               GPIO_GPIO (6)
38 #define GPIO_H3100_AUD_PWR_ON           GPIO_GPIO (7)
39 #define GPIO_H3100_IR_ON                GPIO_GPIO (8)
40 #define GPIO_H3100_IR_FSEL              GPIO_GPIO (9)
41
42 /* for H3600, audio sample rate clock generator */
43 #define GPIO_H3600_CLK_SET0             GPIO_GPIO (12)
44 #define GPIO_H3600_CLK_SET1             GPIO_GPIO (13)
45
46 #define GPIO_H3600_ACTION_BUTTON        GPIO_GPIO (18)
47 #define GPIO_H3600_SOFT_RESET           GPIO_GPIO (20)   /* Also known as BATT_FAULT */
48 #define GPIO_H3600_OPT_LOCK             GPIO_GPIO (22)
49 #define GPIO_H3600_OPT_DET              GPIO_GPIO (27)
50
51 /****************************************************/
52
53 #define IRQ_GPIO_H3600_ACTION_BUTTON    IRQ_GPIO18
54 #define IRQ_GPIO_H3600_OPT_DET          IRQ_GPIO27
55
56 /* H3100 / 3600 EGPIO pins */
57 #define EGPIO_H3600_VPP_ON              (1 << 0)
58 #define EGPIO_H3600_CARD_RESET          (1 << 1)   /* reset the attached pcmcia/compactflash card.  active high. */
59 #define EGPIO_H3600_OPT_RESET           (1 << 2)   /* reset the attached option pack.  active high. */
60 #define EGPIO_H3600_CODEC_NRESET        (1 << 3)   /* reset the onboard UDA1341.  active low. */
61 #define EGPIO_H3600_OPT_NVRAM_ON        (1 << 4)   /* apply power to optionpack nvram, active high. */
62 #define EGPIO_H3600_OPT_ON              (1 << 5)   /* full power to option pack.  active high. */
63 #define EGPIO_H3600_LCD_ON              (1 << 6)   /* enable 3.3V to LCD.  active high. */
64 #define EGPIO_H3600_RS232_ON            (1 << 7)   /* UART3 transceiver force on.  Active high. */
65
66 /* H3600 only EGPIO pins */
67 #define EGPIO_H3600_LCD_PCI             (1 << 8)   /* LCD control IC enable.  active high. */
68 #define EGPIO_H3600_IR_ON               (1 << 9)   /* apply power to IR module.  active high. */
69 #define EGPIO_H3600_AUD_AMP_ON          (1 << 10)  /* apply power to audio power amp.  active high. */
70 #define EGPIO_H3600_AUD_PWR_ON          (1 << 11)  /* apply power to reset of audio circuit.  active high. */
71 #define EGPIO_H3600_QMUTE               (1 << 12)  /* mute control for onboard UDA1341.  active high. */
72 #define EGPIO_H3600_IR_FSEL             (1 << 13)  /* IR speed select: 1->fast, 0->slow */
73 #define EGPIO_H3600_LCD_5V_ON           (1 << 14)  /* enable 5V to LCD. active high. */
74 #define EGPIO_H3600_LVDD_ON             (1 << 15)  /* enable 9V and -6.5V to LCD. */
75
76
77 #endif /* _INCLUDE_H3600_GPIO_H_ */