Quick start:
To get you hacking you treo as fast as possible, here's a
quick HOW-TO with all the resouces
you need to get your treo to boot linux.
Aims:
Suspendisse mauris magna, accumsan at, interdum nec, egestas nec, velit.
Pellentesque eleifend, tortor eu tempus tincidunt, nibh elit feugiat lectus, at
vestibulum orci est ut elit. Pellentesque vestibulum. Nunc adipiscing, risus
nec imperdiet mattis, arcu erat placerat justo, pulvinar vulputate tellus justo
quis dolor. Morbi accumsan elit non nisl. Aenean quam. Nulla facilisi. Sed nec
turpis. Aliquam nonummy, urna a ultricies vehicula, urna diam ultrices mauris,
at rhoncus tellus pede eget sapien. Integer ultricies tellus nec dui. Nullam in
nisi. Sed ac lacus. Sed magna leo, hendrerit vel, commodo et, rutrum et, ipsum.
Duis ut nisi. Sed hendrerit. Quisque in ligula non justo ultrices semper.
Status:
Mauris magna est, malesuada in, placerat non, semper non, ipsum. Ut nec ipsum.
Morbi in tortor. Nunc gravida leo vitae ligula. Morbi lobortis pulvinar erat.
Nam pellentesque varius lorem. Maecenas congue tempor risus. In interdum
ultricies orci. Pellentesque ac risus. Nam luctus pretium ante. Etiam quis orci
sit amet ante tincidunt pharetra. Aenean rutrum lorem. Nunc vitae libero id
felis tempor porttitor. Aliquam sed massa. Aliquam ac nisi eget urna varius
consequat. Morbi bibendum porttitor mauris.
Other people's work so far:
Morbi porttitor neque id nunc. Nulla eros nunc, pulvinar at, rhoncus vel,
pretium sit amet, nisl. Aliquam id mauris. In nisl dui, consequat eget,
lobortis et, pellentesque id, erat. Quisque felis est, convallis vitae,
consectetuer nec, luctus hendrerit, tellus. Cras sit amet turpis bibendum metus
vehicula dapibus. Sed et metus vel mauris aliquet faucibus. Donec dolor lacus,
accumsan sed, mollis sit amet, egestas eget, tortor. Morbi aliquam. Morbi erat
odio, semper eget, eleifend eget, condimentum a, augue. Class aptent taciti
sociosqu ad litora torquent per conubia nostra, per inceptos hymenaeos. Etiam
est urna, porttitor a, posuere ac, tempus nec, magna. Etiam est ipsum,
fermentum sed, vestibulum eu, adipiscing vel, sem.
Hardware and software tools:
Aenean faucibus imperdiet arcu. Suspendisse quis tellus eu diam bibendum
tempor. Donec at ligula. Curabitur ac nisi ac dolor convallis laoreet.
Curabitur iaculis rutrum neque. Fusce feugiat nunc non lorem. Donec sed metus.
Booting:
There are currently two ways of booting into linux:
The first, and old way involves
using a particular key combination (holding down the cradle hotsync
button, whilst momentarily pressing reset) to get the bootloader
which loads PalmOS to stop and wait for instructions, then squirting
the kernel in over the USB connection from another PC and finally
transfering control. Here's a quick HOW-TO
The second, and recomended way uses a small program called cocoboot which runs under
palmos. cocoboot loads the kernel image and a ram disk from
the FAT parition on the SD card, manipulates some magic runes to
break out of the the memory protection imposed by palmos and then
boots into the linux kernel. cocoboot isn't wonderfully stable
at the moment, so YMMV. Get the binary for
my current version of cocboot, or
source for the version of cocoboot I modified (doesn't contain support for the treo), and
the version of cocoboot I'm currently using, you can also view the websvn of the cocoboot project from its actual authours. Using cocoboot is simple, install it on you SD card in the
\palm\launcher\ directory, or hotsync it onto the palm, then place
your kerenl and compressed ram-disk (if any) in the root directory of the first
FAT partition of the SD card. The kernel should be called zImage, and
the ram-disk should be called initrd.gz. Run cocoboot, adjust
and command line parameters you feel like and click on the "Boot!" button.
Your treo should start booting linux.
Kernel:
Donec hendrerit dui vitae diam. Vestibulum lobortis blandit elit. Cum sociis
natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam
eget lacus non ligula placerat eleifend. Cras eu velit quis eros tristique
elementum. Integer metus diam, aliquet ac, malesuada eu, sodales vel, purus.
Pellentesque justo metus, consectetuer a, convallis pellentesque, dapibus non,
libero. Suspendisse eu magna. Etiam sit amet pede vitae turpis tristique
scelerisque. Donec fermentum. Pellentesque convallis tortor id odio. Phasellus
vulputate suscipit diam. Etiam purus neque, viverra vel, elementum in, auctor
sit amet, nulla. Pellentesque rutrum interdum metus. Cras sem. Aliquam
dignissim. Donec at augue. Morbi laoreet, massa id tincidunt sagittis, enim
arcu sodales nulla, eget suscipit libero ligula non urna. Ut rhoncus eleifend
ante.
GPIOs:
A large number of the onboard periferals are controlled via the processor's
GPIO lines. These pages describe the ones I've
reversed engineered and show the states of them for various configurations
of the hardware in PalmOS.
Sound:
Aenean faucibus imperdiet arcu. Suspendisse quis tellus eu diam bibendum
tempor. Donec at ligula. Curabitur ac nisi ac dolor convallis laoreet.
Curabitur iaculis rutrum neque. Fusce feugiat nunc non lorem. Donec sed metus.
Maecenas turpis. Sed faucibus enim quis elit. Phasellus dui nibh, interdum vel,
tempus vitae, blandit eget, tellus. Cras auctor eros quis erat. Phasellus vitae
justo. Curabitur auctor, dolor eget gravida vehicula, neque augue ullamcorper
arcu, sit amet egestas felis nunc vel ipsum. Aenean nonummy posuere sem. Ut
turpis pede, blandit quis, tempor sed, fermentum sit amet, erat. Nunc odio
purus, congue feugiat, pulvinar ut, commodo eu, dui. Nulla lobortis nisl eu
magna.
Touchscreen:
Etiam felis odio, egestas vel, commodo nec, fermentum a, ligula. Nulla
malesuada tincidunt risus. Nulla at felis sed eros placerat porttitor. Sed
ullamcorper neque ac elit. Vestibulum nonummy tortor. Donec facilisis risus
eget metus. Nam aliquam nulla eu turpis rhoncus commodo. Curabitur condimentum.
Integer ullamcorper vulputate augue. Donec felis ligula, gravida in, molestie
nec, mattis eu, augue. Aenean cursus posuere dui. Proin non nunc ut tellus
consequat dapibus. Aliquam erat volutpat. Curabitur arcu justo, sollicitudin
vitae, volutpat vitae, placerat sed, dolor. Cum sociis natoque penatibus et
magnis dis parturient montes, nascetur ridiculus mus. Praesent hendrerit. Duis
sed ante. Donec dictum eleifend nulla.
Battery:
Suspendisse libero. Vestibulum quis nisi vel lacus porta semper. Pellentesque
condimentum lacus eget justo. Proin id metus eget pede posuere venenatis. Fusce
velit. Morbi placerat, ipsum eu blandit semper, odio orci adipiscing arcu, eget
aliquet mauris ante quis mauris. Morbi facilisis mi sit amet ligula. Fusce sit
amet pede eu justo scelerisque suscipit. Nulla sodales risus quis libero.
Maecenas fringilla ante vel urna. Aliquam erat volutpat.
Wireless modem:
Nulla dapibus, elit nec vehicula porta, sapien turpis tempor libero, vitae
mattis mauris nulla in libero. Duis vel felis. Maecenas turpis. Donec nec erat.
Donec lobortis ornare nunc. Donec varius, neque ac pellentesque lacinia, urna
tortor accumsan felis, quis rutrum sem turpis a leo. Nullam tincidunt. Nullam
tortor magna, elementum sed, pellentesque eget, accumsan ac, sapien. Maecenas
convallis cursus nulla. Pellentesque habitant morbi tristique senectus et netus
et malesuada fames ac turpis egestas. Quisque risus tellus, vehicula id,
dapibus a, porttitor ut, lorem. Vestibulum feugiat. Vestibulum in purus.
Pellentesque semper. Phasellus aliquet ipsum pretium purus. Nulla ornare urna
eu erat. Quisque porta purus ac erat.
Bluetooth:
Donec hendrerit dui vitae diam. Vestibulum lobortis blandit elit. Cum sociis
natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam
eget lacus non ligula placerat eleifend. Cras eu velit quis eros tristique
elementum. Integer metus diam, aliquet ac, malesuada eu, sodales vel, purus.
Pellentesque justo metus, consectetuer a, convallis pellentesque, dapibus non,
libero. Suspendisse eu magna. Etiam sit amet pede vitae turpis tristique
scelerisque. Donec fermentum. Pellentesque convallis tortor id odio. Phasellus
vulputate suscipit diam. Etiam purus neque, viverra vel, elementum in, auctor
sit amet, nulla. Pellentesque rutrum interdum metus. Cras sem. Aliquam
dignissim. Donec at augue. Morbi laoreet, massa id tincidunt sagittis, enim
arcu sodales nulla, eget suscipit libero ligula non urna. Ut rhoncus eleifend
ante.
IrDA:
Curabitur felis. Curabitur vitae ligula. Suspendisse et tortor a elit rhoncus
bibendum. In hac habitasse platea dictumst. Vestibulum pharetra odio feugiat
dui. Sed libero. Maecenas tincidunt elit in quam. Vestibulum lacinia ipsum id
enim. Sed metus purus, pharetra et, auctor et, cursus sit amet, massa. Nunc
sodales. Cras neque urna, auctor et, cursus pharetra, iaculis quis, felis. Sed
tincidunt volutpat quam. Suspendisse potenti. Sed ultrices, neque a placerat
euismod, sem augue consectetuer nunc, in sodales mi ipsum commodo nunc. Mauris
aliquet dictum augue. Proin libero. Fusce feugiat, arcu at rutrum ultrices,
lectus urna rhoncus sem, et molestie lectus turpis vel leo. Duis lacinia, risus
sit amet pellentesque feugiat, enim nibh accumsan tortor, a pellentesque ante
velit non odio.
Back-light:
Phasellus libero est, porta ac, porttitor et, congue tempor, metus. Nunc id
augue eu velit condimentum iaculis. Quisque ac sapien. Aenean mauris ipsum,
tincidunt eu, tincidunt dignissim, auctor eget, lorem. Nam vel nulla vitae
libero sodales luctus. Nam cursus magna faucibus massa. Pellentesque habitant
morbi tristique senectus et netus et malesuada fames ac turpis egestas. Donec
suscipit. Suspendisse sed tortor et erat rhoncus malesuada. Nam consequat, enim
sed hendrerit vestibulum, diam orci rhoncus eros, eu fermentum metus erat a
magna. Mauris quis libero. Cras ligula lectus, pretium eget, faucibus id,
pellentesque vel, tortor. Nunc blandit arcu.
Keyboard light:
Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac
turpis egestas. Curabitur justo eros, blandit quis, suscipit ac, ultricies in,
nulla. Nullam rutrum arcu in dui. Cras mattis, quam et suscipit sagittis,
sapien ipsum pretium magna, sed mattis metus augue non lorem. Pellentesque vel
felis vel augue euismod sodales. Quisque lobortis. Vivamus sagittis malesuada
lacus. Nulla facilisi. Ut rutrum. Aenean est. Vestibulum accumsan, sapien sit
amet ultrices pellentesque, massa tellus tempor ante, eget consequat lacus orci
quis neque. In et eros id enim ornare mattis. Nulla molestie nunc sed turpis.
Donec enim. Nunc ac velit. Quisque porta libero eu lorem. Nunc et libero.
Power management:
Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac
turpis egestas. Curabitur justo eros, blandit quis, suscipit ac, ultricies in,
nulla. Nullam rutrum arcu in dui. Cras mattis, quam et suscipit sagittis,
sapien ipsum pretium magna, sed mattis metus augue non lorem. Pellentesque vel
felis vel augue euismod sodales. Quisque lobortis. Vivamus sagittis malesuada
lacus. Nulla facilisi. Ut rutrum. Aenean est. Vestibulum accumsan, sapien sit
amet ultrices pellentesque, massa tellus tempor ante, eget consequat lacus orci
quis neque. In et eros id enim ornare mattis. Nulla molestie nunc sed turpis.
Donec enim. Nunc ac velit. Quisque porta libero eu lorem. Nunc et libero.