FreeCalypso > hg > freecalypso-tools
comparison loadtools/loadtool.help @ 632:ae4330d86029
loadtool.help: description of program-m0 updated
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Sat, 29 Feb 2020 23:53:33 +0000 |
parents | f44770a652eb |
children | cd031e2501fa |
comparison
equal
deleted
inserted
replaced
631:bdb69847c809 | 632:ae4330d86029 |
---|---|
274 which is little-endian. Images produced by flash[2] dump2bin are suitable. | 274 which is little-endian. Images produced by flash[2] dump2bin are suitable. |
275 | 275 |
276 === flash:program-m0 | 276 === flash:program-m0 |
277 flash[2] program-m0 image.m0 | 277 flash[2] program-m0 image.m0 |
278 | 278 |
279 *.m0 is the format that has been used by companies like TI and Closedmoko for | 279 Calypso firmware images built with TI's TMS470 toolchain in TI's canonical |
280 their proprietary firmware images. It is emitted by TI's hex470 tool, and in | 280 manner come out in a hex format that is a variant of Motorola's SREC, in files |
281 the proprietary environment it is fed as an input to FLUID. (The latter is | 281 ending with the .m0 suffix. We have nicknamed this format "moko-style m0" |
282 TI's Flash Loader Utility Independent of Device, and fc-loadtool can be seen as | 282 after its most famous user; this command programs the flash with an image in |
283 an independent reimplementation thereof - although it doesn't have the same | 283 this moko-style m0 format. |
284 level of device-independence.) The *.m0 format is actually a variant of | |
285 Motorola's SREC, but with a different byte order: each 16-bit word is | |
286 byte-reversed relative to the native byte order of the ARM7 processor. | |
287 (This strange byte order actually makes some sense if one views the image as a | |
288 long array of 16-bit hex values; 16 bits is the width of the flash memory on | |
289 Calypso GSM devices and thus the natural unit size for flash programming.) | |
290 | 284 |
291 Because each S-record contains an address, no addresses or offsets need to be | 285 Because each S-record contains an address, no addresses or offsets need to be |
292 specified in the flash[2] program-m0 command, only the image file. | 286 specified in the flash[2] program-m0 command, only the image file. |
293 | 287 |
294 === flash:program-srec | 288 === flash:program-srec |