FreeCalypso > hg > freecalypso-tools
view rvinterf/doc/rvinterf.usage @ 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 | e7502631a0f9 |
children |
line wrap: on
line source
Rvinterf (the specific program by this name) is an extended version of rvtdump (see rvtdump.usage) that decodes and dumps and/or logs any and all output generated by the firmware running on the target just like rvtdump, but also creates a local UNIX domain socket on the host machine to which "client" programs can connect. "Client" programs connecting to rvinterf via this local socket interface can: 1. Receive copies of selected RVTMUX packets coming from the target; 2. Send arbitrary RVTMUX packets toward the target. Rvinterf is invoked just like rvtdump: rvinterf [options] /dev/ttyXXX The following options have the same meaning as in rvtdump, see rvtdump.usage for the details: -b, -B, -d and -l. The only difference is that -b without -l is potentially useful and thus allowed. Additional rvinterf options which don't exist in rvtdump are: -n Suppress the output on stdout like -b, but don't fork into background. This option is passed by "client" programs when they invoke rvinterf behind the scenes instead of connecting to an already-running rvinterf instance. -s pathname_for_socket By default the local UNIX domain socket created by rvinterf is bound to /tmp/rvinterf_socket; this option allows any other pathname to be specified. -S <file descriptor number> This option is not meant for direct use by human users. It is passed by "client" programs when they invoke rvinterf behind the scenes with an unnamed and unbound socket pair instead of conecting to an already- running rvinterf instance. -w number_in_seconds It has been discovered experimentally that if an RVTMUX packet is sent to a target when the latter is in the "deep sleep" state, the target wakes up, but the packet that was sent is not received correctly. TI's reference fw seems to wait for 10 s after last serial activity before falling into deep sleep (provided that all other conditions for that sleep mode are satisfied), hence the following workaround has been implemented in rvinterf: if a packet is to be sent to the target and more than a set time has elapsed since the last transmitted packet, the packet is preceded by a "wake-up shot" of 64 0 bytes (outside of a packet, ignored by the fw) and a 100 ms pause. This hack is not pretty, but it appears to do its job of making RVTMUX communication with target firmwares reliable. The -w option changes the elapsed time threshold at which the "wake-up shot" is sent; the default is 7 s. Specify -w 0 to disable this hack altogether.