1/*
2 * GPIOs and interrupts for Palm Treo smartphones
3 *
4 * currently supported:
5 *     Palm Treo 680 (GSM)
6 *     Palm Centro 685 (GSM)
7 *
8 * Author:     Tomas Cech <sleep_walker@suse.cz>
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 * find more info at www.hackndev.com
15 *
16 */
17
18#ifndef _INCLUDE_TREO_H_
19#define _INCLUDE_TREO_H_
20
21/* GPIOs */
22#define GPIO_NR_TREO_POWER_DETECT	0
23#define GPIO_NR_TREO_AMP_EN		27
24#define GPIO_NR_TREO_GREEN_LED	20
25#define GPIO_NR_TREO_RED_LED		79
26#define GPIO_NR_TREO_SD_DETECT_N	113
27#define GPIO_NR_TREO_EP_DETECT_N	116
28#define GPIO_NR_TREO_USB_DETECT	1
29#define GPIO_NR_TREO_USB_PULLUP	114
30#define GPIO_NR_TREO_GSM_POWER	40
31#define GPIO_NR_TREO_GSM_RESET	87
32#define GPIO_NR_TREO_GSM_WAKE	57
33#define GPIO_NR_TREO_GSM_HOST_WAKE	14
34#define GPIO_NR_TREO_GSM_TRIGGER	10
35#define GPIO_NR_TREO_IR_EN		115
36#define GPIO_NR_TREO_IR_TXD		47
37#define GPIO_NR_TREO_BL_POWER	38
38#define GPIO_NR_TREO_LCD_POWER	25
39
40/* Treo680 specific GPIOs */
41#define GPIO_NR_TREO680_SD_READONLY	33
42#define GPIO_NR_TREO680_SD_POWER	42
43#define GPIO_NR_TREO680_VIBRATE_EN	44
44#define GPIO_NR_TREO680_KEYB_BL		24
45#define GPIO_NR_TREO680_BT_EN		43
46#define GPIO_NR_TREO680_LCD_POWER	77
47#define GPIO_NR_TREO680_LCD_EN		86
48#define GPIO_NR_TREO680_LCD_EN_N	25
49
50/* Centro685 specific GPIOs */
51#define GPIO_NR_CENTRO_SD_POWER		21
52#define GPIO_NR_CENTRO_VIBRATE_EN	22
53#define GPIO_NR_CENTRO_KEYB_BL		33
54#define GPIO_NR_CENTRO_BT_EN		80
55
56/* Various addresses  */
57#define TREO_PHYS_RAM_START	0xa0000000
58#define TREO_PHYS_IO_START	0x40000000
59#define TREO_STR_BASE	0xa2000000
60
61/* BACKLIGHT */
62#define TREO_MAX_INTENSITY		254
63#define TREO_DEFAULT_INTENSITY	160
64#define TREO_LIMIT_MASK		0x7F
65#define TREO_PRESCALER		63
66#define TREO_PERIOD_NS		3500
67
68#endif
69