FreeCalypso > hg > fc-magnetite
annotate doc/Pirelli-Howto @ 488:ff91db8c9eb8
OSL: os_com_fl.c compiles
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Fri, 22 Jun 2018 06:38:03 +0000 | 
| parents | 5b6159d76b09 | 
| children | 3608ce4a585a | 
| rev | line source | 
|---|---|
| 94 
596d86109e44
initial round of documentation
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 Running FreeCalypso Magnetite firmware on the Pirelli DP-L10 | 
| 
596d86109e44
initial round of documentation
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 ============================================================ | 
| 
596d86109e44
initial round of documentation
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 | 
| 253 
5b6159d76b09
doc/Pirelli-Howto: updated for the current situation
 Mychaela Falconia <falcon@freecalypso.org> parents: 
223diff
changeset | 4 The Pirelli DP-L10 is a neat target for playing with FreeCalypso for a few | 
| 97 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 5 reasons: | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 6 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 7 1. It has a USB port connected to one of Calypso's UARTs through a built-in | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 8 CP2102 USB-serial adapter, eliminating the need for headset jack serial | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 9 cables. | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 10 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 11 2. The huge RAM on this phone (8 MiB) makes it possible to run experimental GSM | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 12 firmware images entirely in RAM without flashing - and we have successfully | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 13 implemented this capability in FC Magnetite similarly to Citrine. | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 14 | 
| 253 
5b6159d76b09
doc/Pirelli-Howto: updated for the current situation
 Mychaela Falconia <falcon@freecalypso.org> parents: 
223diff
changeset | 15 3. Running an experimental firmware image on the Pirelli requires nothing more | 
| 
5b6159d76b09
doc/Pirelli-Howto: updated for the current situation
 Mychaela Falconia <falcon@freecalypso.org> parents: 
223diff
changeset | 16 than a laptop, a phone and a USB cable, and can therefore be done under | 
| 
5b6159d76b09
doc/Pirelli-Howto: updated for the current situation
 Mychaela Falconia <falcon@freecalypso.org> parents: 
223diff
changeset | 17 less-than-ideal conditions while away from your proper FreeCalypso hardware | 
| 
5b6159d76b09
doc/Pirelli-Howto: updated for the current situation
 Mychaela Falconia <falcon@freecalypso.org> parents: 
223diff
changeset | 18 lab with an FCDEV3B setup. | 
| 
5b6159d76b09
doc/Pirelli-Howto: updated for the current situation
 Mychaela Falconia <falcon@freecalypso.org> parents: 
223diff
changeset | 19 | 
| 97 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 20 There is, however, one difference between our Citrine and Magnetite firmwares | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 21 when it comes to running on the Pirelli without flashing: Citrine uses a | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 22 RAM-based fake FFS, whereas Magnetite always requires a real FFS in flash, even | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 23 when the firmware code image itself is entirely RAM-based. However, just like | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 24 on the C139, we do NOT use the same FFS which is used by Pirelli's official | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 25 firmwares - the latter contains nothing of use to our fw, hence it is best for | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 26 us to use our own separate FreeCalypso Magnetite FFS. | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 27 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 28 The flash location that's been chosen for Magnetite FFS on the Pirelli is | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 29 0x02480000 through 0x025FFFFF, i.e., offsets 0x480000 through 0x5FFFFF in the | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 30 second flash bank. Pirelli's official firmwares use this flash area as | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 31 temporary storage during OTA (over-the-air, probably WLAN in this case) fw | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 32 reloads and leave it untouched at all other times, therefore as long as you are | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 33 not doing firmware reloads over WLAN while in the "official mode", you can use | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 34 your Pirelli phone for FreeCalypso experiments via fc-xram and go back to the | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 35 regular fw in between, and the Magnetite FFS in the flash will be preserved | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 36 from one fc-xram session to the next, not disturbed by Pirelli's fw. | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 37 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 38 Compiling | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 39 ========= | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 40 | 
| 223 
619a33e8425e
doc/Pirelli-Howto: update for the availability of the hybrid config
 Mychaela Falconia <falcon@freecalypso.org> parents: 
97diff
changeset | 41 When compiling our Magnetite firmware for the Pirelli target, you can select | 
| 
619a33e8425e
doc/Pirelli-Howto: update for the availability of the hybrid config
 Mychaela Falconia <falcon@freecalypso.org> parents: 
97diff
changeset | 42 one of two configurations: l1reconst or hybrid; see the Modem-configs article | 
| 
619a33e8425e
doc/Pirelli-Howto: update for the availability of the hybrid config
 Mychaela Falconia <falcon@freecalypso.org> parents: 
97diff
changeset | 43 for the explanation. In both cases the phone will act as an AT-command- | 
| 
619a33e8425e
doc/Pirelli-Howto: update for the availability of the hybrid config
 Mychaela Falconia <falcon@freecalypso.org> parents: 
