comparison doc/C1xx-updates @ 25:afd760eb1f8d

doc/C1xx-updates: new article
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 11 Jun 2023 20:57:23 +0000
parents
children
comparison
equal deleted inserted replaced
24:b71216a5f3c3 25:afd760eb1f8d
1 In C1xx-flashing article we have covered how to initially flash FreeCalypso
2 aftermarket firmware into a C1xx phone and how to restore that phone back to its
3 original state. However, what about updates? What if your C1xx phone is
4 currently flashed with FreeCalypso and you would like to load a new firmware
5 build? Or what if there is a new release of our FFS data bundle package with
6 updates that are relevant to C1xx targets? How do you update these components
7 in your FC-on-C1xx flash? There are two approaches, both described in this
8 article.
9
10 Full reflashing method
11 ======================
12
13 If your C1xx phone is currently flashed with a FreeCalypso fw version from ages
14 ago, or you just don't know its exact state and would rather not depend on it,
15 you can simply follow the regular flashing procedure described in the
16 C1xx-flashing article. If you run c1xx-analyze-image on a flashdump.bin image
17 that is FC aftermarket, the analysis script will detect this condition and
18 report it in its verbose output. Generation of restore-flash script will be
19 skipped in this scenario - you don't have an original Motorola flash image to
20 restore - but you can still always flash any of Mot fw images posted on our FTP
21 site, just not with these scripts.
22
23 If you already have a per-phone project directory in which you've already run
24 c1xx-analyze-image and you simply wish to rerun the
25 {c11x,c139,c155}-gen-fc-script step, please feel free to do so. The newly
26 generated fc-flash-script will refer to whichever firmware image you name on
27 the command line when you run the generator script anew, and fc-ffs.bin will be
28 regenerated based on your current state of /opt/freecalypso installation, which
29 is where all ffs-data-bundle updates go. You can then execute the new
30 fc-flash-script in fc-loadtool just like the first time, and the phone will be
31 brought to the new state.
32
33 Fine-grained reflashing
34 =======================
35
36 If you are actively iterating, flashing new fw images as you build them, it
37 makes the most sense to reflash just the fw component, without touching the
38 dangerous boot sector (FreeCalypso bootloader never changes) and without having
39 to blow away and reflash your FFS. In this scenario, make fc-loadtool entry as
40 usual and then execute a command of the following form:
41
42 On C11x/12x and C139/140 subfamilies:
43
44 loadtool> flash e-program-bin 0x10000 path/to/fwimage.bin
45
46 Or on C155/156 subfamily:
47
48 loadtool> flash e-program-bin 0x20000 path/to/fwimage.bin
49
50 Updating and reflashing just the FFS part
51 =========================================
52
53 If you wish regenerate fc-ffs.bin only (presumably to pick up updates to FFS
54 data bundle bits under /opt/freecalypso) without flashing or even naming a new
55 FC firmware image, you can run one of these scripts:
56
57 c11x-gen-fc-ffs-img rfbin IMEI 2m -- for C11x/12x with 2 MiB flash
58 c11x-gen-fc-ffs-img rfbin IMEI 4m -- for C11x/12x with 4 MiB flash
59 c139-gen-fc-ffs-img rfbin IMEI -- for C139/140 (always 4 MiB flash)
60 c155-gen-fc-ffs-img rfbin IMEI -- for C155/156 (always 8 MiB flash)
61
62 When you are ready to reflash fc-ffs.bin with fc-loadtool, whether it's because
63 you just regenerated it or because you simply wish to reset your FC FFS to its
64 pristine state, execute one of these commands:
65
66 for 2 MiB flash:
67
68 loadtool> flash e-program-bin 0x1C0000 fc-ffs.bin
69
70 for 4 MiB flash:
71
72 loadtool> flash e-program-bin 0x300000 fc-ffs.bin
73
74 for 8 MiB flash:
75
76 loadtool> flash e-program-bin 0x700000 fc-ffs.bin
77
78 You can also make "organic" updates to your FFS with fc-fsio, without going in
79 "brute force" with fc-loadtool - but you understand the workings of FreeCalypso
80 to that level, you probably won't be reading this guide or using any of these
81 scripts.