1 #ifndef _GTA02_H 2 #define _GTA02_H 3 4 #include <mach/regs-gpio.h> 5 6 /* Different hardware revisions, passed in ATAG_REVISION by u-boot */ 7 #define GTA02v1_SYSTEM_REV 0x00000310 8 #define GTA02v2_SYSTEM_REV 0x00000320 9 #define GTA02v3_SYSTEM_REV 0x00000330 10 #define GTA02v4_SYSTEM_REV 0x00000340 11 #define GTA02v5_SYSTEM_REV 0x00000350 12 /* since A7 is basically same as A6, we use A6 PCB ID */ 13 #define GTA02v6_SYSTEM_REV 0x00000360 14 15 #define GTA02_GPIO_n3DL_GSM S3C2410_GPA(13) /* v1 + v2 + v3 only */ 16 17 #define GTA02_GPIO_PWR_LED1 S3C2410_GPB(0) 18 #define GTA02_GPIO_PWR_LED2 S3C2410_GPB(1) 19 #define GTA02_GPIO_AUX_LED S3C2410_GPB(2) 20 #define GTA02_GPIO_VIBRATOR_ON S3C2410_GPB(3) 21 #define GTA02_GPIO_MODEM_RST S3C2410_GPB(5) 22 #define GTA02_GPIO_BT_EN S3C2410_GPB(6) 23 #define GTA02_GPIO_MODEM_ON S3C2410_GPB(7) 24 #define GTA02_GPIO_EXTINT8 S3C2410_GPB(8) 25 #define GTA02_GPIO_USB_PULLUP S3C2410_GPB(9) 26 27 #define GTA02_GPIO_PIO5 S3C2410_GPC(5) /* v3 + v4 only */ 28 29 #define GTA02v3_GPIO_nG1_CS S3C2410_GPD(12) /* v3 + v4 only */ 30 #define GTA02v3_GPIO_nG2_CS S3C2410_GPD(13) /* v3 + v4 only */ 31 #define GTA02v5_GPIO_HDQ S3C2410_GPD(14) /* v5 + */ 32 33 #define GTA02_GPIO_nG1_INT S3C2410_GPF(0) 34 #define GTA02_GPIO_IO1 S3C2410_GPF(1) 35 #define GTA02_GPIO_PIO_2 S3C2410_GPF(2) /* v2 + v3 + v4 only */ 36 #define GTA02_GPIO_JACK_INSERT S3C2410_GPF(4) 37 #define GTA02_GPIO_WLAN_GPIO1 S3C2410_GPF(5) /* v2 + v3 + v4 only */ 38 #define GTA02_GPIO_AUX_KEY S3C2410_GPF(6) 39 #define GTA02_GPIO_HOLD_KEY S3C2410_GPF(7) 40 41 #define GTA02_GPIO_3D_IRQ S3C2410_GPG(4) 42 #define GTA02v2_GPIO_nG2_INT S3C2410_GPG(8) /* v2 + v3 + v4 only */ 43 #define GTA02v3_GPIO_nUSB_OC S3C2410_GPG(9) /* v3 + v4 only */ 44 #define GTA02v3_GPIO_nUSB_FLT S3C2410_GPG(10) /* v3 + v4 only */ 45 #define GTA02v3_GPIO_nGSM_OC S3C2410_GPG(11) /* v3 + v4 only */ 46 47 #define GTA02_GPIO_AMP_SHUT S3C2410_GPJ(1) /* v2 + v3 + v4 only */ 48 #define GTA02v1_GPIO_WLAN_GPIO10 S3C2410_GPJ(2) 49 #define GTA02_GPIO_HP_IN S3C2410_GPJ(2) /* v2 + v3 + v4 only */ 50 #define GTA02_GPIO_INT0 S3C2410_GPJ(3) /* v2 + v3 + v4 only */ 51 #define GTA02_GPIO_nGSM_EN S3C2410_GPJ(4) 52 #define GTA02_GPIO_3D_RESET S3C2410_GPJ(5) 53 #define GTA02_GPIO_nDL_GSM S3C2410_GPJ(6) /* v4 + v5 only */ 54 #define GTA02_GPIO_WLAN_GPIO0 S3C2410_GPJ(7) 55 #define GTA02v1_GPIO_BAT_ID S3C2410_GPJ(8) 56 #define GTA02_GPIO_KEEPACT S3C2410_GPJ(8) 57 #define GTA02v1_GPIO_HP_IN S3C2410_GPJ(10) 58 #define GTA02_CHIP_PWD S3C2410_GPJ(11) /* v2 + v3 + v4 only */ 59 #define GTA02_GPIO_nWLAN_RESET S3C2410_GPJ(12) /* v2 + v3 + v4 only */ 60 61 #define GTA02_IRQ_GSENSOR_1 IRQ_EINT0 62 #define GTA02_IRQ_MODEM IRQ_EINT1 63 #define GTA02_IRQ_PIO_2 IRQ_EINT2 /* v2 + v3 + v4 only */ 64 #define GTA02_IRQ_nJACK_INSERT IRQ_EINT4 65 #define GTA02_IRQ_WLAN_GPIO1 IRQ_EINT5 66 #define GTA02_IRQ_AUX IRQ_EINT6 67 #define GTA02_IRQ_nHOLD IRQ_EINT7 68 #define GTA02_IRQ_PCF50633 IRQ_EINT9 69 #define GTA02_IRQ_3D IRQ_EINT12 70 #define GTA02_IRQ_GSENSOR_2 IRQ_EINT16 /* v2 + v3 + v4 only */ 71 #define GTA02v3_IRQ_nUSB_OC IRQ_EINT17 /* v3 + v4 only */ 72 #define GTA02v3_IRQ_nUSB_FLT IRQ_EINT18 /* v3 + v4 only */ 73 #define GTA02v3_IRQ_nGSM_OC IRQ_EINT19 /* v3 + v4 only */ 74 75 /* returns 00 000 on GTA02 A5 and earlier, A6 returns 01 001 */ 76 #define GTA02_PCB_ID1_0 S3C2410_GPC(13) 77 #define GTA02_PCB_ID1_1 S3C2410_GPC(15) 78 #define GTA02_PCB_ID1_2 S3C2410_GPD(0) 79 #define GTA02_PCB_ID2_0 S3C2410_GPD(3) 80 #define GTA02_PCB_ID2_1 S3C2410_GPD(4) 81 82 int gta02_get_pcb_revision(void); 83 84 #endif /* _GTA02_H */ 85