Summary
This page holds all the aditional X30 documentation, it only goes here if it is specfic to the x30 or if you dont know where else to put it.
Documents
X30 Docking Station Pinout The pinout for the connector on the bottom of the x30 (all models)
GPIO
Notice: this information is incomplete and unverified
Gpios that seem to be noisy why wireless bluetooth are on:
16 28 29 31 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
GPIO | Function |
0 | power button |
1 | unknown |
2 | unknown |
3 | unknown |
4 | unknown |
5 | unknown |
6 | unknown |
7 | unknown |
8 | unknown |
9 | unknown |
10 | unknown |
11 | SD Card Out |
12 | unknown |
13 | unknown |
14 | Right Arrow |
15 | nCS<1> |
16 | PWM |
17 | PWM Controller? |
18 | Scroller Up |
19 | |
20 | unknown |
21 | Scroller In |
22 | unknown |
23 | unknown |
24 | unknown |
25 | unknown |
26 | unknown |
27 | unknown |
28 | AC97_BITCLK |
29 | AC97_SDATA_IN_0 |
30 | AC97_SDATA_OUT |
31 | AC97_SYNC |
32 | MMCLK |
33 | unknown |
34 | FFRXD |
35 | FFCTS |
36 | FFDCD |
37 | FFDSR |
38 | FFRI |
39 | FFTXD |
40 | FFDTR |
41 | FFRTS |
42 | BTRXD |
43 | BTTXD |
44 | BTCTS |
45 | BTRTS |
46 | STDRXD |
47 | STDTXD |
48 | nPOE |
49 | nPWE |
50 | nPIOR |
51 | nPIOW |
52 | unknown |
53 | unknown |
54 | unknown |
55 | nPREG |
56 | nPWAIT |
57 | nIOIS16 |
58 | LDD<0> |
59 | LDD<1> |
60 | LDD<2> |
61 | LDD<3> |
62 | LDD<4> |
63 | LDD<5> |
64 | LDD<6> |
65 | LDD<7> |
66 | LDD<8> |
67 | LDD<9> |
68 | LDD<10> |
69 | LDD<11> |
70 | LDD<12> |
71 | LDD<13> |
72 | LDD<14> |
73 | LDD<15> |
74 | L_FCLK_RD |
75 | L_LCLK_A0 |
76 | L_PCLK_WR |
77 | L_BIAS |
78 | unknown |
79 | unknown |
80 | Scroller In |
81 | unknown |
82 | unknown |
83 | unknown |
86 | Touch screen Down |
93 | Contacts Button |
94 | Left Lower Side Button (Record) |
95 | Calender Button |
97 | Mail Button |
98 | Home Button |
99 | Wifi Button |
103 | Up Arrow |
106 | Center Button |
107 | Down Arrow |
108 | Left Arrow |
GPIOS
Power unplug:
001.919 GPIOS GPLR2: GPIO84(84)=1
002.259 GPIOS GPLR0: GPIO17(17)=0 PWM_OUT?
Power plugged in:
004.270 GPIOS GPLR0: GPIO17(17)=1
004.270 GPIOS GPLR2: GPIO84(84)=0
Usb unplugged:
002.064 GPIOS GPLR0: GPIO10(10)=1 USB_P3_5? (D+ Positive Receiver Input)
002.064 GPIOS GPLR2: GPIO87(87)=0
Usb plugged in:
004.919 GPIOS GPLR0: GPIO10(10)=0
004.919 GPIOS GPLR2: GPIO87(87)=1 USB_P3_1? (USB Reciver Input)
lcd off
001.509 GPIOS GPLR0: GPIO26(26)=0 GPIO27(27)=0
lcd on
000.787 GPIOS GPLR0: GPIO26(26)=1 GPIO27(27)=1
SD card insert:
001.419 GPIOS GPLR0: GPIO11(11)=0
003.420 GPIOS GPLR1: GPIO53(53)=1
003.427 GPIOS GPLR2: GPIO92(92)=1
003.427 GPIOS GPLR3: GPIO109(109)=1 GPIO110(110)=1 GPIO111(111)=1 GPIO112(112)=1
004.234 GPIOS GPLR1: GPIO32(32)=1
004.237 GPIOS GPLR1: GPIO32(32)=0
004.550 GPIOS GPLR1: GPIO32(32)=1
004.566 GPIOS GPLR1: GPIO32(32)=0
004.569 GPIOS GPLR1: GPIO32(32)=1
004.574 GPIOS GPLR1: GPIO32(32)=0
SD Card remove (partially out, card pushed in to relase and not pulled out fully):
004.681 GPIOS GPLR0: GPIO11(11)=1
005.209 GPIOS GPLR1: GPIO53(53)=0
005.399 GPIOS GPLR3: GPIO112(112)=0
005.401 GPIOS GPLR3: GPIO109(109)=0 GPIO110(110)=0 GPIO111(111)=0
005.404 GPIOS GPLR2: GPIO92(92)=0
******
Used for sd lock detection?
******
SD pushed in partially (so sd lock is in)
001.968 GPIOS GPLR2: GPIO85(80)=0
SD removed all the way (so sd lock is out)
001.968 GPIOS GPLR2: GPIO85(85)=1
********
Alternate GPIO Pin Fuctions
AF0:0 | AF20:0 | AF35:1 | AF50:2 | AF65:2 | AF80:0 | AF95:0 | AF110:1 |
AF1:1 | AF21:0 | AF36:1 | AF51:2 | AF66:2 | AF81:0 | AF96:0 | AF111:1 |
AF3:0 | AF22:0 | AF37:1 | AF52:0 | AF67:2 | AF82:0 | AF97:0 | AF112:1 |
AF4:0 | AF23:0 | AF38:1 | AF53:0 | AF68:2 | AF83:0 | AF98:0 | AF113:2 |
AF9:0 | AF24:0 | AF39:2 | AF54:0 | AF69:2 | AF84:0 | AF99:0 | AF114:0 |
AF10:0 | AF25:0 | AF40:2 | AF55:2 | AF70:2 | AF85:0 | AF100:0 | AF115:0 |
AF11:0 | AF26:0 | AF41:2 | AF56:1 | AF71:2 | AF86:0 | AF101:0 | AF116:0 |
AF12:0 | AF27:0 | AF42:1 | AF57:1 | AF72:2 | AF87:0 | AF102:1 | AF117:0 |
AF13:0 | AF28:1 | AF43:2 | AF58:2 | AF73:2 | AF88:0 | AF103:0 | AF118:0 |
AF14:0 | AF29:1 | AF44:1 | AF59:2 | AF74:2 | AF89:0 | AF104:1 | AF119:0 |
AF15:2 | AF30:2 | AF45:2 | AF60:2 | AF75:2 | AF90:0 | AF105:1 | AF120:0 |
AF16:2 | AF31:2 | AF46:2 | AF61:2 | AF76:2 | AF91:0 | AF106:0 | |
AF17:0 | AF32:2 | AF47:1 | AF62:2 | AF77:2 | AF92:1 | AF107:0 | |
AF18:0 | AF33:0 | AF48:2 | AF63:2 | AF78:0 | AF93:0 | AF108:0 | |
AF19:0 | AF34:1 | AF49:2 | AF64:2 | AF79:0 | AF94:0 | AF109:1 |
IRQS
(interrupt raised for a push, and a release)
001.465(0746135) IRQS GEDR3: GPIO98(162)=1 Home
002.436(0776230) IRQS GEDR3: GPIO97(161)=1 Mail
004.213(0967579) IRQS GEDR2: GPIO93(157)=1 Contacts
004.900(2385823) IRQS GEDR2: GPIO95(159)=1 Calender
006.151(2103330) IRQS GEDR2: GPIO94(158)=1 Record (Lower left side button)
001.416(0777283) IRQS GEDR0: GPIO14(78)=1 Key Right
002.192(0555330) IRQS GEDR3: GPIO107(171)=1 Key Down
002.965(0238316) IRQS GEDR3: GPIO108(172)=1 Key Left
003.657(0274482) IRQS GEDR3: GPIO103(167)=1 Key Up
005.388(0948965) IRQS GEDR3: GPIO106(170)=1 Key Enter
002.625(1495342) IRQS GEDR0: GPIO10(74)=1 USB unplugged
002.424(0026004) IRQS ICIP: DMA(25)=1 Used for touchscreen when pushed down. IRQ is shared with another device. When stylus is down, irq is pulled quicker then 1/10th every second.
004.783(0444327) IRQS ICIP: TMR1(27)=1 when stylus is remove from touchscreen
LCD Registers
Register Name | Hex Value | comments |
LCCR0 | 0x003008f9 | ENB=1 CMS=0 SDS=0 LDM=1 SOFMO=1 IUM=1 EOFMO=1 PAS=1 DPD=0 DIS=0 QDM=1 PDD=0 BSM0=1 OUM=1 LCDT=0 RDSTM=0 CMDIM=0 OUC=0 LDDALT=0 |
LCCR1 | 0x3a0f34ef | BLW=58 ELW=15 HSW=14 PPL=239 |
LCCR2 | 0x04000d3f | BFW=4 VSW=3 EFW=0 LPP=319 |
LCCR3 | 0x04900008 | PCD= 8 ACB= 0 API=0 VSP=1 HSP=0 PCP=0 OEP=1 BPP=4 DPC=0 BBP3=0 PDFOR=0 |
LCCR4 | 0x00000000 | |
LCCR5 | 0x3f3f3f3f |
PWM Registers
the PWM seems to be used to control the backlight's brightness.
Register Name | Address | Hex Value | comments |
PWMPCR0 | 0x40b00000 | 0x0000003f | Seems to be a steady value. |
PWMPDCR0 | 0x40b00004 | 0x00000??? | The last 3 QUARTETS set the backlight brightness. Lowest is 000, highest setting in CE is 0x1ff. |
PWMPCR0 | 0x40b00008 | 0x000001ff | Seems to be a steady value. |
Touchscreen Info
References: http://preview.wolfsonmicro.com/uploads/documents/en/WM9705.pdf
The touchscreen seems to adopt the modem codec to transfer the data from the touchscreen. For the pxa, the data seems to reside in the register 0x7A fro the primary modem codec. To access the data, read from 0x405004F4. The needed data is encoded in the lower word.
NAME | BIT | FUNCTION |
PNDN | 15 | Indicates whether Pen is Down; ‘1’ = ‘Down’ |
ADR[2:0] | 14:12 | Conversion Address; Indicates which channel the following result is for |
D[11:0] | 11:0 | ADC output result |
ADR[2-0] | CHANNEL |
000 | none |
001 | X- plate |
010 | Y-plate |
011 | Pressure Conversion |
100 | BMON |
101 | AUXADC |
110 | PHONE |
111 | PCBEEP |
Touchscreen works. The driver can be downloaded from http://opensource.wolfsonmicro.com/node/7 . The driver is also included in the main stream linux kernel (2.6.27)