1/*
2 * GPIOs and interrupts for Palm Zire72 Handheld Computer
3 *
4 * Authors:	Alex Osborne <bobofdoom@gmail.com>
5 *		Jan Herman <2hp@seznam.cz>
6 *		Sergey Lapin <slapin@ossfans.org>
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
52/** Initial values **/
53
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
71struct 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
85