changeset 1148:818f520093b8

* doc/redboot_installing.sgml: Fix brain fart in last change to AT91 instructions. Also clarify instructions a bit, including documenting better for windows users.
author jlarmour
date Tue, 05 Aug 2003 03:25:23 +0000
parents 78410c288211
children 0132cb8f0eeb
files packages/redboot/current/ChangeLog packages/redboot/current/doc/redboot_installing.sgml
diffstat 2 files changed, 65 insertions(+), 44 deletions(-) [+]
line wrap: on
line diff
--- a/packages/redboot/current/ChangeLog
+++ b/packages/redboot/current/ChangeLog
@@ -1,3 +1,9 @@
+2003-08-05  Jonathan Larmour  <jifl@eCosCentric.com>
+
+	* doc/redboot_installing.sgml: Fix brain fart in last change to
+	AT91 instructions. Also clarify instructions a bit, including
+	documenting better for windows users.
+
 2003-07-23  Patrick Doyle  <wpd@dtccom.com>
 
 	* src/flash.c (fis_find_free)
--- a/packages/redboot/current/doc/redboot_installing.sgml
+++ b/packages/redboot/current/doc/redboot_installing.sgml
@@ -855,20 +855,14 @@ an unusable board.
 This development board comes with ARM's debug tool, Angel, installed
 in flash.  At this time, Angel will not be replaced.  Rather, RedBoot
 will be placed in the alternate half of flash.  Switch SW1 is used to
-select which monitor to boot.  Selecting SW1 to <literal>lower mem</literal> will
-choose Angel.  Select SW1 to <literal>Upper mem</literal> for RedBoot once it has been
-installed.
+select which monitor to boot. Once RedBoot is installed, selecting SW1
+to <literal>lower mem</literal> will choose Angel, whereas selecting
+SW1 to <literal>Upper mem</literal> will choose RedBoot.
 </para>
 <para>
 Set SW1 to <literal>lower mem</literal> and connect serial port A to a
 host computer.  Using GDB from the host and Angel on the board,
-download the RAM mode image of RedBoot to the board. SW1 should then
-be set to <literal>upper mem</literal> just before starting RedBoot
-using the <command>cont</command> command. Once RedBoot is started,
-the Angel session must be interrupted (on Linux this can be done using
-^Z).  Follow this by connecting to the board using minicom at
-38400-8N1.  At this point, RedBoot will be running on the board in
-RAM.  Now, download the ROM mode image and program it to flash.
+download the RAM mode image of RedBoot to the board.
 <screen>
 <userinput>arm-elf-gdb redboot_RAM.elf</userinput>
 (gdb) <userinput>tar rdi s=/dev/ttyS0</userinput>
@@ -885,19 +879,20 @@ Loading section .rodata, size 0x15a0 lma
 Loading section .data, size 0x2e4 lma 0x20295b8
 Start address 0x2020040 , load size 39068
 Transfer rate: 6250 bits/sec, 500 bytes/write.
+(gdb)
 </screen>
-At this point, set SW1 to <literal>upper mem</literal>.
-<warning><title>Warning!</title><para>Failure to set SW1 to
-<literal>upper mem</literal> will cause the installation of RedBoot
-to overwrite Angel, thus making the board <emphasis>unbootable</emphasis>.
-Only hardware JTAG can restore the board once in this state.
-</para></warning>
+SW1 should then be set to <literal>upper mem</literal> just before starting RedBoot
+using the <command>cont</command> command.
 <screen>
 (gdb) <userinput>cont</userinput>
 Continuing.
 </screen>
-At this point, suspend the GDB session (use Ctrl-Z) and start a
-terminal emulator:
+Once RedBoot is started, the GDB session connected with Angel
+must be suspended (this can be done using Ctrl-Z) or terminated
+(with Ctrl-C or the Windows task manager).  Follow this
+by connecting to the board using a terminal emulator such as
+hyperterminal or minicom at 38400-8N1.  At this point, RedBoot will be running on the board in
+RAM.
 <screen>
 RedBoot> <userinput>version</userinput>
 
@@ -910,14 +905,20 @@ Copyright (C) 2000, 2001, Red Hat, Inc.
 RAM: 0x02000000-0x02080000, 0x020116d8-0x0207fd00 available
 FLASH: 0x01010000 - 0x01020000, 256 blocks of 0x00000100 bytes each.
 
+RedBoot>
+</screen>
+Now, download the ROM mode image.
+<screen>
 RedBoot> <userinput>load -m ymodem -b %{FREEMEMLO}</userinput>
 </screen>
-Use minicom to send the file redboot_ROM.srec via YModem.
+Use your terminal emulator to send the file redboot_ROM.srec via YModem.
+e.g. <literal>Transfer->Send File</literal> in Hyperterminal, or
+<literal>Ctrl-A S</literal> in minicom.
+Finally, program it to flash.
 <screen>
 RedBoot> <userinput>fi wr -f 0x01010000 -b %{FREEMEMLO} -l 0xe100</userinput>
 </screen>
