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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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.