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