| 1 | TT-Loader |
|---|
| 2 | |
|---|
| 3 | This program is for advanced users. You should consider it as beta software |
|---|
| 4 | and we can't guarantee it will do what it is expected to do. So if you |
|---|
| 5 | use it, you admit you're using it at your own risk. |
|---|
| 6 | |
|---|
| 7 | This is a program loader derivated from OMAP Flash Loader, a replacement |
|---|
| 8 | by Luis Recuerda for the FlashRecoveryUtility program from Tim Rikkers |
|---|
| 9 | (http://tree.celinuxforum.org/CelfPubWiki/FlashRecoveryUtility). |
|---|
| 10 | |
|---|
| 11 | This program can load alternative boot loader on OMAP730 plateform when |
|---|
| 12 | starting the device with an USB cable plugged. It is designed to be used |
|---|
| 13 | with the "TwinTact" (also known as E2831 device), aka TT, a mobile phone |
|---|
| 14 | by neuf, a french telecom company. |
|---|
| 15 | Also, this program is for Linux (and perhaps other Unixes), not for M$-windows. |
|---|
| 16 | And, the better of all, it is GPL, with all its sources, not a binary program. |
|---|
| 17 | |
|---|
| 18 | omapfl program has been developed using reverse engineering on the protocol |
|---|
| 19 | communication between the original program and the internal boot. Luis have not |
|---|
| 20 | totally understood that protocol, but it works. ;) |
|---|
| 21 | |
|---|
| 22 | To compile this program you only need a gcc compiler and the libusb |
|---|
| 23 | (http://sourceforge.net/projects/libusb/) instaled at your system. |
|---|
| 24 | |
|---|
| 25 | To use it, executes the program passing it two arguments. First argument is |
|---|
| 26 | the second stage loader (the included/compiled 2nd.bin file) and second one |
|---|
| 27 | is a text file with a serie of command (example in commands.txt). Then, plug the |
|---|
| 28 | USB cable in the phone, no need to power with the power button. If it doesn't work, |
|---|
| 29 | you will have to unplug the USB cable and remove the phone battery. |
|---|
| 30 | |
|---|
| 31 | You can also have an automatic detection and launch using udev. Get udev twintact.rules from |
|---|
| 32 | tt-tools at http://source.pkg.fr/doc/Projets/tt-tools and the twintact-udev script. In |
|---|
| 33 | that last script, you have to check line 49 to do what you need. |
|---|
| 34 | |
|---|
| 35 | The file "2nd.bin" is the second stage boot loader. The main program (tt-loader) |
|---|
| 36 | send it to the OMAP processor, where it is executed by the internal boot |
|---|
| 37 | loader. Then this last will expect some command to prepare a third stage boot loader. |
|---|
| 38 | |
|---|
| 39 | To process, you will also need some third stage boot loader for upload. The first way |
|---|
| 40 | to get one is to dump it from your own phone from the native linux environment. I |
|---|
| 41 | assume you know how to connect with at least telnet... maybe dropbear from tt-tools... |
|---|
| 42 | If you want to try examples from commands.txt, you will need a x-load.bin & a u-boot.bin |
|---|
| 43 | in the current folder. Here is a short checlist to get that files: |
|---|
| 44 | * For x-load.bin: |
|---|
| 45 | * cat /dev/mtdblock/0 >/mnt/fat/x-load.bin |
|---|
| 46 | * get x-load.bin on your PC |
|---|
| 47 | * optionnaly, strip any null byte at the end of the file to reduce upload delay |
|---|
| 48 | * be sure the file path on the PC is the one expected in commands.txt |
|---|
| 49 | * For u-boot.bin: |
|---|
| 50 | * cat /dev/mtdblock/1 >/mnt/fat/u-boot.bin |
|---|
| 51 | |
|---|
| 52 | It should be possible to load and start a linux kernel directly, but the upload could |
|---|
| 53 | take a very long time. |
|---|
| 54 | |
|---|
| 55 | You should find quickly new commands.txt to do fun things with your TT on OpenTwin, |
|---|
| 56 | so check http://www.opentwin.org or ask on the mailing list. |
|---|
| 57 | |
|---|
| 58 | I have added the compiled file "2nd.bin", if you need to recompile the |
|---|
| 59 | second boot loader, you will need a cross compiler, if the name is diferent |
|---|
| 60 | of mine (armv5tel-redhat-linux-gnueabi from F8 packages), change file "2nd/Makefile". |
|---|
| 61 | If your local gcc compiler is not called "gcc", change "Makefile", also if your include |
|---|
| 62 | files for libusb isn't located at /usr/include (add -L/.... to INCLUDES= line at Makefile). |
|---|
| 63 | |
|---|
| 64 | If you need more help about this program, you can contact me on IRC or by OpenTwin ML, |
|---|
| 65 | check http://www.opentwin.org. Also check http://source.pkg.fr and http://www.pkg.fr |
|---|
| 66 | you should find there my mail and more. |
|---|
| 67 | |
|---|
| 68 | Best regards and enjoy it, |
|---|
| 69 | |
|---|
| 70 | Guillaume Bougard |
|---|
| 71 | |
|---|
| 72 | |
|---|
| 73 | Acknowledges: |
|---|
| 74 | |
|---|
| 75 | Thanks Luis Recuerda to have released omapfl under GPL. |
|---|
| 76 | |
|---|
| 77 | To Tim Rikers for the original FlashRecoveryUtility program. |
|---|
| 78 | |
|---|
| 79 | To Texas Instruments: thank you for DO NOT answer any question about the |
|---|
| 80 | internal ROM boot loader, and, thank you for the WORST documentacion about |
|---|
| 81 | a CPU or microprocessor I have ever seen. |
|---|