FreeCalypso > hg > fc-am-toolkit
annotate doc/Pirelli-VPM-howto @ 27:9e7ca43275eb
doc/Pirelli-VPM-howto: new article
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Mon, 12 Jun 2023 04:21:16 +0000 |
parents | |
children |
rev | line source |
---|---|
27
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 Running FreeCalypso VPM firmware on a Pirelli DP-L10 phone is much easier and |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 much more convenient than doing the same on Mot C1xx. There are two principal |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 reasons for this difference: |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 * Pirelli DP-L10 has huge RAM (8 MiB), allowing our FC aftermarket fw to run |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 entirely in RAM (fc-xram) without flashing. |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 * In the flash layout used by official fw, there is an area that is used only |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 for high-level firmware updates over WLAN (as opposed to "surgical" firmware |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 reflashing with fc-loadtool) and remains unused otherwise. We put our |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 aftermarket FFS in this part of the flash, and this aftermarket FFS just stays |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 there, untouched by Pirelli's official fw, in between fc-xram sessions that |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 run FC VPM fw. |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 This article explains how to initialize the aftermarket FFS for FreeCalypso fw |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 on your Pirelli phone, and how to actually run the VPM fw afterward. |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 Required software components |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 ============================ |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 You will need the following 4 FreeCalypso software packages installed on your |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 host machine: |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 1) FC host tools base package: |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 ftp://ftp.freecalypso.org/pub/GSM/FreeCalypso/fc-host-tools-latest.tar.bz2 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 2) FFS data bundle add-on: |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 ftp://ftp.freecalypso.org/pub/GSM/FreeCalypso/ffs-data-bundle-latest.tar.bz2 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 3) FFS editing agent target binaries: |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 ftp://ftp.freecalypso.org/pub/GSM/FreeCalypso/ffs-editor-latest.tar.bz2 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 4) The present fc-am-toolkit package. |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 All 4 packages install all of their files under the /opt/freecalypso directory |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 tree defined by the Mother, and you only need to do this host software |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 installation once (or when updates come out), irrespective of how many phones |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 of various kinds (both Pirelli DP-L10 and Mot C1xx) you are going to work with. |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 Working with Pirelli phones: general principles |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 =============================================== |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 In order to work with a Pirelli DP-L10 phone in any interesting way, you need |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 to connect it to your host computer via USB. However, USB VBUS rail is also |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 used as the charging power source on this phone, hence any time USB is |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 connected, the Calypso+Iota chipset gets the "charger inserted" condition |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 applied to it, and is not allowed to be fully switched off. The solution |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 adopted by the Mother of FreeCalypso consists of using the "booted for charging |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 only" mode of Pirelli's official fw, plus the -Petmoff mechanism added to |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 loadtools in fc-host-tools-r19. |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 Like all standard handset firmwares, Pirelli's official fw has two fundamental |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 operating modes in terms of power on/off control: it can be fully booted, in |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 which case GSM functionality is brought up (network registration, or if there |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 is no SIM, camping on whatever cell it can find for the possibility of an |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 emergency call), or it can be booted for charging only. If you plug USB into a |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 fully switched-off Pirelli phone, the firmware will boot, but it won't do |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 anything other than manage the charging process - that is what we call "booted |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62 for charging only" mode. Another way to enter this mode is to plug USB into the |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 phone while it is in fully booted state (with menus working normally), and then |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
64 execute the power-off sequence. The firmware will actually command the same |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
65 regular soft power-off as it would in the absence of charging, but the presence |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
66 of VCHG (coming from USB VBUS) causes the chipset to immediately do another |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
67 switch-on - and then the firmware boots again, this time for charging only. |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
68 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
69 When the firmware is booted for charging only (and you don't give it the |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
70 additional button press that ungates full boot), all GSM functionality is off |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
71 (the SIM interface is powered off, and no radio bring-up is done, not even for |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
72 emergency mode), but the RVTMUX interface is fully working. Pirelli's fw |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
73 includes ETM, and we can send it an ETM ABB write (abbw) command that writes to |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
74 the VRPCDEV register in the Iota chip, commanding switch-off. We can make this |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
75 intrusion into Pirelli's fw in any state, but doing so in the regular fully |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
76 booted state (basically killing the running fw by brute force) is obviously bad. |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
77 However, when the fw is booted for charging only, killing it in this manner |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
78 causes no harm, as there is nothing running besides the charging process - and |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
79 the Iota chip does turn off charging when this switch-off is executed. |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
80 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
81 Thus comes our general principle: whenever you wish to use your Pirelli DP-L10 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
82 phone for playing with FreeCalypso VPM, begin by putting it into the "booted |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
83 for charging only" state. If you started with the phone off, simply plug in USB |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
84 but don't press the "On" button, and if you started with the phone on, you can |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
85 plug in USB and then turn it off. When the phone is in this state and you need |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
86 to run fc-loadtool, fc-simint, fc-xram or any other loadtools program, run your |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
87 fc-loadtool or fc-xram etc command with an added -Petmoff option, and then you |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
88 don't need to do any manual manipulations on the phone: the Calypso boot ROM |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
89 entry will happen as soon as you execute the command on the host. And when your |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
90 fc-loadtool or fc-simint session cleanly finishes, or when you finish an FC VPM |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
91 fw session with fc-shell poweroff or AT@POFF, the phone will return to the same |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
92 "booted for charging only" state - very convenient! This "booted for charging |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
93 only" state, running Pirelli's official fw in the flash, thus becomes the |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
94 "ground" state for FreeCalypso manipulations, corresponding to the fully |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
95 switched-off state on a Mot C1xx phone or a traditional TI/FC dev board. |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
96 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
97 Aftermarket FFS initialization |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
98 ============================== |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
99 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
100 To initialize the aftermarket FFS for FC firmware on your Pirelli phone, |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
101 execute this command: |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
102 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
103 pirelli-init-fc-ffs /dev/ttyUSB0 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
104 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
105 (Change ttyUSB0 to other ttyUSBx if needed.) |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
106 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
107 This command is a shell script, the script begins with an fc-loadtool batch |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
108 operation erasing the aftermarket FFS area, and that fc-loadtool batch command |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
109 invokation is made with -Petmoff option described in the previous section - |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
110 thus the phone needs to be in "booted for charging only" mode when you run that |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
111 pirelli-init-fc-ffs command. |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
112 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
113 After erasing the aftermarket FFS area with fc-loadtool, our pirelli-init-fc-ffs |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
114 script runs our FFS editing agent via fc-xram, and then does the actual FFS |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
115 initialization via fc-fsio. An fc-fsio command script stashed in |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
116 /opt/freecalypso/scripts/pirelli-am-ffsinit (installed by the present |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
117 fc-am-toolkit package) contains the actual magic commands, and these commands |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
118 populate the FFS with files that come from FC FFS data bundle package. |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
119 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
120 You can rerun this pirelli-init-fc-ffs operation at any time, if you need to |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
121 reset the aftermarket FFS to its pristine state or if you got an updated version |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
122 of the relevant files in the FFS data bundle. |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
123 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
124 Running VPM firmware |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
125 ==================== |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
126 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
127 To run FC VPM firmware, once your Pirelli phone is in "booted for charging only" |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
128 mode and the aftermarket FFS has been initialized as above, execute a command |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
129 of this form: |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
130 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
131 fc-xram -h pirelli -Petmoff /dev/ttyUSB0 path/to/ramimage.srec rvinterf |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
132 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
133 The FC firmware image needs to be ramimage.srec; to build this image format (if |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
134 you are compiling your own fw, rather than using a released build), run |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
135 'make ram' in the firmware build directory. (By default the firmware build |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
136 system produces flash images on all targets, but on the Pirelli target you |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
137 really don't want to flash this fw - hence the need to run 'make ram' |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
138 explicitly.) |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
139 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
140 When you run the above command, the firmware image will be loaded into XRAM and |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
141 jumped to. The command is structured so that fc-xram will then pass the serial |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
142 communication channel to rvinterf, and from that point on you have a regular |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
143 rvinterf session, talking to an in-RAM (not flashed) firmware instance. The |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
144 principles and guidelines for exercising the GSM MS as a VPM are the same as |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
145 described in the C1xx-VPM-usage article for C1xx phones - please refer to that |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
146 article. |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
147 |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
148 Instead of checking for a present rvinterf process via keepalive packets, the |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
149 Pirelli DP-L10 version of our VPM firmware periodically (every 10 s) checks |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
150 for still-present USB connection, by checking the "charger present" status bit |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
151 in Iota VRPCSTS register. If it detects USB unplug, it performs an immediate |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
152 power-off - and because the firmware is not flashed, only loaded in RAM, the |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
153 next boot cycle (be it the power button or USB plug-in) will return the phone |
9e7ca43275eb
doc/Pirelli-VPM-howto: new article
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
154 to its regular official fw. |