magician.h (4190B)
1/* SPDX-License-Identifier: GPL-2.0-only */ 2/* 3 * GPIO and IRQ definitions for HTC Magician PDA phones 4 * 5 * Copyright (c) 2007 Philipp Zabel 6 */ 7 8#ifndef _MAGICIAN_H_ 9#define _MAGICIAN_H_ 10 11#include <linux/gpio.h> 12#include "irqs.h" 13 14/* 15 * PXA GPIOs 16 */ 17 18#define GPIO0_MAGICIAN_KEY_POWER 0 19#define GPIO9_MAGICIAN_UNKNOWN 9 20#define GPIO10_MAGICIAN_GSM_IRQ 10 21#define GPIO11_MAGICIAN_GSM_OUT1 11 22#define GPIO13_MAGICIAN_CPLD_IRQ 13 23#define GPIO14_MAGICIAN_TSC2046_CS 14 24#define GPIO18_MAGICIAN_UNKNOWN 18 25#define GPIO22_MAGICIAN_VIBRA_EN 22 26#define GPIO26_MAGICIAN_GSM_POWER 26 27#define GPIO27_MAGICIAN_USBC_PUEN 27 28#define GPIO30_MAGICIAN_BQ24022_nCHARGE_EN 30 29#define GPIO37_MAGICIAN_KEY_HANGUP 37 30#define GPIO38_MAGICIAN_KEY_CONTACTS 38 31#define GPIO40_MAGICIAN_GSM_OUT2 40 32#define GPIO48_MAGICIAN_UNKNOWN 48 33#define GPIO56_MAGICIAN_UNKNOWN 56 34#define GPIO57_MAGICIAN_CAM_RESET 57 35#define GPIO75_MAGICIAN_SAMSUNG_POWER 75 36#define GPIO83_MAGICIAN_nIR_EN 83 37#define GPIO86_MAGICIAN_GSM_RESET 86 38#define GPIO87_MAGICIAN_GSM_SELECT 87 39#define GPIO90_MAGICIAN_KEY_CALENDAR 90 40#define GPIO91_MAGICIAN_KEY_CAMERA 91 41#define GPIO93_MAGICIAN_KEY_UP 93 42#define GPIO94_MAGICIAN_KEY_DOWN 94 43#define GPIO95_MAGICIAN_KEY_LEFT 95 44#define GPIO96_MAGICIAN_KEY_RIGHT 96 45#define GPIO97_MAGICIAN_KEY_ENTER 97 46#define GPIO98_MAGICIAN_KEY_RECORD 98 47#define GPIO99_MAGICIAN_HEADPHONE_IN 99 48#define GPIO100_MAGICIAN_KEY_VOL_UP 100 49#define GPIO101_MAGICIAN_KEY_VOL_DOWN 101 50#define GPIO102_MAGICIAN_KEY_PHONE 102 51#define GPIO103_MAGICIAN_LED_KP 103 52#define GPIO104_MAGICIAN_LCD_VOFF_EN 104 53#define GPIO105_MAGICIAN_LCD_VON_EN 105 54#define GPIO106_MAGICIAN_LCD_DCDC_NRESET 106 55#define GPIO107_MAGICIAN_DS1WM_IRQ 107 56#define GPIO108_MAGICIAN_GSM_READY 108 57#define GPIO114_MAGICIAN_UNKNOWN 114 58#define GPIO115_MAGICIAN_nPEN_IRQ 115 59#define GPIO116_MAGICIAN_nCAM_EN 116 60#define GPIO119_MAGICIAN_UNKNOWN 119 61#define GPIO120_MAGICIAN_UNKNOWN 120 62 63/* 64 * CPLD IRQs 65 */ 66 67#define IRQ_MAGICIAN_SD (IRQ_BOARD_START + 0) 68#define IRQ_MAGICIAN_EP (IRQ_BOARD_START + 1) 69#define IRQ_MAGICIAN_BT (IRQ_BOARD_START + 2) 70#define IRQ_MAGICIAN_VBUS (IRQ_BOARD_START + 3) 71 72#define MAGICIAN_NR_IRQS (IRQ_BOARD_START + 8) 73 74/* 75 * CPLD EGPIOs 76 */ 77 78#define MAGICIAN_EGPIO_BASE PXA_NR_BUILTIN_GPIO 79#define MAGICIAN_EGPIO(reg,bit) \ 80 (MAGICIAN_EGPIO_BASE + 8*reg + bit) 81 82/* output */ 83 84#define EGPIO_MAGICIAN_TOPPOLY_POWER MAGICIAN_EGPIO(0, 2) 85#define EGPIO_MAGICIAN_LED_POWER MAGICIAN_EGPIO(0, 5) 86#define EGPIO_MAGICIAN_GSM_RESET MAGICIAN_EGPIO(0, 6) 87#define EGPIO_MAGICIAN_LCD_POWER MAGICIAN_EGPIO(0, 7) 88#define EGPIO_MAGICIAN_SPK_POWER MAGICIAN_EGPIO(1, 0) 89#define EGPIO_MAGICIAN_EP_POWER MAGICIAN_EGPIO(1, 1) 90#define EGPIO_MAGICIAN_IN_SEL0 MAGICIAN_EGPIO(1, 2) 91#define EGPIO_MAGICIAN_IN_SEL1 MAGICIAN_EGPIO(1, 3) 92#define EGPIO_MAGICIAN_MIC_POWER MAGICIAN_EGPIO(1, 4) 93#define EGPIO_MAGICIAN_CODEC_RESET MAGICIAN_EGPIO(1, 5) 94#define EGPIO_MAGICIAN_CODEC_POWER MAGICIAN_EGPIO(1, 6) 95#define EGPIO_MAGICIAN_BL_POWER MAGICIAN_EGPIO(1, 7) 96#define EGPIO_MAGICIAN_SD_POWER MAGICIAN_EGPIO(2, 0) 97#define EGPIO_MAGICIAN_CARKIT_MIC MAGICIAN_EGPIO(2, 1) 98#define EGPIO_MAGICIAN_IR_RX_SHUTDOWN MAGICIAN_EGPIO(2, 2) 99#define EGPIO_MAGICIAN_FLASH_VPP MAGICIAN_EGPIO(2, 3) 100#define EGPIO_MAGICIAN_BL_POWER2 MAGICIAN_EGPIO(2, 4) 101#define EGPIO_MAGICIAN_BQ24022_ISET2 MAGICIAN_EGPIO(2, 5) 102#define EGPIO_MAGICIAN_NICD_CHARGE MAGICIAN_EGPIO(2, 6) 103#define EGPIO_MAGICIAN_GSM_POWER MAGICIAN_EGPIO(2, 7) 104 105/* input */ 106 107/* USB or AC charger type */ 108#define EGPIO_MAGICIAN_CABLE_TYPE MAGICIAN_EGPIO(4, 0) 109/* 110 * Vbus is detected 111 * FIXME behaves like (6,3), may differ for host/device 112 */ 113#define EGPIO_MAGICIAN_CABLE_VBUS MAGICIAN_EGPIO(4, 1) 114 115#define EGPIO_MAGICIAN_BOARD_ID0 MAGICIAN_EGPIO(5, 0) 116#define EGPIO_MAGICIAN_BOARD_ID1 MAGICIAN_EGPIO(5, 1) 117#define EGPIO_MAGICIAN_BOARD_ID2 MAGICIAN_EGPIO(5, 2) 118#define EGPIO_MAGICIAN_LCD_SELECT MAGICIAN_EGPIO(5, 3) 119#define EGPIO_MAGICIAN_nSD_READONLY MAGICIAN_EGPIO(5, 4) 120 121#define EGPIO_MAGICIAN_EP_INSERT MAGICIAN_EGPIO(6, 1) 122/* FIXME behaves like (4,1), may differ for host/device */ 123#define EGPIO_MAGICIAN_CABLE_INSERTED MAGICIAN_EGPIO(6, 3) 124 125#endif /* _MAGICIAN_H_ */