FreeCalypso > hg > fc-am-toolkit
comparison doc/C1xx-flashing @ 24:b71216a5f3c3
doc/C1xx-flashing: proofreading fixes
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sun, 11 Jun 2023 19:11:47 +0000 |
parents | 2df287f4722c |
children |
comparison
equal
deleted
inserted
replaced
23:2df287f4722c | 24:b71216a5f3c3 |
---|---|
209 exec fc-flash-script | 209 exec fc-flash-script |
210 | 210 |
211 In this step you are basically telling fc-loadtool to execute the command script | 211 In this step you are basically telling fc-loadtool to execute the command script |
212 that was prepared in step 4. This script performs all necessary flash erasure | 212 that was prepared in step 4. This script performs all necessary flash erasure |
213 and programming operations - having a previously prepared script do everything | 213 and programming operations - having a previously prepared script do everything |
214 in one go greatly reduced the chances of leaving your phone in an invalid | 214 in one go greatly reduces the chances of leaving your phone in an invalid |
215 partially flashed state due to operator distraction or other human errors. | 215 partially flashed state due to operator distraction or other human errors. |
216 Once the flashing script finishes executing, exit loadtool and your phone will | 216 Once the flashing script finishes executing, exit loadtool and your phone will |
217 power off. Next time this reflashed phone executes hardware switch-on (power | 217 power off. Next time this reflashed phone executes hardware switch-on (power |
218 button press or charging power plug-in while off), your firmware will boot! | 218 button press or charging power plug-in while off), your firmware will boot! |
219 | 219 |
226 | 226 |
227 IMPORTANT NOTE: Do NOT attempt to transplant complete flash images (not just | 227 IMPORTANT NOTE: Do NOT attempt to transplant complete flash images (not just |
228 the firmware portion, but the whole thing) from one phone to another! For | 228 the firmware portion, but the whole thing) from one phone to another! For |
229 maximal restorative power, the loadtool command script generated by | 229 maximal restorative power, the loadtool command script generated by |
230 c1xx-analyze-image (named restore-flash) restores the entire flash image, every | 230 c1xx-analyze-image (named restore-flash) restores the entire flash image, every |
231 bit without exceptions - but this quality also makes the {flashdump.bin + | 231 bit without exceptions - but this property also makes the {flashdump.bin + |
232 restore-flash script} package non-transplantable, i.e., it should NOT be | 232 restore-flash script} combo non-transplantable, i.e., it should NOT be |
233 programmed into a different phone. Each individual phone has its own unique RF | 233 programmed into a different phone. Each individual phone has its own unique RF |
234 calibration values and other factory tunings, stored in small sectors at the end | 234 calibration values and other factory tunings, stored in small sectors at the end |
235 of the flash (after the firmware), and these bits should never be mindlessly | 235 of the flash (after the firmware), and these bits should never be mindlessly |
236 transplanted from one phone to another. | 236 transplanted from one phone to another. |
237 | 237 |
253 in the present package. | 253 in the present package. |
254 | 254 |
255 Because the boot sector still needs to be rewritten (the command that does so | 255 Because the boot sector still needs to be rewritten (the command that does so |
256 is part of the generated fc-flash-script and restore-flash scripts), a very | 256 is part of the generated fc-flash-script and restore-flash scripts), a very |
257 small bricking vulnerability window still exists - but this window is on the | 257 small bricking vulnerability window still exists - but this window is on the |
258 order of a few tens of milliseconds. Furthermore, in order for the phone to | 258 order of some milliseconds to a few seconds at most. (The bricking-vulnerable |
259 get bricked, the unfortunate event happening in that short vulnerability window | 259 operation completes in an imperceptible time in my actual experience, but Intel |
260 would have to be someone physically yanking the battery out of the phone at | 260 flash datasheet says it can take up to 5 s.) Furthermore, in order for the |
261 that exact moment, or the battery running out or falling out, again at that | 261 phone to get bricked, the unfortunate event happening in that short |
262 exact moment in a time window that spans maybe 100 ms at the most. There is | 262 vulnerability window would have to be someone physically yanking the battery |
263 absolutely NO bricking vulnerability window in terms of the serial cable | 263 out of the phone, or the battery running down or falling out - simply |
264 disconnecting or the host machine crashing - those events can happen at any | 264 disconnecting the serial cable or killing fc-loadtool process on the driving |
265 moment in time and do NOT create bricking danger. | 265 host during this window will NOT cause bricking, as the entire sequence of |
266 operations that fall into the bricking vulnerability window happens entirely | |
267 inside loadagent without needing further host communication once started. | |
266 | 268 |
267 However, if the flashing process as a whole (on the order of a few minutes if | 269 However, if the flashing process as a whole (on the order of a few minutes if |
268 you are using "slow" 115200 baud rate) gets interrupted for whatever reason, | 270 you are using "slow" 115200 baud rate) gets interrupted for whatever reason, |
269 you will get a partially flashed phone, which may at first glance appear to be | 271 you will get a partially flashed phone, which may at first glance appear to be |
270 bricked. But as long as the boot sector is good - and it will be good if you | 272 bricked. But as long as the boot sector is good - and it will be good if you |
272 recover from a flashing process that got interrupted in the middle, follow this | 274 recover from a flashing process that got interrupted in the middle, follow this |
273 sequence: | 275 sequence: |
274 | 276 |
275 * Return the phone to its powered-off state by removing and reinserting the | 277 * Return the phone to its powered-off state by removing and reinserting the |
276 battery. Very important: do NOT press the power button or plug in charging | 278 battery. Very important: do NOT press the power button or plug in charging |
277 power after reinserting battery until instructed to do so below; if you mess | 279 power after reinserting the battery until instructed to do so below; if you |
278 up, remove the battery again, reinsert it, and be careful this time to NOT | 280 mess up, remove the battery again, reinsert it, and be careful this time to |
279 press the power button prematurely. | 281 NOT press the power button prematurely. |
280 | 282 |
281 * With the phone off and the battery freshly removed and reinserted, connect | 283 * With the phone off and the battery freshly removed and reinserted, connect |
282 the headset jack serial cable and run fc-loadtool with the right arguments. | 284 the headset jack serial cable and run fc-loadtool with the right arguments. |
283 | 285 |
284 * Momentarily press the power button. | 286 * Momentarily press the power button. |