annotate loadtools/loadtool.help @ 992:a7b0b426f9ca

target-utils: boot ROM UART autodetection revamped The new implementation should work with both the familiar Calypso C035 boot ROM version found in our regular targets as well as the older Calypso F741979B version found on the vintage D-Sample board.
author Mychaela Falconia <falcon@ivan.Harhan.ORG>
date Wed, 30 Dec 2015 21:28:41 +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