annotate doc/Pirelli-Howto @ 695:530f71d65c20

uartfax.c: pull from Tourmaline (GTM900 RI output) In addition to the primary intent of bringing in GTM900 RI output support, pulling uartfax.c wholesale from Tourmaline also changes the initial_time argument in the two NU_Create_Timer() calls from 0 to 1. This change is required for the new version of Nucleus used in Tourmaline and Selenite (and apparently also used by TI in LoCosto), and it is harmless (no effect) for the original TCS211 version of Nucleus used in Magnetite. The new philosophical model being adopted is that Tourmaline is our new development head firmware, whereas Magnetite will now be maintained similarly to how Linux maintainers treat stable kernels: changes will be backported from Tourmaline if they are deemed appropriate for stable modem firmware.
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 24 Oct 2020 17:33:10 +0000
parents 39a226a06196
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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: 223
diff 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: 94
diff changeset
5 reasons:
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
6
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff 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: 94
diff changeset
8 CP2102 USB-serial adapter, eliminating the need for headset jack serial
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
9 cables.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
10
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff 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: 94
diff changeset
12 firmware images entirely in RAM without flashing - and we have successfully
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
13 implemented this capability in FC Magnetite similarly to Citrine.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
14
253
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff 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: 223
diff 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: 223
diff 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: 223
diff changeset
18 lab with an FCDEV3B setup.
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff changeset
19
97
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
20 There is, however, one difference between our Citrine and Magnetite firmwares
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff 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: 94
diff 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: 94
diff 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: 94
diff 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: 94
diff 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: 94
diff changeset
26 us to use our own separate FreeCalypso Magnetite FFS.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
27
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff 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: 94
diff changeset
29 0x02480000 through 0x025FFFFF, i.e., offsets 0x480000 through 0x5FFFFF in the
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff 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: 94
diff 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: 94
diff 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: 94
diff 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: 94
diff 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: 94
diff 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: 94
diff 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: 94
diff changeset
37
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
38 Compiling
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
39 =========
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
40
511
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
41 We don't have a FreeCalypso firmware offering for the Pirelli that makes it
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
42 work as an untethered phone, and probably never will: there is too much
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
43 undocumented peripheral hardware in this phone. Instead a Pirelli phone
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
44 running our FC Magnetite firmware will act as voice pseudo-modem: the LCD will
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
45 stay dark and the buttons will do nothing, and you will need to control the GSM
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
46 MS from your PC or other host system via AT commands.
97
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
47
511
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
48 As explained in the Voice-pseudo-modem article, the two most sensible firmware
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
49 configurations (in the ./configure.sh sense) for VPM targets are hybrid-vpm and
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
50 l1reconst-chg. Because of the huge RAM, you can also compile and run our more
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
51 traditional configurations intended for proper modems like FCDEV3B (l1reconst,
556
39a226a06196 documentation update for rebuilding the easy parts of GPF from source
Mychaela Falconia <falcon@freecalypso.org>
parents: 511
diff changeset
52 hybrid or hybrid-osl), but all data services functionality of those fw configs
511
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
53 (CSD and GPRS) will remain inaccessible (dead weight) when running on the
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
54 Pirelli. Furthermore, our FreeCalypso battery charging code is only included
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
55 in the special hybrid-vpm and l1reconst-chg configs, not in the traditional
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
56 ones.
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
57
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
58 Run './configure.sh pirelli l1reconst-chg' or
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
59 './configure.sh pirelli hybrid-vpm' depending on which configuration you would
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
60 like to play with, then run 'make ram' in the build directory created by the
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
61 configure script - see the Compiling write-up for more details.
97
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
62
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
63 Running on the target
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
64 =====================
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
65
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
66 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: 94
diff changeset
67 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: 94
diff changeset
68 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: 94
diff changeset
69 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: 94
diff changeset
70 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: 94
diff changeset
71 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: 94
diff changeset
72 powered strictly from the USB side.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
73
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
74 2. Run a command like the following:
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
75
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
76 fc-xram -h pirelli /dev/ttyUSB0 ramimage.srec rvinterf
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
77
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
78 Adjust the paths to your /dev/ttyUSBx device and your ramimage.srec as
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
79 appropriate, and add rvinterf logging or other options as desired.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
80 Specifying rvinterf on the fc-xram command line directs fc-xram to exec
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
81 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: 94
diff changeset
82 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: 94
diff changeset
83 the serial channel from fc-xram to rvinterf is appropriate because the
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
84 loaded fw will immediately start emitting binary trace packets in TI's RVTMUX
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
85 format.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
86
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
87 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: 94
diff changeset
88 removed, insert it now; if Pirelli's regular fw is running, execute its
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
89 power-off sequence.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
90
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
91 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: 94
diff changeset
92 running, the boot path will be diverted and our experimental firmware will be
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
93 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: 94
diff changeset
94 rvinterf process on the host will maintain communication with it.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
95
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
96 FFS initialization
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
97 ==================
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
98
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
99 When our Magnetite firmware boots, it will examine the state of the flash
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
100 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: 94
diff changeset
101 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: 94
diff changeset
102 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: 94
diff changeset
103 what TI called the "preformat" operation: write undifferentiated FFS block
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
104 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: 94
diff changeset
105 automatically perform the "format" operation - instead you'll need to run
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
106 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: 94
diff changeset
107 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: 94
diff changeset
108 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: 94
diff changeset
109 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: 94
diff changeset
110 already have running from fc-xram.
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
111
253
5b6159d76b09 doc/Pirelli-Howto: updated for the current situation
Mychaela Falconia <falcon@freecalypso.org>
parents: 223
diff changeset
112 [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: 223
diff changeset
113 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: 94
diff changeset
114
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
115 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: 94
diff changeset
116
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
117 fsio> ls -l /
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
118
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
119 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: 94
diff changeset
120 if it is not formatted, you'll get an error like this:
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
121
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
122 opendir: FFS error 4 (EFFS_NOFORMAT: ffs not formatted)
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
123
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
124 To format and initialize your Pirelli Magnetite FFS, issue the following
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
125 commands:
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
126
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
127 fsio> format /
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
128 fsio> pirelli-magnetite-init
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
129
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
130 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: 94
diff changeset
131 pirelli-magnetite-init command, but not format. The format command will *not*
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
132 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: 94
diff changeset
133 like to restart from a clean slate, erase the Magnetite FFS sectors with
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
134 fc-loadtool:
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
135
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
136 loadtool> flash2 erase 480000 180000
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
137
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
138 Exercising the GSM functionality
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
139 ================================
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
140
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
141 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: 94
diff changeset
142 and run fc-shell. This program will connect to the already running rvinterf
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
143 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: 94
diff changeset
144 the running fw on the target, the most important ones being standard AT
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
145 commands. Send the following sequence of AT commands to bring up GSM
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
146 functionality:
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
147
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
148 AT+CMEE=2 -- enable verbose error responses
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
149 AT+CFUN=1 -- enable radio and SIM interfaces
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
150 AT+COPS=0 -- register to the default GSM network
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
151
ffa25a27fa27 doc/Pirelli-Howto written
Mychaela Falconia <falcon@freecalypso.org>
parents: 94
diff changeset
152 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: 94
diff changeset
153 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: 94
diff changeset
154 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: 94
diff changeset
155 target to reset and boot back into its regular firmware.
511
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
156
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
157 A recent addition to our VPM firmware configuration is automatic power-off: if
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
158 you simply disconnect USB while our FC Magnetite VPM fw is running, without
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
159 issuing any tgtreset or poweroff commands and without yanking the battery, our
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
160 firmware should detect the disconnection of USB and power off the phone within
3608ce4a585a doc/Pirelli-Howto: update for current VPM fw status
Mychaela Falconia <falcon@freecalypso.org>
parents: 253
diff changeset
161 10 s.