annotate loadtools/loadtool.help @ 459:38afaeb194ea

os_tim_fl.c: os_QueryTimer() decompiled w/o real understanding of the logic
author Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
date Mon, 23 Jun 2014 06:54:40 +0000
parents 4f8a9b2229e9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
105
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
1 This is the help file for fc-loadtool. See lthelp.c for the code
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
2 that parses and displays it. The parsing code is the only
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
3 documentation for the format of this help file - if you are going to
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
4 edit this help text, read the parsing code first.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
5
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
6 === main
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
7 This utility allows you to perform the following operations
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
8 on your Calypso GSM device:
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
9
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
10 * Peek and poke registers
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
11 * Dump any part of memory
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
12 * Read and program flash
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
13
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
14 See the following help topics for more information:
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
15
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
16 help peekpoke Register peek and poke commands
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
17 help flash Flash operation commands
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
18 help all List of all implemented commands
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
19 help exit Controlling the cleanup on exit
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
20
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
21 === all
421
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
22 abbr Read an ABB register
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
23 abbw Write an ABB register
105
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
24 baud Switch the serial comm with loadagent to a different baud rate
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
25 crc32 Get CRC-32 of a memory area on the target
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
26 dieid Read the Calypso die ID
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
27 dump Dump a target memory region in hex and ASCII
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
28 dump2bin Dump a target memory region to a file in binary format
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
29 dump2srec Dump a target memory region to a file in S-record format
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
30 exec Execute a command script
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
31 exit Exit from loadtool and clean up the target device state
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
32 flash Flash operations
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
33 flash2 Operations on the 2nd flash bank (Pirelli phone only)
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
34 quit Alias for exit
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
35 r8 Read an 8-bit register or memory location
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
36 r16 Read a 16-bit register or memory location
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
37 r32 Read a 32-bit register or memory location
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
38 w8 Write an 8-bit register or memory location
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
39 w16 Write a 16-bit register or memory location
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
40 w32 Write a 32-bit register or memory location
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
41
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
42 To get help on any command, type help and the command keyword.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
43
421
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
44 === abbr
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
45 === abbw
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
46 abbr pg reg Read ABB register <reg> on page <pg>
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
47 abbw pg reg val Write <val> into register <reg> on page <pg>
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
48
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
49 The <pg> and <reg> arguments default to decimal unless prefixed with 0x;
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
50 the <val> argument to abbw is always hexadecimal.
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
51
105
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
52 === baud
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
53 baud Display the current baud rate
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
54 baud <rate> Switch the baud rate to <rate> (number in bps)
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
55
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
56 The supported baud rates are:
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
57
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
58 Standard: 19200, 38400, 57600, 115200
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
59 Calypso special: 203125, 406250, 812500
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
60
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
61 The baud command coordinates the necessary simultaneous switching of the
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
62 baud rate on both the host and the target (loadagent). Loadagent always
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
63 supports all of the listed rates and will switch happily, but in the case
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
64 of the higher non-standard baud rates fc-loadtool has no way of knowing
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
65 ahead of time whether or not the requested baud rate is supported by your
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
66 usb2serial adapter or whatever other serial port hardware and driver
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
67 you are using. If the baud rate switch fails, the communication link with
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
68 the target will be broken and fc-loadtool will exit ungracefully.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
69
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
70 === crc32
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
71 crc32 hex-start hex-len
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
72
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
73 The first argument is the starting target memory address in hex; the second
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
74 argument is the length of the area to CRC, also in hex. The command will be
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
75 sent to loadagent; CRC-32 of the requested range will be computed on the target
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
76 and displayed in hex.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
77
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
78 === dieid
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
79 dieid Display the Calypso die ID
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
80 dieid <filename> Display the Calypso die ID, and also save it in the
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
81 named file
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
82
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
83 The Calypso die ID resides in 4 16-bit registers at target addresses
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
84 0xFFFEF010 through 0xFFFEF016. It is displayed on the terminal and optionally
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
85 saved to a file in this simple form:
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
86
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
87 FFFEF010: xxxx
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
88 FFFEF012: xxxx
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
89 FFFEF014: xxxx
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
90 FFFEF016: xxxx
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
91
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
92 === dump
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
93 dump hex-start hex-len
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
94
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
95 The first argument is the starting target memory address in hex; the second
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
96 argument is the length of the area to dump, also in hex. The dump will be
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
97 displayed on the terminal in hex and ASCII.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
98
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
99 === dump2bin
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
100 === dump2srec
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
101 dump2bin hex-start hex-len outfile
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
102 dump2srec hex-start hex-len outfile
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
103
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
104 The first argument is the starting target memory address in hex; the second
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
105 argument is the length of the area to dump, also in hex; the third argument
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
106 is the name of the output file to be created/written. The dump will be saved
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
107 in binary or S-records as per the chosen command, always in the native byte
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
108 order of the Calypso ARM7 target (little-endian).
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
109
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
110 === exec
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
111 exec <script-file>
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
112
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
113 Read and execute commands from the named file. If the given file name contains
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
114 no slashes, the script file is sought in the default directory (normally
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
115 /usr/local/share/freecalypso unless changed in the code); otherwise the given
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
116 name is used directly as the pathname.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
117
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
118 === exit
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
119 === quit
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
120 exit Clean up the target in the default manner and exit
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
121 exit bare Exit loadtool without doing anything to the target
421
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
122 exit iota-off Exit loadtool and command an ABB power-off on the target
105
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
123 exit jump0 Exit loadtool and command the target to reboot via jump to 0
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
124
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
125 The default method of cleaning up the target device state upon exit is set
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
126 in the hardware parameters file selected with the -h or -H command line
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
127 option; it is the exit-mode setting. On the Pirelli phone the default exit
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
128 mode is jump0: it causes the phone to reboot and enter the "charging boot"
421
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
129 mode, as the USB cable is connected and VBUS is present. On Compal phones the
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
130 default exit mode is iota-off.
105
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
131
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
132 If your device is a GTA02 and you are running fc-loadtool from inside the phone
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
133 (from the AP), the exit command will power off the modem from the AP. If you
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
134 are talking to GTA02 Calypso from an external host via the headset jack, there
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
135 is nothing that fc-loadtool can currently do to power the modem off (exit is
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
136 the same as exit bare in this case) - power it off yourself from the AP.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
137
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
138 If you do an exit bare without powering the target device off in some other
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
139 way, the device will still be running loadagent, which is probably not what you
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
140 want. However, it is the proper exit mode if you have powered off or reset the
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
141 target device by brute force (yanking the battery).
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
142
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
143 === flash
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
144 === flash2
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
145 The primary end use of fc-loadtool is for reading and writing the NOR flash
421
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
146 memories of the supported GSM devices. Compal phones and the GTA0x GSM modem
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
147 have only one flash bank (as in chip select), and are manipulated with the
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
148 flash command. The Pirelli phone has two flash banks (as in chip selects) of
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
149 8 MiB each; they are manipulated with the flash and flash2 commands.
105
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
150
421
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
151 The following flash operations are available on all target devices:
105
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
152
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
153 flash blankchk Blank-check a region of flash
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
154 flash dump2bin Dump flash content to a file in binary format
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
155 flash dump2srec Dump flash content to a file in S-record format
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
156 flash erase Erase a region of flash
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
157 flash info Display flash configuration info
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
158 flash program-bin Program flash with a binary file
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
159 flash program-m0 Program flash with an image in TI's *.m0 format
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
160 flash program-srec Program flash with an image in standard S-record format
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
161 flash quickprog Program a few flash words from the command line
421
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
162 flash reset Reset flash chip to read array mode
105
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
163 flash sectors Display the list of flash sector addresses and sizes
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
164
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
165 Substitute flash2 instead of flash when operating on the 2nd flash chip select
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
166 of Pirelli-style flash memory configurations. Prepend help before a command to
421
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
167 get usage information, e.g., help flash program-bin. See help compal for some
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
168 additional info specific to Compal targets.
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
169
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
170 === compal
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
171 === compalflash
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
172 === flash:compal
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
173 Compal phones have Intel or Intel-style flash chips; other Calypso targets for
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
174 which loadtool was originally designed have AMD-style flash chips. The author
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
175 of the present software has a personal bias toward AMD-style flash, hence the
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
176 support for Intel-style flash is not as clean. Compal phones also have the
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
177 Calypso boot ROM disabled, and depend on flash-resident boot code instead.
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
178 This property makes them brickable.
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
179
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
180 The following additional loadtool commands apply only to Compal targets with
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
181 Intel-style flash:
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
182
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
183 flash erase-program-boot Erase and reprogram the boot sector
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
184 flash status Read Intel flash Status Register
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
185 flash unlock Unlock flash sectors
105
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
186
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
187 === flash:blankchk
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
188 flash[2] blankchk hex-start-offset hex-length
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
189
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
190 Blank-checks an area of flash starting at the specified hex offset (from the
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
191 base address of the flash bank) and extending for the specified hex length.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
192 Reports whether the checked region is blank or not. Flash must be blank (FF in
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
193 all bytes) before it can be programmed.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
194
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
195 === flash:dump2bin
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
196 flash[2] dump2bin outfile [offset [length]]
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
197
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
198 Read device flash content and save it to a file. If only a filename is
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
199 specified, the full flash bank is dumped; one can optionally specify a starting
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
200 offset and an explicit length, both in hex.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
201
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
202 This command is merely a user-friendly front-end to the plain dump2bin command;
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
203 see help dump2bin.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
204
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
205 === flash:dump2srec
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
206 flash[2] dump2srec outfile [offset [length]]
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
207
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
208 Read device flash content and save it to a file. If only a filename is
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
209 specified, the full flash bank is dumped; one can optionally specify a starting
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
210 offset and an explicit length, both in hex.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
211
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
212 This command is merely a user-friendly front-end to the plain dump2srec command;
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
213 see help dump2srec.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
214
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
215 === flash:erase
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
216 flash[2] erase hex-start-offset hex-length
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
217
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
218 Erases an area of flash starting at the specified hex offset (from the base
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
219 address of the flash bank) and extending for the specified hex length.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
220
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
221 Flash memory can only be erased (turning 0 bits back to 1s) in units of
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
222 sectors, as set in stone by the design of the flash chip in use. Loadtool
421
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
223 knows the sector layout of the flash chip in your device from CFI or from the
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
224 hardware parameters file (you can display it with the flash[2] sectors
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
225 command), and enforces that both arguments to the flash[2] erase command lie
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
226 on sector boundaries.
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
227
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
228 === flash:erase-program-boot
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
229 flash erase-program-boot binfile [length]
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
230
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
231 This operation is applicable to Compal targets only. This command erases and
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
232 reprograms flash sector 0 (the boot sector) with minimized vulnerability to
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
233 bricking by loading the new boot code into a scratchpad RAM area on the target,
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
234 then commanding loadagent (running on the target) to erase and reprogram the
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
235 dangerous flash sector without requiring further interaction with loadtool.
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
236 (In contrast, loadtool's "regular" flash erase and program operations are
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
237 driven primarily by loadtool, with loadagent providing only low-level
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
238 functions.)
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
239
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
240 The new bits to be programmed are taken from the specified binary file. Byte 0
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
241 of the file goes into byte 0 of the flash and so on, for the specified length.
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
242 If no length argument is given, it defaults to the length of the file, which
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
243 must not exceed the length of flash sector 0: 64 KiB on the "basic" Compal
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
244 phones or 8 KiB on C155/156.
105
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
245
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
246 === flash:info
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
247 This command displays summary information about the flash memory configuration
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
248 of the Calypso target device loadtool thinks it's talking to.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
249
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
250 === flash:program-bin
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
251 flash[2] program-bin flash-offset binfile [file-offset [length]]
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
252
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
253 This command programs flash, using a binary file as the data source. One must
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
254 always specify the starting flash offset (from the base address of the flash
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
255 bank), but the starting file offset and length are optional, defaulting to the
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
256 whole file.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
257
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
258 The binary file must be in the native byte order of the Calypso ARM7 processor,
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
259 which is little-endian. Images produced by flash[2] dump2bin are suitable.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
260
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
261 === flash:program-m0
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
262 flash[2] program-m0 image.m0
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
263
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
264 *.m0 is the format that has been used by companies like TI and Closedmoko for
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
265 their proprietary firmware images. It is emitted by TI's hex470 tool, and in
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
266 the proprietary environment it is fed as an input to FLUID. (The latter is
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
267 TI's Flash Loader Utility Independent of Device, and fc-loadtool can be seen as
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
268 an independent reimplementation thereof - although it doesn't have the same
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
269 level of device-independence.) The *.m0 format is actually a variant of
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
270 Motorola's SREC, but with a different byte order: each 16-bit word is
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
271 byte-reversed relative to the native byte order of the ARM7 processor.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
272 (This strange byte order actually makes some sense if one views the image as a
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
273 long array of 16-bit hex values; 16 bits is the width of the flash memory on
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
274 Calypso GSM devices and thus the natural unit size for flash programming.)
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
275
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
276 Because each S-record contains an address, no addresses or offsets need to be
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
277 specified in the flash[2] program-m0 command, only the image file.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
278
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
279 === flash:program-srec
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
280 flash[2] program-srec image.srec
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
281
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
282 This command programs the flash with an image in the standard S-record format,
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
283 in the native little-endian byte order of the Calypso ARM7 processor. It is
421
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
284 the opposite byte order from that used by TI's *.m0 files -
105
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
285 see help flash program-m0. Images produced by flash[2] dump2srec are suitable
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
286 for flash[2] program-srec.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
287
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
288 Because each S-record contains an address, no addresses or offsets need to be
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
289 specified in the flash[2] program-srec command, only the image file.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
290
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
291 === flash:quickprog
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
292 flash[2] quickprog hex-offset hex-data-string
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
293
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
294 This command is intended only for developers; it provides raw access to
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
295 loadagent's basic flash write primitive. Read the source code for more
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
296 information.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
297
421
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
298 === flash:reset
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
299 Intel-style flash memory chips (found in Compal phones) have two "stable" or
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
300 "quiescent" states: reading array data and reading the status register (SR).
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
301 After an erase or program operation the flash chip is "parked" in the Read SR
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
302 state; the flash reset command switches it back to reading array data.
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
303
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
304 This command works for AMD-style flash as well (found in Openmoko and Pirelli
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
305 phones), but it is normally not needed, as AMD-style flash chips automatically
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
306 return to the read-array-data state after every erase or program operation.
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
307
105
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
308 === flash:sectors
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
309 This command displays the list of sector offsets and sizes for the flash chip
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
310 in the Calypso target device loadtool thinks it's talking to.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
311
421
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
312 === flash:status
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
313 This command is only applicable to Intel-style flash as found in Compal phones.
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
314 It reads the flash chip's Status Register, which can be used to diagnose errors
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
315 incurred by previous erase or program operations.
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
316
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
317 === flash:unlock
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
318 flash unlock hex-start-offset hex-length
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
319
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
320 This command is only applicable to Intel-style flash as found in Compal phones.
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
321 These flash chips power up with each sector (erase block) in the "locked" state;
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
322 each sector needs to be unlocked before it can be erased or programmed.
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
323
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
324 This command is normally not needed, as the flash erase command unlocks each
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
325 sector before erasing it. However, if you are going to perform program
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
326 operations in some sectors without erasing them, you will need to unlock them
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
327 explicitly first.
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
328
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
329 This command operates only on sector boundaries just like flash erase.
4f8a9b2229e9 loadtool.help: updates for Compal target support
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents: 105
diff changeset
330
105
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
331 === r8
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
332 === r16
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
333 === r32
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
334 === w8
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
335 === w16
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
336 === w32
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
337 === peekpoke
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
338 The register peek and poke commands are:
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
339
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
340 r8 addr Read an 8-bit register or memory location
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
341 r16 addr Read a 16-bit register or memory location
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
342 r32 addr Read a 32-bit register or memory location
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
343 w8 addr data Write an 8-bit register or memory location
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
344 w16 addr data Write a 16-bit register or memory location
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
345 w32 addr data Write a 32-bit register or memory location
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
346
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
347 All addresses and data values are in hex.
02cb0206aa47 fc-loadtool help implemented
Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
parents:
diff changeset
348