97diff
changeset | 44 controlled pseudo-modem: the LCD will stay dark and the buttons will do nothing, | 
| 
619a33e8425e
doc/Pirelli-Howto: update for the availability of the hybrid config
 Mychaela Falconia <falcon@freecalypso.org> parents: 
97diff
changeset | 45 and you will need to control the GSM MS from your PC or other host system. | 
| 97 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 46 | 
| 223 
619a33e8425e
doc/Pirelli-Howto: update for the availability of the hybrid config
 Mychaela Falconia <falcon@freecalypso.org> parents: 
97diff
changeset | 47 Run './configure.sh pirelli l1reconst' or './configure.sh pirelli hybrid' | 
| 
619a33e8425e
doc/Pirelli-Howto: update for the availability of the hybrid config
 Mychaela Falconia <falcon@freecalypso.org> parents: 
97diff
changeset | 48 depending on which configuration you would like to play with, then run | 
| 
619a33e8425e
doc/Pirelli-Howto: update for the availability of the hybrid config
 Mychaela Falconia <falcon@freecalypso.org> parents: 
97diff
changeset | 49 'make ram' in the build directory created by the configure script - see the | 
| 
619a33e8425e
doc/Pirelli-Howto: update for the availability of the hybrid config
 Mychaela Falconia <falcon@freecalypso.org> parents: 
97diff
changeset | 50 Compiling write-up for more details. | 
| 97 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 51 | 
| 223 
619a33e8425e
doc/Pirelli-Howto: update for the availability of the hybrid config
 Mychaela Falconia <falcon@freecalypso.org> parents: 
97diff
changeset | 52 Because we have not yet produced a configuration with FAX_AND_DATA and GPRS | 
| 
619a33e8425e
doc/Pirelli-Howto: update for the availability of the hybrid config
 Mychaela Falconia <falcon@freecalypso.org> parents: 
97diff
changeset | 53 disabled, your Magnetite fw build will include those components. In the | 
| 
619a33e8425e
doc/Pirelli-Howto: update for the availability of the hybrid config
 Mychaela Falconia <falcon@freecalypso.org> parents: 
97diff
changeset | 54 FreeCalypso environment where we are not doing WAP or MMS this functionality | 
| 
619a33e8425e
doc/Pirelli-Howto: update for the availability of the hybrid config
 Mychaela Falconia <falcon@freecalypso.org> parents: 
97diff
changeset | 55 can only be exercised on targets that bring out a classic modem UART with the | 
| 
619a33e8425e
doc/Pirelli-Howto: update for the availability of the hybrid config
 Mychaela Falconia <falcon@freecalypso.org> parents: 
97diff
changeset | 56 classic AT command interface to the external host, but the Pirelli is not one | 
| 
619a33e8425e
doc/Pirelli-Howto: update for the availability of the hybrid config
 Mychaela Falconia <falcon@freecalypso.org> parents: 
97diff
changeset | 57 of those targets - hence on this target all FAX_AND_DATA and GPRS code is | 
| 253 
5b6159d76b09
doc/Pirelli-Howto: updated for the current situation
 Mychaela Falconia <falcon@freecalypso.org> parents: 
223diff
changeset | 58 nothing but dead weight. Now that we have deblobbed all of L1 with the | 
| 
5b6159d76b09
doc/Pirelli-Howto: updated for the current situation
 Mychaela Falconia <falcon@freecalypso.org> parents: 
223diff
changeset | 59 exception of GPRS-specific modules, we could try building a hybrid config with | 
| 
5b6159d76b09
doc/Pirelli-Howto: updated for the current situation
 Mychaela Falconia <falcon@freecalypso.org> parents: 
223diff
changeset | 60 GPRS and FAX_AND_DATA excluded, specifically for the benefit of Mot C1xx and | 
| 
5b6159d76b09
doc/Pirelli-Howto: updated for the current situation
 Mychaela Falconia <falcon@freecalypso.org> parents: 
223diff
changeset | 61 Pirelli targets, but these legacy hardware targets are no longer a priority for | 
| 
5b6159d76b09
doc/Pirelli-Howto: updated for the current situation
 Mychaela Falconia <falcon@freecalypso.org> parents: 
