FreeCalypso > hg > freecalypso-tools
annotate doc/Pirelli-loadtools-entry @ 1009:4a153059abbb
doc/DUART28-boot-control: update for fc-linux-patch and fc-usbser-tools
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Tue, 12 Dec 2023 06:57:11 +0000 | 
| parents | 803e926e0699 | 
| children | 
| rev | line source | 
|---|---|
| 955 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 Pirelli DP-L10 phone is a quirky Calypso target in that the same hardware | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 interface (USB) that provides access to the one easily accessible Calypso UART | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 also feeds charging power to the phone. The result of this arrangement is that | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 whenever you connect your phone to your computer for communication, programming | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 or tinkering, the charging voltage is always present and the Calypso+Iota | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 chipset never enters switched-off state: every "soft poweroff" operation is | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 converted by the hardware into a deep reboot. | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 9 You can force a "cold programming boot" cycle on your Pirelli phone by removing | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 the battery, connecting USB to the "debattered" phone, running fc-loadtool on | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 the ttyUSB device that appears, and then inserting the battery in one swift | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 motion - this sequence will be necessary if you brick your flash and need to | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 unbrick it - but of course it is hugely inconvenient for ordinary FreeCalypso | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 tinkering (such as running FreeCalypso VPM firmware builds via fc-xram), and | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 doing it too often will ruin battery spring contacts. The other alternative is | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 to let Pirelli's official fw boot fully (including GSM network registration) in | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 between cycles of fc-loadtool or fc-xram, and then do the switch-off operation | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 from the UI (press and hold red button on unlocked home screen) with fc-loadtool | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 or fc-xram running. But this option is also unattractive, as it involves | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 unwanted SIM bring-up and GSM network registration from Pirelli's fw. | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 As of fc-host-tools-r19 we have an improved solution in the form of -Petmoff | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 23 option to fc-loadtool, fc-xram, fc-simint etc. The usage scenario is as | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 24 follows: | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 25 | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 26 * The phone needs to be in its "booted for charging only" state. With Pirelli's | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 27 official fw, this state is entered when you connect USB to a switched-off | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 28 phone, or when you execute the switch-off sequence from the UI with USB | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 29 connected. | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 30 | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 31 * In this state, you issue a command like the following: | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 32 | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 33 fc-loadtool -h pirelli -Petmoff /dev/ttyUSB0 | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 34 | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 35 or | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 36 | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 37 fc-simint -h pirelli -Petmoff /dev/ttyUSB0 | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 38 | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 39 or | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 40 | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 41 fc-xram -h pirelli -Petmoff /dev/ttyUSB0 ramimage.srec rvinterf | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 42 | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 43 etc | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 44 | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 45 This -Petmoff option (implemented as part of our generic boot control framework, | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 46 see Target-boot-control article) tells loadtools programs to send an ETM ABB | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 47 write (abbw) command to the target serial port, issuing a DEVOFF write to the | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 48 VRPCDEV register, just before going into the loop that sends beacons aiming to | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 49 interrupt the boot process at the Calypso boot ROM. This trick works because | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 50 Pirelli's official fw implements a TI-standard RVTMUX interface on the Calypso | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 51 IrDA UART behind USB, complete with ETM, and with USB applying VCHG to Iota | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 52 VRPC, the DEVOFF operation (soft poweroff) turns into a deep reboot. | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 53 | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 54 Running loadtools programs with -Petmoff against a Pirelli phone that is fully | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 55 booted, as opposed to "booted for charging only" state, is possible but not | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 56 recommended: it will forcibly kill the running firmware without any kind of | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 57 clean shutdown. Strictly speaking, this option always effects the just- | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 58 described forced firmware kill, no matter which state the official fw happens | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 59 to be in, but if the fw is in its "booted for charging only" state, then there | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 60 are no ill effects to be concerned with. | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 61 | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 62 When fc-loadtool or fc-simint/fc-simtool finishes with a clean exit, or when a | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 63 RAM-based firmware session started with fc-xram is cleanly finished with | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 64 fc-shell poweroff, the phone returns to the same "booted for charging only" | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 65 state. Therefore, multiple operations of fc-loadtool, fc-simtool or fc-xram, | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 66 each with -Petmoff option, may be performed back to back, just like how a | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 67 FreeCalypso developer using a proper FC dev board would run back-to-back | 
| 
803e926e0699
doc/Pirelli-loadtools-entry: new article
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 68 sessions starting with -Pdtr or -Prts and ending with Iota poweroff. | 
