FreeCalypso > hg > freecalypso-tools
comparison rvinterf/doc/README.old @ 0:e7502631a0f9
initial import from freecalypso-sw rev 1033:5ab737ac3ad7
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Sat, 11 Jun 2016 00:13:35 +0000 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:e7502631a0f9 |
|---|---|
| 1 You are looking at the suite of FreeCalypso tools for talking to the RVTMUX | |
| 2 interface provided by TI-based GSM firmwares. If you haven't already, please | |
| 3 read ../doc/RVTMUX first. | |
| 4 | |
| 5 The fundamental difference between these tools and loadtools is that loadtools | |
| 6 operate on a GSM device while its regular firmware is shut down, whereas the | |
| 7 present rvinterf tools talk to active running GSM firmwares. | |
| 8 | |
| 9 The following tools are currently implemented: | |
| 10 | |
| 11 rvtdump Opens the serial port, decodes TI's binary packet protocol, and | |
| 12 simply dumps every received/decoded packet on stdout in a human- | |
| 13 readable form. No provision for sending anything to the target. | |
| 14 Intended use: observing the debug trace output which all TI | |
| 15 firmwares emit as standard "background noise". This utility | |
| 16 allows one to observe/log/study the "noise" that appears on | |
| 17 Pirelli's USB-serial port (running Pirelli's original fw), | |
| 18 as well as that emitted on the IrDA (headset jack) port on the | |
| 19 GTA02 by mokoN/leo2moko firmwares. | |
| 20 | |
| 21 rvinterf Provides a bidirectional interface to RVTMUX on the host side. | |
| 22 It dumps and/or logs the "background noise" emitted by the | |
| 23 target just like rvtdump, but also creates a local UNIX domain | |
| 24 socket on the host machine to which other programs can connect, | |
| 25 replicating the MUXing function on the host side. | |
| 26 | |
| 27 fc-tmsh Interactive asynchronous test mode shell. This program connects | |
| 28 to a target GSM device through rvinterf and allows a developer- | |
| 29 operator to send various ETM commands to the target. ETM | |
| 30 responses are decoded (sometimes only lightly) and displayed. | |
| 31 fc-tmsh is fully asynchronous in that it continuously listens | |
| 32 (via select(2)) both for user input and for packets from the | |
| 33 target at the same time, translating any user-entered commands | |
| 34 into packets to the target and conversely, scribbling on the | |
| 35 terminal when a packet arrives from the target. It has no | |
| 36 knowledge of any correspondence between commands and responses | |
| 37 they normally elicit. | |
| 38 | |
| 39 g23sh Like fc-tmsh (same asynchronous design), but for GPF/G23 rather | |
| 40 than ETM. This tool and FreeCalypso project's understanding of | |
| 41 GPF/G23 in general are currently in the earliest stages, so it | |
| 42 is premature to try to describe it any further at this point. | |
| 43 | |
| 44 fc-sendsp Precursor to g23sh; even less worthy of further documentation. | |
| 45 | |
| 46 fc-fsio This program uses RVTMUX, ETM and TMFFS2 to access the live file | |
| 47 system of a running GSM firmware. Of the existing proprietary | |
| 48 firmwares, the only one that implements the TMFFS2 protocol | |
| 49 required for fc-fsio is Pirelli's, to the best of our knowledge. | |
| 50 This program connects to the target through rvinterf, but it | |
| 51 differs from fc-tmsh in that it operates in a synchronous | |
| 52 manner: the flow of operation is driven by user commands (just | |
| 53 like in fc-loadtool), and every time the program sends an ETM | |
| 54 command packet to the target, it expects a lock-step response. | |
| 55 | |
| 56 tfc139 See ../doc/Compal-unlock | |
| 57 | |
| 58 The fc-fsio, fc-tmsh and g23sh tools connect to the target not directly, but | |
| 59 via rvinterf. Two usage scenarios are supported: | |
| 60 | |
| 61 1. The user explicitly runs rvinterf (either directly or secondary to fc-xram, | |
| 62 when testing an experimental FreeCalypso firmware ramImage), leaves it | |
| 63 running (either backgrounded or in its own terminal window), and then runs | |
| 64 one of the "client" programs: fc-fsio, fc-tmsh or g23sh. The two programs | |
| 65 connect via local UNIX domain sockets on the host machine. | |
| 66 | |
| 67 2. All of the "client" programs under discussion can also launch rvinterf | |
| 68 themselves. An instance of rvinterf lauched in this manner becomes a child | |
| 69 process of the "client" program, terminating together with it, and the two | |
| 70 processes communicate via an unnamed and unbound socket pair. |
