The Treo 650 Hardware
From ShadoWiki
Please note: all hardware addresses are physical addresses (not the translated virtual address that the bootloader exposes).
PXA registers can be located within the Intel PXA27x Family Developer's Guide and won't be listed here.
Contents |
Attached External Hardware
0x00000000 (CS0): Disk-on-chip
0x08000000 (CS2): HTC phone-control ASIC
0xA0000000 (RAM): 32MB RAM
FFUART: GSM Radio (possibly the CDMA radio too)
Matrix Keyboard
The Treo's keyboard uses the PXA's matrix keyboard decoder. This is documented in the PXA manual.
Disk-on-chip
The Disk-on-chip (or DOC) is a 32MB flash chip from M-Systems that contains a TFFS filesystem. It can be accessed directly via its window at 0x00000000, but the TFFS SDK is a better way to interact with its contents.
TFFS is closed filesystem and no Linux driver is available. The Palm SPL/TPL does contain TFFS routines, but they may be difficult to call from Linux.
The Linux MTD project has direct hardware support for DiskOnChip flash memory, so it could be possible to use the JFFS2 filesystem instead of TFFS.
LCD
The LCD on the Treo is a Sony (model number ?). The Treo initializes the LCD control registers with the following values:
LEDs
The LEDs are controlled through the HTC ASIC's register at byte 0x66 (0x0800_0066). The register is a bitfield:
0000 0000 0000 abcd
a: LCD backlight control - 1 = off, 0 = on b: Keyboard backlight control - 1 = off, 0 = on c: LED color 1 (?) d: LED color 2 (?)
GSM Phone Control
....
