FreeCalypso > hg > freecalypso-reveng
view compal/audio/tfc139-headset-entry @ 378:82fb5a70c9fd
compal/audio: results of simple experiments
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sat, 09 Oct 2021 23:20:00 +0000 |
parents | |
children |
line wrap: on
line source
The following results have been obtained by connecting to a C139 phone via the headset jack, switching to "Trace On" via the **16379# hidden menu, breaking in with tfc139, then running the new tfc139-audio-dump command in fc-loadtool: d_aec_ctrl: 0x03C7 New AEC params: 0x0001 0x0014 0x4CCC 0x59AD 0x7500 0x0000 0x1000 0x1000 Uplink FIR coefficients: 0x4000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 Downlink FIR coefficients: 0x7FFF 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 VBCTRL1: 0x004 VBCTRL2: 0x007 VBPOP: 0x004 VBUCTRL: 0x1B2 VBDCTRL: 0x069 Commentary: the values read out of VBCTRL1 and VBCTRL2 registers are consistent with the headset audio channel being selected for both input and output, leading to the suspicion that the firmware probably switched the audio path to headset mode even though the **16379# hidden menu selection was set to "Trace On". The Mother's primary interest here is to see the official C139 fw settings for the handheld audio mode (built-in earpiece and mic) rather than the headset mode, but it now appears that such capture won't be possible except maybe by connecting to the production test pads inside the battery compartment, bypassing the headset jack. Looking at what appears to be C139 headset mode audio config, we see that HSMICBIAS voltage is set to 2.0 V, the uplink gain is set to 8 dB, and the sidetone level is set to -23 dB: we get this info from the MICBIAS bit in VBCTRL1 and the VBUCTRL setting. Decoding VBDCTRL, we see that the volume control is set to -6 dB and the PGA gain is set to 3 dB. However, these VBDCTRL settings don't tell us much: see the volume-ctrl article. Also note the FIR coefficient oddity: no frequency curve-transforming FIR filters are being set up, neither UL nor DL, but DL FIR coefficient 0 is set to 0x7FFF instead of 0x4000. This oddity means that Calypso DL FIR block is producing a 6 dB gain (doubling of the samples) purely on the digital side, before DL audio passes to the ABB - certainly a noteworthy hack.