annotate rvinterf/README @ 916:8e1c55cf7989

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