FreeCalypso > hg > fc-magnetite
comparison doc/Modem-configs @ 219:b05dba024f95
doc/Handset-configs and doc/Modem-configs written
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sat, 15 Oct 2016 22:41:38 +0000 |
parents | |
children | 828a6898241e |
comparison
equal
deleted
inserted
replaced
218:75ea63a3fce5 | 219:b05dba024f95 |
---|---|
1 Modem configurations | |
2 ==================== | |
3 | |
4 If you would like to build our Magnetite firmware in the AT-command-controlled | |
5 modem configuration (not the C-Sample UI demo on the Mot C139), you have 3 | |
6 specific configurations to choose from, differing in the level of deblobbing: | |
7 | |
8 classic This configuration replicates classic TCS211, just like | |
9 leo2moko from 2013. Almost all of the original binary blob | |
10 libraries are used; the only components that are recompiled | |
11 from source are those which we got in source form with our copy | |
12 of TCS211 from Sotovik. This config can only be built for the | |
13 fcdev3b and gtamodem targets, not for c139 or pirelli. | |
14 | |
15 l1reconst In this configuration most of L1 (GSM Layer 1) is recompiled | |
16 from reconstructed source, although this deblobbing of L1 is | |
17 not 100% complete yet: for some pieces of L1 the original binary | |
18 object blobs are still used. Some housekeeping pieces are also | |
19 recompiled from source that had to be reconstructed. This | |
20 config can be built for all targets. | |
21 | |
22 hybrid This configuration is a TCS2/TCS3 hybrid. Instead of using the | |
23 TCS211 version of the G23M protocol stack which we got only as | |
24 binary blobs, this config uses the G23M PS version from the | |
25 TCS3.2/LoCosto source, backported to work with L1 and the fw | |
26 foundation layers from TCS211. ACI also had to be replaced with | |
27 the TCS3 version, and a special hybrid version of the cdginc | |
28 headers had to be constructed. L1 is also deblobbed to the | |
29 same extent as in l1reconst. Like l1reconst, this config can | |
30 be built for all targets, and it is currently the most deblobbed | |
31 (closest to full source) Magnetite config. | |
32 | |
33 All 3 of the above configurations have CSD, fax and GPRS enabled, i.e., include | |
34 functionality that will only become exercisable when we build our FCDEV3B and | |
35 is dead weight until then, while we limp along with the currently available | |
36 hardware. We will need to deblob more of L1 (the l1audio and l1tm modules for | |
37 which we currently still use the original object blobs) before we can try | |
38 building a functionally reduced configuration that would be more appropriate | |
39 for the feeble hardware targets. | |
40 | |
41 The deblobbing of L1 has been done in a very meticulous manner, ensuring that | |
42 each individual reconstructed C module compiles into a strict functional | |
43 equivalent of the original binary blob, sometimes even matching bit for bit - | |
44 thus no regressions are expected with the classic->l1reconst transition, and no | |
45 extensive testing is deemed necessary beyond the basic tests that have already | |
46 been done. However, the transition from l1reconst to hybrid involves wholesale | |
47 replacement of two major firmware components (G23M PS and ACI) and some | |
48 important associated support pieces with entirely different versions from a | |
49 different TI program, hence extensive testing and debugging will be needed. | |
50 | |
51 So far the most-deblobbed hybrid config looks very promising: after fixing the | |
52 hideous bug resulting from the addition of A5/3 support in TCS3.2 (hardware | |
53 feature available on LoCosto but not on Calypso), voice calls work perfectly, | |
54 both with the legacy codecs and with AMR! (The same A5/3 bugfix has also been | |
55 applied to our Citrine fw, hence the latter now has working voice calls too.) | |
56 However, it is almost certain that there are a ton of minor bugs which need to | |
57 be shaken out, hence this firmware build config should be treated as | |
58 experimental for the time being, not production. My plan is to work on shaking | |
59 out the minor bugs and bringing this hybrid fw to production quality after we | |
60 build the proper hardware platform for it, i.e., the FCDEV3B. |