FreeCalypso > hg > freecalypso-reveng
annotate se_k200i/README @ 402:1b83d07576bf
compal/boot/c123-boot.disasm: missed vector branch at 0x1c
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 15 Jan 2023 00:06:59 +0000 |
parents | 6c31d8c54ae4 |
children |
rev | line source |
---|---|
393
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
1 In 2022-10 Vadim Yanitskiy discovered the existence of a previously unknown |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
2 family of Calypso phones: Sony Ericsson K200/K220, usually with 'i' suffix. |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
3 The only diff between K200 and K220 appears to be the FM radio receiver |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
4 (present on K220, unpopulated PCB footprints on K200), whereas the suffix letter |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
5 indicates GSM frequency bands: 'i' for 900+1800 MHz, 'a' for 850+1900 MHz. |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
6 |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
7 As of this writing (early 2022-11) Vadim and steve-m appear to be working on |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
8 adding support for this phone model to their beloved pet OsmocomBB. In |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
9 contrast, I (Mother Mychaela) currently have no plans to add support for this |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
10 phone model to FreeCalypso fw: it is not an interesting target for the purpose |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
11 of turning it into a liberated end user phone by way of FC fw (for one thing, |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 K200a or K220a phones with North American frequency bands appear to be |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 unobtainium), and we don't need yet another alien phone running voice |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 pseudo-modem firmware. |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 However, I am gathering some notes about K200/220 hw and original fw in this |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 directory, for two reasons: |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 1) To provide better guidance to Vadim in his quest to support this weird phone |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 model in his beloved pet project; |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
22 2) To gather knowledge in case the situation changes and a use case does arise |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 for porting our FreeCalypso fw to this target. |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 If anyone does fancy the idea of running FreeCalypso fw on these SE K200/220 |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 phones, even if only as an experiment, the primary pain points will be mostly |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 the same as with any other alien phone: |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 * Like with almost every other alien Calypso device (phone or modem), the FFS |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 maintained by the original fw is not directly suitable as-is for FreeCalypso, |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 i.e., sharing the same FFS between original fw and FC, freely going back and |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 forth in fw with the same FFS, would be a bad idea. Therefore, we would have |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 to decide whether to put our own FFS (with different content) in the same |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 sectors as the original, perhaps even produced from the original with our FFS |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 editor tool, or to put our aftermarket fw FFS in some other sector location. |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 * In the case of Pirelli DP-L10 we were lucky to find an area of flash which |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 the original fw leaves unused and untouched in the vast majority of use cases |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
39 (staging area for OTA fw updates, unused at all other times), thus we could |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
40 put our separate-from-original FFS instance there. This separate FFS |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
41 arrangement is what allows our FC fw on the Pirelli to be run via fc-xram, |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
42 without flashing. But we don't have the same luck on K200/220: looking at |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 flash dumps, there does not appear to be any area that is totally unused and |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 could be repurposed for aftermarket fw FFS without disturbing the original fw. |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
45 Therefore, we won't have the option of non-invasive run-from-RAM operation, |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 and we would have to flash our fw instead, like on Mot C1xx. |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 * The requirement of having to flash our fw, as opposed to running from RAM, |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
49 combines badly with the lack of phone UI functionality in voice pseudo-modem |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
50 fw: a phone that appears completely dead to the user but speaks some special |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 binary protocol on the UART when you press the PWON button feels extremely |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 weird and unnatural. |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 * Having to flash our fw also means that we would need to either implement |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
55 battery charging in our fw (requiring thorough reverse eng of charging |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
56 specifics on this model) or use another phone (running original fw) to charge |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
57 batteries, moving batteries back and forth between phones. |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 All of the above factors, which apply to *any* alien (meaning not FC-made) phone |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
60 model, should make it clear why running our fw on alien Calypso phones is no |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
61 longer the direction of interest in FreeCalypso - instead we need to focus on |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
62 our own FreeCalypso hardware with phone handset functionality, starting with |
6c31d8c54ae4
se_k200i: preliminary analysis
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
63 FC Venus. |