223diff
changeset | 62 the FreeCalypso family of projects. | 
| 97 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 63 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 64 Running on the target | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 65 ===================== | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 66 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 67 1. Connect a USB cable from your GNU/Linux PC/laptop to the phone. If the | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 68 phone was off but the battery is present, it will go through a charger-plug | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 69 power-on event; if the flash contains Pirelli's original fw, it will boot in | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 70 the charging mode. If the battery is not present, the Calypso won't power | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 71 on (it needs VBAT and can't run on VCHG power instead), but the /dev/ttyUSBx | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 72 device will still show up, as the CP2102 USB-serial chip inside the phone is | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 73 powered strictly from the USB side. | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 74 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 75 2. Run a command like the following: | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 76 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 77 fc-xram -h pirelli /dev/ttyUSB0 ramimage.srec rvinterf | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 78 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 79 Adjust the paths to your /dev/ttyUSBx device and your ramimage.srec as | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 80 appropriate, and add rvinterf logging or other options as desired. | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 81 Specifying rvinterf on the fc-xram command line directs fc-xram to exec | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 82 rvinterf and pass the serial channel to it immediately as soon as the code | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 83 image has been loaded into target RAM and jumped to; this direct passing of | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 84 the serial channel from fc-xram to rvinterf is appropriate because the | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 85 loaded fw will immediately start emitting binary trace packets in TI's RVTMUX | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 86 format. | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 87 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 88 3. Induce the phone to execute its Calypso boot path: if the battery was | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 89 removed, insert it now; if Pirelli's regular fw is running, execute its | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 90 power-off sequence. | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 91 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 92 Once the Calypso chip in the Pirelli phone executes its boot path with fc-xram | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 93 running, the boot path will be diverted and our experimental firmware will be | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 94 loaded into target device RAM and jumped to. Our fw will now run, and the | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 95 rvinterf process on the host will maintain communication with it. | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 96 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 97 FFS initialization | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 98 ================== | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 99 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 100 When our Magnetite firmware boots, it will examine the state of the flash | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 101 sectors in the area we have allocated for our aftermarket FFS. If this flash | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 102 area is completely blank the first time Magnetite boots, as it should be if you | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 103 have a "virgin" Pirelli phone, the FFS code in our fw will automatically perform | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 104 what TI called the "preformat" operation: write undifferentiated FFS block | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 105 headers (0xBF in the flags byte) into each flash sector. However, it won't | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 106 automatically perform the "format" operation - instead you'll need to run | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 107 fc-fsio to do the format and to populate this FFS with some necessary content. | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 108 If you are not sure of the state of the Magnetite FFS flash area on your | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 109 Pirelli, you can also run fc-fsio to examine it - so run fc-fsio either way. | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 110 Run fc-fsio WITHOUT -p: let it connect to the rvinterf process you should | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 111 already have running from fc-xram. | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 112 | 
| 253 
5b6159d76b09
doc/Pirelli-Howto: updated for the current situation
 Mychaela Falconia <falcon@freecalypso.org> parents: 
223diff
changeset | 113 [NOTE: you need to be running FreeCalypso host tools from the fc-host-tools-r5 | 
| 
5b6159d76b09
doc/Pirelli-Howto: updated for the current situation
 Mychaela Falconia <falcon@freecalypso.org> parents: 
223diff
changeset | 114 release or later; earlier versions of fc-fsio won't work as described.] | 
| 97 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 115 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 116 Once you are in fc-fsio, check the status of your FFS like this: | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 117 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 118 fsio> ls -l / | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 119 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 120 If the FFS is already formatted, you will get a listing of the root directory; | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 121 if it is not formatted, you'll get an error like this: | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 122 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 123 opendir: FFS error 4 (EFFS_NOFORMAT: ffs not formatted) | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 124 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 125 To format and initialize your Pirelli Magnetite FFS, issue the following | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 126 commands: | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 127 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 128 fsio> format / | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 129 fsio> pirelli-magnetite-init | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 130 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 131 If you already have a formatted FFS from before, it is safe to rerun the | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 132 pirelli-magnetite-init command, but not format. The format command will *not* | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 133 work on an already formatted FFS; if you have a messed-up FFS and you would | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 134 like to restart from a clean slate, erase the Magnetite FFS sectors with | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 135 fc-loadtool: | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 136 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 137 loadtool> flash2 erase 480000 180000 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 138 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 139 Exercising the GSM functionality | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 140 ================================ | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 141 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 142 Once your FFS is good, open another terminal window on your driving PC/laptop | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 143 and run fc-shell. This program will connect to the already running rvinterf | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 144 process via a local socket, and it will enable you to send various commands to | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 145 the running fw on the target, the most important ones being standard AT | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 146 commands. Send the following sequence of AT commands to bring up GSM | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 147 functionality: | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 148 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 149 AT+CMEE=2 -- enable verbose error responses | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 150 AT+CFUN=1 -- enable radio and SIM interfaces | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 151 AT+COPS=0 -- register to the default GSM network | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 152 | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 153 When you are done playing with our experimental fw, you can either yank the | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 154 battery and kill the host side rvinterf and fc-shell processes, or you can | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 155 issue a 'tgtreset' command at the fc-shell prompt. The latter will cause the | 
| 
ffa25a27fa27
doc/Pirelli-Howto written
 Mychaela Falconia <falcon@freecalypso.org> parents: 
94diff
changeset | 156 target to reset and boot back into its regular firmware. | 
