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