-Press the "reset" pushbutton and RedBoot
-should come up on the board.
+Press the "reset" pushbutton and RedBoot should come up on the board.
 </para>
 </sect3>
 
@@ -927,19 +928,15 @@ should come up on the board.
 These development boards come with ARM's debug tool, Angel, installed
 in flash.  At this time, Angel will not be replaced.  Rather, RedBoot
 will be placed in the alternate half of flash.  Jumper JP1 is used to
-select which monitor to boot.  Setting JP1 to <literal>STD</literal>
-will choose Angel.  Set JP1 to <literal>USER</literal> for RedBoot
-once it has been installed.
+select which monitor to boot.  Once RedBoot is installed, setting JP1
+to <literal>STD</literal> will choose Angel, whereas setting JP1 to
+<literal>USER</literal> will choose RedBoot.
 </para>
 <para>
 Set JP1 to <literal>STD</literal> and connect serial port A to a host
 computer.  Using GDB from the host and Angel on the board, download
-the RAM mode image of RedBoot to the board. Start RedBoot using the
-'cont' command. Once RedBoot is started, the Angel session must be
-interrupted (on Linux this can be done using ^Z).  Follow this by
-connecting to the board using minicom at 38400-8N1.  At this point,
-RedBoot will be running on the board in RAM.  Now, download the ROM
-mode image and program it to flash.
+the RAM mode image of RedBoot to the board, and start it using the
+'cont' command.
 <screen>
 <userinput>arm-elf-gdb redboot_RAM.elf</userinput>
 (gdb) <userinput>tar rdi s=/dev/ttyS0</userinput>
@@ -958,19 +955,16 @@ Transfer rate: 6264 bits/sec, 500 bytes/
 (gdb) <userinput>cont</userinput>
 Continuing.
 </screen>
-At this point, set JP1 to <literal>USER</literal> instead of
-<literal>STD</literal>
-<warning><title>Warning!</title><para>Failure to set JP1 to
-<literal>USER</literal> will cause the installation of RedBoot
-to overwrite Angel, thus making the board <emphasis>unbootable</emphasis>.
-Only hardware JTAG can restore the board once in this state.
-</para></warning>
-Now suspend the GDB session (use Ctrl-Z) and start a
-terminal emulator:
+Once RedBoot is started, the GDB session connected with Angel must be
+suspended (this can be done using Ctrl-Z) or terminated
+(with Ctrl-C or the Windows task manager).  Follow this by connecting to
+the board using a terminal emulator such as hyperterminal or minicom
+at 38400-8N1.  At this point, RedBoot will be running on the board in
+RAM.
 <screen>
 RedBoot> <userinput>version</userinput>
 
-RedBoot(tm) bootstrap and debug environment [ROM]                               
+RedBoot(tm) bootstrap and debug environment [RAM]
 Non-certified release, version UNKNOWN - built 16:58:52, May  7 2003            
                                                                                 
 Platform: Atmel AT91/EB55 (ARM7TDMI)                                            
@@ -979,15 +973,21 @@ Copyright (C) 2000, 2001, 2002, Red Hat,
 RAM: 0x02000000-0x02040000, 0x020068a8-0x0203f000 available                     
 FLASH: 0x01010000 - 0x01200000, 31 blocks of 0x00010000 bytes each.
 
+RedBoot> 
+</screen>
+Now, download the ROM mode image.
+<screen>
 RedBoot> <userinput>load -m ymodem -b %{FREEMEMLO}</userinput>
 </screen>
-Use minicom to send the file redboot_ROM.srec via YModem.
+Use your terminal emulator to send the file redboot_ROM.srec via YModem.
+e.g. <literal>Transfer->Send File</literal> in Hyperterminal, or
+<literal>Ctrl-A S</literal> in minicom.
+Finally, program it to flash.
 <screen>
 RedBoot> <userinput>fi wr -f 0x01100000 -b %{FREEMEMLO} -l 0x10000</userinput>
 </screen>
-Set JP1 to the <literal>USER</literal> setting,
-press the "reset" pushbutton and RedBoot
-should come up on the board.
+Set JP1 to the <literal>USER</literal> setting, press the "reset"
+pushbutton and RedBoot should come up on the board.
 </para>
 </sect3>
 
@@ -1074,6 +1074,21 @@ Use just one of the <literal>TARGET</lit
 <para>The names of configuration files are listed above with the
 description of the associated modes.</para>
 
+<para>When reprogramming RedBoot using RedBoot itself, you should
+load a RedBoot RAM image as normal, and load the new ROM image
+into RAM. However before programming the new image into Flash
+you <emphasis>must</emphasis> switch SW1 to lower mem (EB40)
+or set JP1 to STD (EB40A, EB42, EB55) before writing to Flash.
+</para>
+
+<warning><title>Warning!</title><para>Failure to set SW1 to
+<literal>lower mem</literal> (EB40) or JP1 to
+<literal>STD</literal> (EB40A, EB42, EB55) will cause the
+installation of RedBoot to overwrite Angel, thus making the board
+<emphasis>unbootable</emphasis>.  Only hardware JTAG can restore the
+board once in this state.
+</para></warning>
+
 </sect2>
 </sect1>