				Dell Axim X5 hardware information collection
Author: Demo; cooldemo@inmail.sk


This table shows data gained by small program available @ http://cooldemo.miesto.sk/tester1.exe.
It saves DMA & GPIO config and reports any change on GPIOs with alt. function set to 0.

Warning	After tapping onto file, the program collects changes on GPIO for 10 seconds(so it may 
	seem that it does not work!  afterwards there is Hello World! text on screen. Use a taskmgr 
	or a similar program to end this task otherwise it will still remain running!	

MECR=0x2
DINT=0x0

1st collumn is Channel control. The rest could be found in documentation for PXA250 processors

DMA #0=0x8		DCMD=0x0	DSADR=0x0		DTADR=0x0
DMA #1=0x80000000	DCMD=0x9023ca60	DSADR=0xa1fbd560	DTADR=0x40500040
DMA #2=0x8		DCMD=0x0	DSADR=0x0		DTADR=0x0
DMA #3=0x8		DCMD=0x0	DSADR=0x0		DTADR=0x0
DMA #4=0x8		DCMD=0x0	DSADR=0x0		DTADR=0x0
DMA #5=0x8		DCMD=0x0	DSADR=0x0		DTADR=0x0
DMA #6=0x8		DCMD=0x0	DSADR=0x0		DTADR=0x0
DMA #7=0x8		DCMD=0x0	DSADR=0x0		DTADR=0x0
DMA #8=0xa0000000	DCMD=0x6022c030	DSADR=0x40500140	DTADR=0xa1fcf000
DMA #9=0x8		DCMD=0x0	DSADR=0x0		DTADR=0x0
DMA #10=0x8		DCMD=0x0	DSADR=0x0		DTADR=0x0
DMA #11=0x8		DCMD=0x0	DSADR=0x0		DTADR=0x0
DMA #12=0x8		DCMD=0x0	DSADR=0x0		DTADR=0x0
DMA #13=0x8		DCMD=0x0	DSADR=0x0		DTADR=0x0
DMA #14=0x8		DCMD=0x0	DSADR=0x0		DTADR=0x0
DMA #15=0x8		DCMD=0x0	DSADR=0x0		DTADR=0x0


DMA:
	Pocket PC uses at least:
	channel #1 for Audio out
	channel #8 for Touch screen


Gpio configuration:
I = input
O = output
Number after comma is alternative function #

GPIO #0=I, 0
GPIO #1=I, 1
GPIO #2=I, 0
GPIO #3=I, 0
GPIO #4=I, 0
GPIO #5=I, 0
GPIO #6=I, 0
GPIO #7=I, 0
GPIO #8=I, 0
GPIO #9=I, 0
GPIO #10=I, 0
GPIO #11=I, 0
GPIO #12=I, 0
GPIO #13=I, 0
GPIO #14=I, 0
GPIO #15=O, 2
GPIO #16=O, 2
GPIO #17=I, 0
GPIO #18=I, 1
GPIO #19=O, 0
GPIO #20=O, 0
GPIO #21=I, 0
GPIO #22=O, 0
GPIO #23=O, 0
GPIO #24=O, 0
GPIO #25=I, 0
GPIO #26=O, 0
GPIO #27=I, 0
GPIO #28=I, 1
GPIO #29=I, 1
GPIO #30=O, 2
GPIO #31=O, 2
GPIO #32=I, 0
GPIO #33=O, 2
GPIO #34=I, 1
GPIO #35=I, 1
GPIO #36=I, 1
GPIO #37=I, 1
GPIO #38=I, 1
GPIO #39=O, 2
GPIO #40=O, 2
GPIO #41=O, 2
GPIO #42=I, 1
GPIO #43=O, 2
GPIO #44=I, 1
GPIO #45=O, 2
GPIO #46=I, 2
GPIO #47=O, 1
GPIO #48=O, 2
GPIO #49=O, 2
GPIO #50=O, 2
GPIO #51=O, 2
GPIO #52=O, 2
GPIO #53=O, 2
GPIO #54=O, 2
GPIO #55=O, 2
GPIO #56=I, 1
GPIO #57=I, 1
GPIO #58=O, 0
GPIO #59=I, 0
GPIO #60=O, 0
GPIO #61=I, 0
GPIO #62=O, 0
GPIO #63=O, 0
GPIO #64=I, 0
GPIO #65=I, 0
GPIO #66=I, 0
GPIO #67=I, 0
GPIO #68=I, 0
GPIO #69=I, 0
GPIO #70=I, 0
GPIO #71=O, 0
GPIO #72=O, 0
GPIO #73=O, 0
GPIO #74=O, 0
GPIO #75=I, 0
GPIO #76=I, 0
GPIO #77=I, 0
GPIO #78=O, 2
GPIO #79=O, 2
GPIO #80=O, 0

This is standart GPIO status with PCMCIA inserted and music playing:

#0: 1
#1: 1
#2: 1
#3: 1
#4: 0
#5: 1
#6: 0
#7: 0
#8: 1
#9: 1
#10: 0
#11: 0
#12: 0
#13: 0
#14: 0
#15: 1
#16: 1
#17: 1
#18: 1
#19: 1
#20: 0
#21: 1
#22: 0
#23: 1
#24: 0
#25: 1
#26: 0
#27: 1
#29: 0
#30: 0
#31: 0
#32: 0
#33: 1
#34: 1
#35: 1
#36: 1
#37: 1
#38: 1
#39: 1
#40: 1
#41: 1
#42: 1
#43: 1
#44: 1
#45: 1
#46: 1
#47: 0
#48: 1
#49: 1
#50: 1
#51: 1
#52: 1
#53: 1
#54: 1
#55: 1
#56: 1
#57: 0
#58: 1
#59: 0
#60: 0
#61: 1
#62: 0
#63: 0
#64: 1
#65: 1
#66: 1
#67: 1
#68: 0
#69: 0
#70: 0
#71: 0
#72: 1
#73: 1
#74: 1
#75: 0
#76: 1
#77: 1
#78: 1
#79: 1
#80: 1




This table shows all GPIOs that I was able to find and are not set as alternate function

0 	~Power Switch
1	~Reset switch
2	Mediaq interrupt
6	~SD Card inserted
7	~CF Card inserted
8	Possible IRQ from CF, but does not work :-(
9	Main Battery inserted
10	Record button
11	Calendar
12	Contacts
13	Mailbox
14	Home
17	~adapter plugged
27	~Joy "push" button
32	Touch screen "touched"
59	Charging
68	Scroll down
69	Scroll push
70	Scroll up
71-74	Changing one of these(dont remember) shuts down the hardware like LCD,backlight,PCMCIA
	and I was not able to turn it back on afterwards :-)

64-67	Joy directions
	0xC == up
	0x3 == down
	0x9 == right
	0x6 == left
	0xF == no button pressed
	WARNING also #27 is signalized


One of those chargings is probably charged and other charger plugged.


PCMCIA/CF:
	All stuff that can be found in 278522-001.pdf is valid also for Axim.
PCMCIA/CF insertion process:
	GPIO #7 changes from 1->0
	GPIO #8 changes from 0->1
	GPIO #26 changes from 1->0
	GPIO #61 changes from 0->1
	GPIO #63 changes from 1->0

PCMCIA/CF removal process:
	GPIO #7 changes from 0->1
	GPIO #26 changes from 0->1
	GPIO #8 changes from 1->0
	GPIO #61 changes from 1->0
	GPIO #63 changes from 0->1

It would seem that GPIO #8 or #61 is connected it Card ready signal, but GPIO #8 does not change at all(!)
in Linux, but it does in PPC. This includes removal/insertion of CF card.


MediaQ:		GPIO 23 is amplifier enable
		GPIO 64 is backlight
		GPIO 65 is PCMCIA (power up?)

		register config:
		DC00R = 0x1
		DC01R = 0x3
		DC02R = 0x1
		DC03R = 0x8 RO
		DC04R = 0x100004
		DC05R = 0x5
		DC06R =
		DC07R =
		CC00R = 0x2
		CC01R = 0x1010 R0
		CC02R = 0x9A0  GPIOs
		CC03R = 0xAAA02200  GPIOs
		CC04R = CPU TEST
		IN00R = 0x1
		IN01R =
		IN02R = 
		IN03R = 
		MM00R = 0x1
		MM01R = 0x1B676CA8
		MM02R = 0x0
		MM03R = 0xEC02 ??
		MM04R = 0x8FC68D3
		GC00R = 0x80100C9
		GC01R = 0x0
		GC02R = 0xF0011A
		GC03R = 0x13F015E
		GC04R = 0x11100FA
		GC05R = 0x1590157
		GC06R = 0x0
		GC07R = 0x0
		GC08R = 0xEF0000
		GC09R = 0x13F0000
		GC0AR = 0x0
		GC0BR = 0x11700F2
		GC0CR = 0x2000
		GC0DR = 0x91A6
		GC0ER = 0x1E0
		GC0FR = 0x0
		GC10R = 0x2FB07EB
		GC11R = 0xFF
		GC12R = 48A4D0
		GC13R = 0xD48000
		GC14R .. GC19R reserved
		GC1AR = 0x0
		GC1BR = 0x0
		GC1CR = 0x2B0F00F4
		GC1DR = 0x3B140057
		GC1ER = 0x3B13B20
		GC1FR = 0x131B0
		SP08R = 0x2FFC79 // bit 4 - backlight one of 0-3 is PCMCIA stuff



LCD:		It seems that Axim uses QMedia chip to control LCD.

Frame buffer:	Frame buffer is mapped (either by BootLoader/Pocket PC or statically) to address 0x14042000.
		it uses 16 bit format and it's resolution is 240x320 pixels

BACKLIGHT:	Controlled by Pulse Width Modulator #1

UART:		Normal UART available is fully documented in 278522-001.pdf. FIR has not been tested yet.

USB:		USB is controlled by MediaQ and driver has not yet been written.


Touchscreen & battery:
		Touchscreen and battery is controlled by wm9705 AC'97 codec.

Note: All abriviations used could be found in document 278522-001.pdf from Intel.com

Warning: This document has NOTHING to do with Dell computers, so do not send them any e-mails :-)


