1#ifndef _GTA02_H 2#define _GTA02_H 3 4#include <mach/regs-gpio.h> 5#include <mach/gpio.h> 6#include <mach/irqs.h> 7 8/* Different hardware revisions, passed in ATAG_REVISION by u-boot */ 9#define GTA02v1_SYSTEM_REV 0x00000310 10#define GTA02v2_SYSTEM_REV 0x00000320 11#define GTA02v3_SYSTEM_REV 0x00000330 12#define GTA02v4_SYSTEM_REV 0x00000340 13#define GTA02v5_SYSTEM_REV 0x00000350 14#define GTA02v6_SYSTEM_REV 0x00000360 15 16#define GTA02_GPIO_n3DL_GSM S3C2410_GPA13 /* v1 + v2 + v3 only */ 17 18#define GTA02_GPIO_PWR_LED1 S3C2410_GPB0 19#define GTA02_GPIO_PWR_LED2 S3C2410_GPB1 20#define GTA02_GPIO_AUX_LED S3C2410_GPB2 21#define GTA02_GPIO_VIBRATOR_ON S3C2410_GPB3 22#define GTA02_GPIO_MODEM_RST S3C2410_GPB5 23#define GTA02_GPIO_BT_EN S3C2410_GPB6 24#define GTA02_GPIO_MODEM_ON S3C2410_GPB7 25#define GTA02_GPIO_EXTINT8 S3C2410_GPB8 26#define GTA02_GPIO_USB_PULLUP S3C2410_GPB9 27 28#define GTA02_GPIO_PIO5 S3C2410_GPC5 /* v3 + v4 only */ 29#define GTA02v3_GPIO_nG1_CS S3C2410_GPD12 /* v3 + v4 only */ 30#define GTA02v3_GPIO_nG2_CS S3C2410_GPD13 /* v3 + v4 only */ 31#define GTA02v5_GPIO_HDQ S3C2410_GPD14 /* v5 + */ 32 33#define GTA02_GPIO_nG1_INT S3C2410_GPF0 34#define GTA02_GPIO_IO1 S3C2410_GPF1 35#define GTA02_GPIO_PIO_2 S3C2410_GPF2 /* v2 + v3 + v4 only */ 36#define GTA02_GPIO_JACK_INSERT S3C2410_GPF4 37#define GTA02_GPIO_WLAN_GPIO1 S3C2410_GPF5 /* v2 + v3 + v4 only */ 38#define GTA02_GPIO_AUX_KEY S3C2410_GPF6 39#define GTA02_GPIO_HOLD_KEY S3C2410_GPF7 40 41#define GTA02_GPIO_3D_IRQ S3C2410_GPG4 42#define GTA02v2_GPIO_nG2_INT S3C2410_GPG8 /* v2 + v3 + v4 only */ 43#define GTA02v3_GPIO_nUSB_OC S3C2410_GPG9 /* v3 + v4 only */ 44#define GTA02v3_GPIO_nUSB_FLT S3C2410_GPG10 /* v3 + v4 only */ 45#define GTA02v3_GPIO_nGSM_OC S3C2410_GPG11 /* v3 + v4 only */ 46 47#define GTA02_GPIO_AMP_SHUT S3C2440_GPJ1 /* v2 + v3 + v4 only */ 48#define GTA02v1_GPIO_WLAN_GPIO10 S3C2440_GPJ2 49#define GTA02_GPIO_HP_IN S3C2440_GPJ2 /* v2 + v3 + v4 only */ 50#define GTA02_GPIO_INT0 S3C2440_GPJ3 /* v2 + v3 + v4 only */ 51#define GTA02_GPIO_nGSM_EN S3C2440_GPJ4 52#define GTA02_GPIO_3D_RESET S3C2440_GPJ5 53#define GTA02_GPIO_nDL_GSM S3C2440_GPJ6 /* v4 + v5 only */ 54#define GTA02_GPIO_WLAN_GPIO0 S3C2440_GPJ7 55#define GTA02v1_GPIO_BAT_ID S3C2440_GPJ8 56#define GTA02_GPIO_KEEPACT S3C2440_GPJ8 57#define GTA02v1_GPIO_HP_IN S3C2440_GPJ10 58#define GTA02_CHIP_PWD S3C2440_GPJ11 /* v2 + v3 + v4 only */ 59#define GTA02_GPIO_nWLAN_RESET S3C2440_GPJ12 /* 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_GPC13 77#define GTA02_PCB_ID1_1 S3C2410_GPC15 78#define GTA02_PCB_ID1_2 S3C2410_GPD0 79#define GTA02_PCB_ID2_0 S3C2410_GPD3 80#define GTA02_PCB_ID2_1 S3C2410_GPD4 81 82#define GTA02_GPIO_GLAMO_BASE S3C_GPIO_END 83#define GTA02_GPIO_GLAMO(x) (GTA02_GPIO_GLAMO_BASE + x) 84 85int gta02_get_pcb_revision(void); 86 87extern struct pcf50633 *gta02_pcf; 88 89#endif /* _GTA02_H */ 90