GNU Linux-libre 4.19.264-gnu1
[releases.git] / arch / arm / mach-pxa / palmt5.h
1 /*
2  * GPIOs and interrupts for Palm Tungsten|T5 Handheld Computer
3  *
4  * Authors:     Ales Snuparek <snuparek@atlas.cz>
5  *              Marek Vasut <marek.vasut@gmail.com>
6  *              Justin Kendrick <twilightsentry@gmail.com>
7  *              RichardT5 <richard_t5@users.sourceforge.net>
8  *
9  * This program is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License version 2 as
11  * published by the Free Software Foundation.
12  *
13  */
14
15 #ifndef _INCLUDE_PALMT5_H_
16 #define _INCLUDE_PALMT5_H_
17
18 #include <mach/irqs.h> /* PXA_GPIO_TO_IRQ */
19
20 /** HERE ARE GPIOs **/
21
22 /* GPIOs */
23 #define GPIO_NR_PALMT5_GPIO_RESET               1
24
25 #define GPIO_NR_PALMT5_POWER_DETECT             90
26 #define GPIO_NR_PALMT5_HOTSYNC_BUTTON_N         10
27 #define GPIO_NR_PALMT5_EARPHONE_DETECT          107
28
29 /* SD/MMC */
30 #define GPIO_NR_PALMT5_SD_DETECT_N              14
31 #define GPIO_NR_PALMT5_SD_POWER                 114
32 #define GPIO_NR_PALMT5_SD_READONLY              115
33
34 /* TOUCHSCREEN */
35 #define GPIO_NR_PALMT5_WM9712_IRQ               27
36
37 /* IRDA - disable GPIO connected to SD pin of tranceiver (TFBS4710?) ? */
38 #define GPIO_NR_PALMT5_IR_DISABLE               40
39
40 /* USB */
41 #define GPIO_NR_PALMT5_USB_DETECT_N             15
42 #define GPIO_NR_PALMT5_USB_PULLUP               93
43
44 /* LCD/BACKLIGHT */
45 #define GPIO_NR_PALMT5_BL_POWER                 84
46 #define GPIO_NR_PALMT5_LCD_POWER                96
47
48 /* BLUETOOTH */
49 #define GPIO_NR_PALMT5_BT_POWER                 17
50 #define GPIO_NR_PALMT5_BT_RESET                 83
51
52 /* INTERRUPTS */
53 #define IRQ_GPIO_PALMT5_SD_DETECT_N     PXA_GPIO_TO_IRQ(GPIO_NR_PALMT5_SD_DETECT_N)
54 #define IRQ_GPIO_PALMT5_WM9712_IRQ      PXA_GPIO_TO_IRQ(GPIO_NR_PALMT5_WM9712_IRQ)
55 #define IRQ_GPIO_PALMT5_USB_DETECT      PXA_GPIO_TO_IRQ(GPIO_NR_PALMT5_USB_DETECT)
56 #define IRQ_GPIO_PALMT5_GPIO_RESET      PXA_GPIO_TO_IRQ(GPIO_NR_PALMT5_GPIO_RESET)
57
58 /** HERE ARE INIT VALUES **/
59
60 /* Various addresses  */
61 #define PALMT5_PHYS_RAM_START   0xa0000000
62 #define PALMT5_PHYS_IO_START    0x40000000
63 #define PALMT5_STR_BASE         0xa0200000
64
65 /* TOUCHSCREEN */
66 #define AC97_LINK_FRAME         21
67
68 /* BATTERY */
69 #define PALMT5_BAT_MAX_VOLTAGE          4000    /* 4.00v current voltage */
70 #define PALMT5_BAT_MIN_VOLTAGE          3550    /* 3.55v critical voltage */
71 #define PALMT5_BAT_MAX_CURRENT          0       /* unknown */
72 #define PALMT5_BAT_MIN_CURRENT          0       /* unknown */
73 #define PALMT5_BAT_MAX_CHARGE           1       /* unknown */
74 #define PALMT5_BAT_MIN_CHARGE           1       /* unknown */
75 #define PALMT5_MAX_LIFE_MINS            360    /* on-life in minutes */
76
77 #define PALMT5_BAT_MEASURE_DELAY        (HZ * 1)
78
79 /* BACKLIGHT */
80 #define PALMT5_MAX_INTENSITY            0xFE
81 #define PALMT5_DEFAULT_INTENSITY        0x7E
82 #define PALMT5_LIMIT_MASK               0x7F
83 #define PALMT5_PRESCALER                0x3F
84 #define PALMT5_PERIOD_NS                3500
85
86 #endif