FreeCalypso > hg > fc-magnetite
annotate doc/Handset-goal @ 374:3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Fri, 12 Jan 2018 01:39:11 +0000 | 
| parents | doc/Handset-configs@5b1358df7e3c | 
| children | 3f1a587b3a84 | 
| rev | line source | 
|---|---|
| 219 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 Work toward end user libre phone firmware | 
| 
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 Phone handset firmware, i.e., fw that makes a phone device work as an untethered | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 phone and not just a serial-cable-controlled pseudo-modem, requires a few | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 additional layers of functionality beyond AT-command-controlled modem fw: | 
| 
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 * The hardware-specific LCD driver, called R2D in TI's TCS211 program; | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 9 * The actual phone UI implementation, which the cellular industry calls by the | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 sexist term "MMI" - TI's implementation consists of two components called BMI | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 and MFW; | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 * Battery management (monitoring and charging); | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 * Fairly complex on/off logic to handle all possible combinations of turn-on, | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 turn-off, charging while "on", charging while "off", charging completed or | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 failed but charging power source not unplugged yet. | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 The code we got from TI with the TCS211 delivery by Sotovik includes only a | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 very rudimentary implementation of the above functions that basically amounts | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 to nothing more than a proof of concept, and is absolutely not ready for driving | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 a real end user phone: the UI code contains crashing and other killer bugs, the | 
| 374 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 21 battery management driver officially endorsed by TI for the TCS211 program (LCC | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 22 for "low cost" unregulated chargers) is not appropriate for phones that use | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 23 simple charging circuits and regulated +5 VDC charging power sources (USB or | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 24 Motorola's C1xx charging adapters), and TI's older PWR battery management | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 25 driver (TI totally removed it from TCS211, but we pulled it from the older | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 26 MV100 source fragments) is bitrotten and just generally broken. | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 27 | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 28 In FreeCalypso we have developed our own battery charging and discharge | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 29 monitoring driver (FCHG) that works on Mot C1xx and Pirelli DP-L10 phones in | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 30 the "voice pseudo-modem" configuration (see doc/Voice-pseudo-modem), but we | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 31 still have the problem of the UI, namely, the lack of one that is practically | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 32 usable. | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 33 | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 34 Because TI were in the business of making and selling chipsets rather than | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 35 complete phones, proper phone UI development was something they left to their | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 36 customers, and they provided only a very rough proof of concept implementation. | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 37 One difficulty which we face most immediately in our effort to turn this PoC UI | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 38 implementation into a practically usable one is the lack of support for our | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 39 desired target display sizes. Because TI apparently did not want to become | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 40 significantly involved in phone UI development, they did not provide a selection | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 41 of UI layouts for different LCD sizes; instead at each given point in TI's | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 42 history they only supported one display size - whatever their current | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 43 development platform at each moment had on it. | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 44 | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 45 At the time of TCS211, TI's primary development platform was called D-Sample; | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 46 it consisted of a development board with the Calypso+Iota chipset on it (as | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 47 well as a GSM RF section based on their older Clara RF transceiver chip) plus | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 48 an attached test handset. Here are some pictures: | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 49 | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 50 https://www.freecalypso.org/members/falcon/pictures/D-Sample/ | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 51 | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 52 The handset part of the D-Sample kit contains a 176x220 pixel color LCD, a | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 53 21-button main keypad just like on Mot C1xx and Pirelli DP-L10 phones, and 3 | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 54 side buttons that almost match Pirelli's. This D-Sample was the main | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 55 development platform for the entire TCS211 program (basically everything except | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 56 the small parts specific to Rita RF for which they had their other Leonardo | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 57 development boards), including the UI - the latter was made to target the | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 58 176x220 pix LCD size on the D-Sample. | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 59 | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 60 I (Mychaela) have managed to obtain one of these historical D-Sample kits (the | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 61 one pictured) back in 2015, and I have a strong desire to get the TCS211 PoC UI | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 62 up and running in its native 176x220 pixel size. However, the big difficulty | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 63 with getting our FC Magnetite firmware running on the original D-Sample board | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 64 (which, remember, is the original and most native hw target for TCS211!) is | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 65 that the D-Sample has Clara RF, not Rita, and we only got a stripped semi-src | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 66 version of TCS211 in which the *.c files for L1 were censored out and only | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 67 *.obj blobs were supplied instead. The latter blobs target Rita RF and not | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 68 Clara. We have now successfully reconstructed the lost C sources for the RF- | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 69 independent and Rita-specific L1 modules, and we have l1_rf10.c for Clara RF | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 70 from the MV100 source fragments, but we are still missing the tpudrv10.c module | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 71 which is also required for Clara RF. | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 72 | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 73 Back in 2015 (when I first got this D-Sample kit) running our own firmware on | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 74 this historical board with an older version of the Calypso chip and with Clara | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 75 RF was absolutely out of the question, but since then we have made enormous | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 76 progress with our complete deblobbing of L1 and the init module and with our | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 77 FC Magnetite build system, and now that tpudrv10 module is literally the only | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 78 missing piece. Given these new circumstances, I plan on making some serious | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 79 effort to locate the TPU driver code in the ancient 20020917 fw image that came | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 80 with our DS board, and attempt to reconstruct the needed tpudrv10 code from | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 81 that. | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 82 | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 83 We also have a fallback plan: if we are not able to get our FC Magnetite | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 84 firmware running on the historical TI-made D-Sample board, there is another way | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 85 to get TI's TCS211 UI code running in its original 176x220 pixel size, albeit | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 86 one that will require a lot of time, effort and expense: design and build our | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 87 own UI development board to take the place of TI's D-Sample, combining the good | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 88 version of the Calypso+Iota+Rita chipset for which we have good fw support with | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 89 a 176x220 pix color LCD of our own - it is one of the industry standard sizes, | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 90 so it should only be a matter of getting a semi-custom one with the right | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 91 interface (16-bit parallel) and the right polarizer orientation (6 o'clock | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 92 viewing direction). The proposed board would be a derivative of our current | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 93 FCDEV3B, keeping the core Calypso+RF block (originally from Openmoko) completely | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 94 unchanged, but adding the LCD, the keypad buttons and other handset peripherals, | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 95 resulting in a Handset Motherboard Prototype - HSMBP. | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 96 | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 97 Once we get TI's TCS211 UI running in its original 176x220 pixel size like it | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 98 once ran in TI's own software development labs back in The Day, whether we do | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 99 it by way of TI's original DS board or our own HSMBP, the next step will be to | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 100 migrate it to the TCS2/TCS3 hybrid config, using the new versions of G23M PS | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 101 and ACI components. It will also be worthwhile to see if the new version of | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 102 this BMI+MFW code in the LoCosto version is any better than the one we got from | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 103 Sotovik. After these preliminary steps, the UI work can bifurcate: | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 104 | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 105 * On the one hand, it will be worthwhile to produce a size-reduced version of | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 106 the UI that targets a 96x64 pixel LCD instead of 176x220 pix, but still full | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 107 color - thus fitting the LCD on Mot C139/140 phones on which we already run | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 108 our fw very successfully in the "voice pseudo-modem" config. We would then | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 109 be able to see if a Mot C139 phone running FreeCalypso fw can be a practically | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 110 usable end user phone, albeit a super-low-end one. | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 111 | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 112 * On the other hand, it is my (Mychaela's) strong desire to have our own | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 113 FreeCalypso Libre Dumbphone hardware product; running FC fw on Mot C139 just | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 114 isn't enough to satisfy my ambition. My choice of LCD size for our own FC | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 115 Libre Dumbphone is 176x220 pix, matching TI's D-Sample, so that the rich UI | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 116 targeting this large LCD size can see the light of day as a real end user | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 117 product, and my planned HSMBP board is envisioned as not only an alternative | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 118 to the D-Sample, but also as the prototype motherboard for our FC Libre | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 119 Dumbphone. | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 120 | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 121 Current state of the firmware | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 122 ============================= | 
| 219 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 123 | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 124 If we desire a libre phone for our pockets and purses (I do desire one for my | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 125 purse), we will have to bite the bullet and do the necessary work to transform | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 126 the UI and associated handset code from its current sorry state into something | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 127 usable, and I have started laying a little bit of the necessary foundation for | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 128 doing this work in FC Magnetite. | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 129 | 
| 374 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 130 There is currently one Magnetite configuration (in the ./configure.sh sense) | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 131 that includes the UI layers, called 2092. 2092 is TI's bizarre "product" | 
| 219 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 132 number for the configuration that is just like the one we got from Sotovik | 
| 374 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 133 (called pdt_2091), but with BMI enabled. We previously had another config | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 134 called 2092-pwr that had TI's old PWR battery charging driver included, which | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 135 never worked because of severe bitrot - that config has now been dropped as the | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 136 regular 2092 config now includes our new and working FCHG battery charging | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 137 driver. | 
| 219 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 138 | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 139 If you request the 2092 configuration for a target other than c139, i.e., for | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 140 fcdev3b, gtamodem or pirelli, you will get a successful build (to be pedantic, | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 141 if you pick gtamodem, you'll get a link failure unless you tweak the linker | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 142 script, but it's a minor nit), but if you then run that fw image on the | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 143 hardware, it won't do anything good: it will try to display TI's D-Sample UI | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 144 (176x220 pixels, color) on the D-Sample LCD attached to Calypso chip select | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 145 nCS3, but of course neither Openmoko's modem nor the Pirelli has a D-Sample LCD | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 146 on that chip select, thus the LCD output would fall into the aether. (It would | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 147 be even worse in the case of the Pirelli which has the 2nd flash bank on nCS3, | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 148 thus the D-Sample LCD writes could clash with the FFS code operating on that | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 149 flash - so don't do it.) However, because BMI is enabled, the fw will still | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 150 automatically bring up the GSM radio and register to the default network | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 151 immediately upon boot like a typical UI-enabled phone does, even though the | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 152 associated LCD output will be invisible. Needless to say, this configuration | 
| 374 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 153 is not something I would ever advise actually running - but it is there in | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 154 anticipation of my idea of running our fw on the original D-Sample board as | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 155 described above. | 
| 219 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 156 | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 157 However, if you build the 2092 config for the c139 target, the Magnetite build | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 158 system will enable the same hack which was originally implemented in the | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 159 tcs211-c139 side project in late 2015. Prior to the D-Sample with its fancy | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 160 176x220 pix color LCD, TI's previous development platforms (C-Sample and | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 161 earlier) had 84x48 pix black&white (1 bit per pixel) LCDs, and this old C-Sample | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 162 LCD support is still there in TCS211, albeit in a bitrotten form that wouldn't | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 163 even compile without a lot of fixing. In our late-2015 tcs211-c139 side project | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 164 we had resurrected this C-Sample UI configuration, and this work has now been | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 165 integrated into Magnetite. When you build Magnetite in the 2092 configuration | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 166 for the c139, you will get our C139 LCD driver that pretends to be C-Sample to | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 167 the upper layers, and you will get TI's old 84x48 pix B&W UI displayed on the | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 168 phone's 96x64 pixel color LCD. IOW, only 84x48 out of the available 96x64 | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 169 pixels are used, and only 2 out of the available 65536 colors. Yes, pretty | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 170 pathetic, I know. | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 171 | 
| 374 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 172 Going forward, the plan is as outlined above - I wish to see this UI code run | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 173 in the proper 176x220 pix color display config that once existed in TI's own | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 174 development environment before I do anything else to it. I am not happy at all | 
| 219 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 175 about having had to disable TI's D-Sample UI (the 176x220 pix color one) and | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 176 resurrect the ancient pathetic C-Sample one instead, and given the long list of | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 177 show-stopping bugs this UI code currently exhibits, I can never be sure which | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 178 of these bugs were already there in the D-Sample config this code was made for, | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 179 vs. which of these bugs could be a result of re-enabling the very bitrotten | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 180 C-Sample UI config - remember, it wouldn't even compile at first. | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 181 | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 182 Deblobbing status | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 183 ================= | 
| 
b05dba024f95
doc/Handset-configs and doc/Modem-configs written
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 184 | 
| 374 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 185 The current 2092 config is based on the l1reconst modem config (see the | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 186 Modem-configs write-up), i.e., the entire chipsetsw division of the fw | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 187 including all of L1 and the init code in main.lib is fully rebuilt from source, | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 188 but the versions of G23M PS and ACI are the original TCS211 ones, thus the G23M | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 189 PS component is all blobs. In order to build a G23M-deblobbed UI-enabled | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 190 config, we would need to build the UI layers (MFW and BMI) on top of the new | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 191 TCS3.2 version of ACI used in the deblobbed hybrid config, and no such feat has | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 192 been attempted yet. My current plan is to work in this direction after we | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 193 either get our fw running on the historical D-Sample board or build our own | 
| 
3f2dce15278c
doc: new Handset-goal write-up replaces old Handset-configs
 Mychaela Falconia <falcon@freecalypso.org> parents: 
313diff
changeset | 194 HSMBP. | 
