FreeCalypso > hg > freecalypso-sw
annotate gsm-fw/ccd/README @ 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 | c36fe9d1da7e |
children |
rev | line source |
---|---|
649
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
1 CCD (Condat Coder and Decoder) is yet another component needed in order to |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
2 produce a functional GSM/GPRS MS (mobile station) firmware image based on the |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
3 TI/Condat architecture. We got the C source for this component from the |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
4 LoCosto find. |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
5 |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
6 CCD code that went into TI's firmware builds (as opposed to TI/Condat's |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
7 Windows-based tools etc) has two subdivisions: |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
8 |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
9 1. The main CCD library - ccd_na7_db.lib in the case of our Leonardo reference |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
10 firmware. The C modules compiled into this library must be very independent, |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
11 as it's one of the "frozen" GPF libs - it appears that GPF was maintained by |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
12 a separate group inside TI, and the builders of actual GSM/GPRS firmwares |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
13 used that group's GPF (and CCD) binary lib deliverables as untouched blobs. |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
14 |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
15 2. The ccddata component is meant to be compiled as part of the product firmware |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
16 build process, in both TCS211 and LoCosto versions. Our Leonardo reference |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
17 version has it in a binary lib too, but it's one of those "unprivileged |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
18 customer" libs, and one can see from the makefiles that it was meant to be |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
19 compiled the same way as L1 and L23 etc. The LoCosto version came with the |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
20 full source for all of CCD, but the build system is set up to only compile |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
21 ccddata, whereas the rest of CCD is used in the form of an imported GPF |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
22 binary lib, just like GPF proper, just like in TCS211. |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
23 |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
24 It appears, however, that the C source for both above-listed parts of CCD has |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
25 always been maintained in a single directory, and that is how it appears in the |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
26 LoCosto find. |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
27 |
661
c36fe9d1da7e
gsm-fw/ccd/README: added paragraph explaining how ccddata depends on cdginc
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
649
diff
changeset
|
28 The true reason for the subdivision became apparent when we went through the |
c36fe9d1da7e
gsm-fw/ccd/README: added paragraph explaining how ccddata depends on cdginc
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
649
diff
changeset
|
29 process of integrating CCD into FreeCalypso. The C modules that comprise |
c36fe9d1da7e
gsm-fw/ccd/README: added paragraph explaining how ccddata depends on cdginc
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
649
diff
changeset
|
30 ccddata include cdginc headers (see ../cdg/README to learn what a nightmare |
c36fe9d1da7e
gsm-fw/ccd/README: added paragraph explaining how ccddata depends on cdginc
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
649
diff
changeset
|
31 that is), require these headers to be present in order to pass compilation, and |
c36fe9d1da7e
gsm-fw/ccd/README: added paragraph explaining how ccddata depends on cdginc
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
649
diff
changeset
|
32 depend on any changes in these headers, whereas the "base" part of CCD (the one |
c36fe9d1da7e
gsm-fw/ccd/README: added paragraph explaining how ccddata depends on cdginc
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
649
diff
changeset
|
33 that was maintained as a GPF stable lib inside TI) has no dependency on cdginc. |
c36fe9d1da7e
gsm-fw/ccd/README: added paragraph explaining how ccddata depends on cdginc
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
649
diff
changeset
|
34 |
649
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
35 For our use in FreeCalypso we shall compile all of CCD (both subdivisions) into |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
36 a single library in this directory - in this project we always compile |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
37 everything from source anyway, so we may as well simplify the build process in |
042735181793
gsm-fw/ccd/README: description of how we are going to tackle this component
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff
changeset
|
38 this regard. |