view doc/FCDEV3B-751774 @ 629:3231dd9b38c1

armio.c: make GPIOs 8 & 13 outputs driving 1 on all "classic" targets Calypso GPIOs 8 & 13 are pinmuxed with MCUEN1 & MCUEN2, respectively, and on powerup these pins are MCUEN, i.e., outputs driving 1. TI's code for C-Sample and earlier turns them into GPIOs configured as outputs also driving 1 - so far, so good - but TI's code for BOARD 41 (which covers D-Sample, Leonardo and all real world Calypso devices derived from the latter) switches them from MCUEN to GPIOs, but then leaves them as inputs. Given that the hardware powerup state of these two pins is outputs driving 1, every Calypso board design MUST be compatible with such driving; typically these GPIO signals will be either unused and unconnected or connected as outputs driving some peripheral. Turning these pins into GPIO inputs will result in floating inputs on every reasonably-wired board, thus I am convinced that this configuration is nothing but a bug on the part of whoever wrote this code at TI. This floating input bug had already been fixed earlier for GTA modem and FCDEV3B targets; the present change makes the fix unconditional for all "classic" targets. The newly affected targets are D-Sample, Leonardo, Tango and GTM900.
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 02 Jan 2020 05:38:26 +0000
parents 9f19cc5e46e8
children
line wrap: on
line source

We have one experimental FCDEV3B V2 board on which our regular Calypso chip
([P]D751992AGHH) has been replaced with D751774AGHH, an earlier F-number
featuring DSP ROM version 3416 rather than the final version 3606 which we
normally work with.  Both chip versions are Calypso C035 variants (ARM7 running
at 52 MHz, DSP running at 104 MHz), and both include AMR support - but there
must have been some issue with DSP version 34 (and maybe version 35 used in
Calypso+) that compelled TI to produce the newer and final version 36 which we
are most familiar with.

Our Layer1 code is based on TI's TCS211-20070608 semi-src release (which we have
reconstructed back to full source), and it officially supports only DSP 36.
However, our FC Magnetite firmware can also be built for DSP 34 targets (see
the Calypso-version-override article), in which case we use a monolithic DSP
patch (no L1_DYN_DSP_DWNLD) extracted from the TSM30 source.  The patch version
is 4130.

The configure.sh target name for this special modified board is fcdev3b-dsp34
instead of just fcdev3b, and the two firmware builds are not interchangeable:
the regular fcdev3b build goes into regular FCDEV3B boards, the special
fcdev3b-dsp34 build goes into the special FCDEV3B-751774 board.  However, when
running its respective build this DSP 34 board appears to function just as well
as our regular DSP 36 targets: standalone RF tests work, DSP-based audio
services (beeps and Melody E1) work, connecting to a live GSM network worked,
a few test voice calls worked, all of them connected in AMR mode, voice passed
successfully in both directions.

Going forward, we shall continue using D751992AGHH chips with DSP ROM version
3606 as our regular platform, but it is nice to know that the earlier DSP 34
apparently works too.