annotate gsm-fw/gpf/inc/gpfconf.h @ 923:10b4bed10192

gsm-fw/L1: fix for the DSP patch corruption bug The L1 code we got from the LoCosto fw contains a feature for DSP CPU load measurement. This feature is a LoCosto-ism, i.e., not applicable to earlier DBB chips (Calypso) with their respective earlier DSP ROMs. Most of the code dealing with that feature is conditionalized as #if (DSP >= 38), but one spot was missed, and the MCU code was writing into an API word dealing with this feature. In TCS211 this DSP API word happens to be used by the DSP code patch, hence that write was corrupting the patched DSP code.
author Mychaela Falconia <falcon@ivan.Harhan.ORG>
date Mon, 19 Oct 2015 17:13:56 +0000
parents 06ee56829697
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
317
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
1 /*
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
2 * This header file is a FreeCalypso addition; ditto for the
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
3 * #include "gpfconf.h" lines which had to be added near the beginning
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
4 * of just about every original GPF header file.
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
5 *
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
6 * In their original form, GPF sources and headers required all of the
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
7 * library compile-time configuration settings (i.e., those config
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
8 * settings which affect the library build, rather than stuff set in
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
9 * the separately-linked configuration module) to be given as -D arguments
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
10 * on the compilation command line. It would have been fine if these
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
11 * -D definitions were needed only for the build of GPF libs themselves,
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
12 * but the #ifdef logic in the header files means that these -D defs
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
13 * were also needed for every user of these GPF headers as well!
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
14 *
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
15 * This bizarre quirk of the GPF headers is fully consistent with TI's
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
16 * general approach of supplying an insanely long list of -I's and -D's
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
17 * on the cl470 compilation command line for every single module,
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
18 * first through BuSyB-generated makefiles, then later through SBuild
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
19 * voodoo. Needless to say, we wish no part of that lunacy in FreeCalypso.
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
20 *
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
21 * Because of the nature of the preprocessor definitions needed for GPF
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
22 * (some are totally fixed, others may be tweaked for debugging, but
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
23 * none are of the target/feature-dependent sort), I decided to create
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
24 * this gpfconf.h header file instead of adding this junk to the
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
25 * config.h mechanism.
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
26 */
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
27
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
28 /* the following two are needed unquestionably */
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
29 #define _TARGET_ 1
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
30 #define _NUCLEUS_ 1
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
31
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
32 /*
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
33 * GPF build configuration settings like debug and memory supervision
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
34 * are selected here. For now I'm setting the "official" configuration
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
35 * to match that of the GPF libs in the Leonardo semi-src, the one that
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
36 * runs on the GTA02 modem as leo2moko production-quality firmware.
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
37 */
06ee56829697 GPF: frame.c compiles
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
38 #define NU_DEBUG 1