FreeCalypso > hg > freecalypso-sw
changeset 388:821a26f90968
doc/RVTMUX: minor fixes
author | Michael Spacefalcon <msokolov@ivan.Harhan.ORG> |
---|---|
date | Tue, 10 Jun 2014 20:59:32 +0000 |
parents | 4391890bacd9 |
children | e60aecf23970 |
files | doc/RVTMUX |
diffstat | 1 files changed, 27 insertions(+), 22 deletions(-) [+] |
line wrap: on
line diff
--- a/doc/RVTMUX Tue Jun 10 20:07:13 2014 +0000 +++ b/doc/RVTMUX Tue Jun 10 20:59:32 2014 +0000 @@ -20,19 +20,24 @@ Normally this debug/development serial interface (called RVTMUX as will be explained momentarily) is hidden from "ordinary" users - for example, on FIC GTA0x phones it is wired to the analog headset jack through a hardware switch -which needs to be enabled through a GPIO signal from the AP. But there also -exist some oddball devices on which the RVTMUX interface is presented "in your -face". The Pirelli DP-L10 phone has a USB charging port which is also wired -(through a CP2102 USB-serial chip) to the IrDA UART on the Calypso - that's -right, IrDA, not MODEM - a design decision with which this hacker strongly -disagrees. (It'll definitely be wired to the MODEM UART instead on our own -semi-clone of this phone, but I digress.) Apparently Foxconn (the designers -of this phone) had no desire to provide a standard AT command interface, and -instead the only "official" way to use the "data" function of their USB port -(rather than the charging function) is for their "PC sync" feature, i.e., their -proprietary Weendoze software. And guess what, their proprietary "PC sync" -feature works over TI's RVTMUX interface, as that is what's presented on -Calypso's IrDA UART behind the CP2102! +which needs to be enabled through a GPIO signal from the AP. On Mot C139 and +its siblings the situation is similar: one needs to key in the secret magic +sequence **16379#, and then the firmware presents a hidden menu for switching +the analog headset jack between its "normal" function and the UART carrying +RVTMUX. + +But there also exist some oddball devices on which the RVTMUX interface is +presented "in your face". The Pirelli DP-L10 phone has a USB charging port +which is also wired (through a CP2102 USB-serial chip) to the IrDA UART on the +Calypso - that's right, IrDA, not MODEM - a design decision with which this +hacker strongly disagrees. (It'll definitely be wired to the MODEM UART +instead on our own semi-clone of this phone, but I digress.) Apparently Foxconn +(the designers of this phone) had no desire to provide a standard AT command +interface, and instead the only "official" way to use the "data" function of +their USB port (rather than the charging function) is for their "PC sync" +feature, i.e., their proprietary Weendoze software. And guess what, their +proprietary "PC sync" feature works over TI's RVTMUX interface, as that is +what's presented on Calypso's IrDA UART behind the CP2102! OK, so what is this RVTMUX? RV stands for RiViera, an application framework which TI added to their GSM firmware suite in the early 2000s, T stands for @@ -47,13 +52,13 @@ synchronization. The firmware suite component responsible for actually sending and receiving -these packets over the assigned UART port (usually IrDA, but can be MODEM too) -is called RVT (RiViera Trace), and it implements a MUX function. There are -several logical channels multiplexed over one physical serial port, and the -first byte of every packet indicates which logical channel it belongs to. Any -component within the GSM firmware suite can send packets to RVT for transmission -on this serial interface, and can also register to receive packets beginning -with a particular type ID byte. +these packets over the assigned UART port (usually IrDA, but can be MODEM too, +as on Compal phones for example) is called RVT (RiViera Trace), and it +implements a MUX function. There are several logical channels multiplexed over +one physical serial port, and the first byte of every packet indicates which +logical channel it belongs to. Any component within the GSM firmware suite can +send packets to RVT for transmission on this serial interface, and can also +register to receive packets beginning with a particular type ID byte. Use in FreeCalypso ================== @@ -105,7 +110,7 @@ ======================= TI made two different and entirely incompatible versions of the TMFFS protocol -for accessing a device's FFS via RVT/ETM: TIFFS1 and TIFFS2. The fw sources +for accessing a device's FFS via RVT/ETM: TMFFS1 and TMFFS2. The fw sources available to us contain implementations of both versions, so we have the freedom to use whichever we like better for FreeCalypso. After studying the fw source implementing the two TMFFS protocols, I (Space Falcon) came to the conclusion @@ -126,7 +131,7 @@ implements TMFFS1, simply because that was the selected configuration in the found Leonardo source that transitional fw is based on, and that release was made before I learned RVTMUX, FFS, ETM and TMFFS properly. All future -FreeCalypso firmwares will use TIFFS2, or at least that's the current plan. +FreeCalypso firmwares will use TMFFS2, or at least that's the current plan. Host utility support ====================