FreeCalypso > hg > freecalypso-tools
annotate doc/Pirelli-loadtools-entry @ 1014:961efadd530a default tip
fc-shell TCH DL handler: add support for CSD modes
TCH DL capture mechanism in FC Tourmaline firmware has been extended
to support CSD modes in addition to speech - add the necessary support
on the host tools side.
It needs to be noted that this mechanism in its present state does NOT
provide the debug utility value that was sought: as we learned only
after the code was implemented, TI's DSP has a misfeature in that the
buffer we are reading (a_dd_0[]) is zeroed out when the IDS block
is enabled, i.e., we are reading all zeros and not the real DL bits
we were after. But since the code has already been written, we are
keeping it - perhaps we can do some tests with IDS disabled.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Tue, 26 Nov 2024 06:27:43 +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. |