Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
palmz72.h
Go to the documentation of this file.
1 /*
2  * GPIOs and interrupts for Palm Zire72 Handheld Computer
3  *
4  * Authors: Alex Osborne <[email protected]>
5  * Jan Herman <[email protected]>
6  * Sergey Lapin <[email protected]>
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License version 2 as
10  * published by the Free Software Foundation.
11  *
12  */
13 
14 #ifndef _INCLUDE_PALMZ72_H_
15 #define _INCLUDE_PALMZ72_H_
16 
17 /* Power and control */
18 #define GPIO_NR_PALMZ72_GPIO_RESET 1
19 #define GPIO_NR_PALMZ72_POWER_DETECT 0
20 
21 /* SD/MMC */
22 #define GPIO_NR_PALMZ72_SD_DETECT_N 14
23 #define GPIO_NR_PALMZ72_SD_POWER_N 98
24 #define GPIO_NR_PALMZ72_SD_RO 115
25 
26 /* Touchscreen */
27 #define GPIO_NR_PALMZ72_WM9712_IRQ 27
28 
29 /* IRDA - disable GPIO connected to SD pin of tranceiver (TFBS4710?) ? */
30 #define GPIO_NR_PALMZ72_IR_DISABLE 49
31 
32 /* USB */
33 #define GPIO_NR_PALMZ72_USB_DETECT_N 15
34 #define GPIO_NR_PALMZ72_USB_PULLUP 95
35 
36 /* LCD/Backlight */
37 #define GPIO_NR_PALMZ72_BL_POWER 20
38 #define GPIO_NR_PALMZ72_LCD_POWER 96
39 
40 /* LED */
41 #define GPIO_NR_PALMZ72_LED_GREEN 88
42 
43 /* Bluetooth */
44 #define GPIO_NR_PALMZ72_BT_POWER 17
45 #define GPIO_NR_PALMZ72_BT_RESET 83
46 
47 /* Camera */
48 #define GPIO_NR_PALMZ72_CAM_PWDN 56
49 #define GPIO_NR_PALMZ72_CAM_RESET 57
50 #define GPIO_NR_PALMZ72_CAM_POWER 91
51 
54 /* Battery */
55 #define PALMZ72_BAT_MAX_VOLTAGE 4000 /* 4.00v current voltage */
56 #define PALMZ72_BAT_MIN_VOLTAGE 3550 /* 3.55v critical voltage */
57 #define PALMZ72_BAT_MAX_CURRENT 0 /* unknown */
58 #define PALMZ72_BAT_MIN_CURRENT 0 /* unknown */
59 #define PALMZ72_BAT_MAX_CHARGE 1 /* unknown */
60 #define PALMZ72_BAT_MIN_CHARGE 1 /* unknown */
61 #define PALMZ72_MAX_LIFE_MINS 360 /* on-life in minutes */
62 
63 /* Backlight */
64 #define PALMZ72_MAX_INTENSITY 0xFE
65 #define PALMZ72_DEFAULT_INTENSITY 0x7E
66 #define PALMZ72_LIMIT_MASK 0x7F
67 #define PALMZ72_PRESCALER 0x3F
68 #define PALMZ72_PERIOD_NS 3500
69 
70 #ifdef CONFIG_PM
71 struct palmz72_resume_info {
72  u32 magic0; /* 0x0 */
73  u32 magic1; /* 0x4 */
74  u32 resume_addr; /* 0x8 */
75  u32 pad[11]; /* 0xc..0x37 */
76  u32 arm_control; /* 0x38 */
77  u32 aux_control; /* 0x3c */
78  u32 ttb; /* 0x40 */
79  u32 domain_access; /* 0x44 */
80  u32 process_id; /* 0x48 */
81 };
82 #endif
83 #endif
84