annotate packages/redboot/current/doc/redboot_installing.sgml @ 211:6eb55882e01c

Merge from eCos master repository on 2002-05-29-16:32:18-BST
author jlarmour
date Wed, 29 May 2002 18:28:03 +0000
parents d2c90368aeef
children 3a5832bf0564
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1 <!-- FIXME:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2 Need to make index terms consistent
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3 -->
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
6 <chapter id="Installation-and-Testing">
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
7 <title>Installation and Testing</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
8 <indexterm><primary>installing and testing RedBoot</primary></indexterm><indexterm>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
9 <primary>RedBoot</primary><secondary>installing and testing</secondary></indexterm>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
10
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
11 <!-- *************************** AM3x ********************** -->
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
12
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
13 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
14 <sect1 id="asb2305">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
15 <title>AM3x/MN103E010 Matsushita MN103E010 (AM33/2.0) ASB2305 Board</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
16 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
17 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
18 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
19 <indexterm>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
20 <primary>Matsushita MN103E010 (AM33/2.0) ASB2305 Board</primary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
21 <secondary>installing and testing</secondary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
22 </indexterm>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
23 <indexterm>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
24 <primary>installing and testing</primary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
25 <secondary>Matsushita MN103E010 (AM33/2.0) ASB2305 Board</secondary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
26 </indexterm>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
27 RedBoot supports the debug serial port and the built in ethernet port for communication and
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
28 downloads. The default serial port settings are 115200,8,N,1 with RTS/CTS flow control. RedBoot can
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
29 run from either flash, and can support flash management for either the boot PROM or the system
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
30 flash regions.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
31
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
32 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
33
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
34 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
35 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
36 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
37 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
38 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
39 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
40 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
41 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
42 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
43 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
44 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
45 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
46 <entry>PROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
47 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
48 <entry>RedBoot running from the boot PROM and able to
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
49 access the system flash.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
50 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
51 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
52 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
53 <entry>FLASH</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
54 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
55 <entry>RedBoot running from the system flash and able to
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
56 access the boot PROM.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
57 <entry>redboot_FLASH.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
58 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
59 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
60 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
61 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
62 <entry>RedBoot running from RAM and able to access the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
63 boot PROM.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
64 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
65 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
66 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
67 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
68 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
69 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
70 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
71
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
72 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
73 <title>Initial Installation</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
74 <para>Unless a pre-programmed system flash module is available to be plugged into a new board,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
75 RedBoot must be installed with the aid of a JTAG interface unit. To achieve this, the RAM mode
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
76 RedBoot must be loaded directly into RAM by JTAG and started, and then <emphasis>that</emphasis>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
77 must be used to store the ROM mode RedBoot into the boot PROM.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
78 <para>These instructions assume that you have binary images of the RAM-based and boot PROM-based
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
79 RedBoot images available.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
80 <sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
81 <title>Preparing to program the board</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
82 <para>If the board is to be programmed, whether via JTAG or RedBoot, some hardware settings need to
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
83 be changed:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
84 <itemizedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
85 <listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
86 <para>Jumper across ST18 on the board to allow write access to the boot PROM.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
87 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
88 <listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
89 <para>Set DIP switch S1-3 to OFF to allow RedBoot to write to the system flash.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
90 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
91 <listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
92 <para>Set the switch S5 (on the front of the board) to boot from whichever flash is
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
93 <emphasis>not</emphasis> being programmed. Note that the RedBoot image cannot access the flash from
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
94 which it is currently executing (it can only access the other flash).</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
95 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
96 </itemizedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
97 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
98 The RedBoot binary image files should also be copied to the TFTP pickup area on the host providing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
99 TFTP services if that is how RedBoot should pick up the images it is going to program into the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
100 flash. Alternatively, the images can be passed by YMODEM over the serial link.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
101 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
102 </sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
103 <sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
104 <title>Preparing to use the JTAG debugger</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
105 <para>The JTAG debugger will also need setting up:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
106 <orderedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
107 <listitem><para>Install the JTAG debugger software (WICE103E) on a PC running Windows (WinNT is
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
108 probably the best choice for this) in &ldquo;C:/PanaX&rdquo;.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
109 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
110 <listitem><para>Install the Matsushita provided &ldquo;project&rdquo; into the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
111 &ldquo;C:/Panax/wice103e/prj&rdquo; directory.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
112 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
113 <listitem><para>Install the RedBoot image files into the &ldquo;C:/Panax/wice103e/prj&rdquo;
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
114 directory under the names redboot.ram and redboot.prom.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
115 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
116 <listitem><para>Make sure the PC's BIOS has the parallel port set to full bidirectional
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
117 mode.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
118 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
119 <listitem><para>Connect the JTAG debugger to the PC's parallel port.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
120 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
121 <listitem><para>Connect the JTAG debugger to the board.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
122 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
123 <listitem><para>Set the switch on the front of the board to boot from &ldquo;boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
124 PROM&rdquo;.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
125 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
126 <listitem><para>Power up the JTAG debugger and then power up the board.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
127 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
128 <listitem><para>Connect the board's Debug Serial port to a computer by a null modem cable.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
129 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
130 <listitem><para>Start minicom or some other serial communication software and set for 115200 baud,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
131 1-N-8 with hardware (RTS/CTS) flow control.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
132 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
133 </orderedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
134 </sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
135 <sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
136 <title>Loading the RAM-based RedBoot via JTAG</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
137 <para>To perform the first half of the operation, the following steps should be followed:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
138 <orderedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
139 <listitem><para>Start the JTAG debugger software.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
140 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
141 <listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
142 <para>Run the following commands at the JTAG debugger's prompt to set up the MMU registers on the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
143 CPU.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
144 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
145 <userinput>ed 0xc0002000, 0x12000580</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
146
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
147 <userinput>ed 0xd8c00100, 0x8000fe01</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
148 <userinput>ed 0xd8c00200, 0x21111000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
149 <userinput>ed 0xd8c00204, 0x00100200</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
150 <userinput>ed 0xd8c00208, 0x00000004</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
151
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
152 <userinput>ed 0xd8c00110, 0x8400fe01</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
153 <userinput>ed 0xd8c00210, 0x21111000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
154 <userinput>ed 0xd8c00214, 0x00100200</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
155 <userinput>ed 0xd8c00218, 0x00000004</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
156
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
157 <userinput>ed 0xd8c00120, 0x8600ff81</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
158 <userinput>ed 0xd8c00220, 0x21111000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
159 <userinput>ed 0xd8c00224, 0x00100200</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
160 <userinput>ed 0xd8c00228, 0x00000004</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
161
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
162 <userinput>ed 0xd8c00130, 0x8680ff81</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
163 <userinput>ed 0xd8c00230, 0x21111000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
164 <userinput>ed 0xd8c00234, 0x00100200</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
165 <userinput>ed 0xd8c00238, 0x00000004</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
166
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
167 <userinput>ed 0xd8c00140, 0x9800f801</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
168 <userinput>ed 0xd8c00240, 0x00140000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
169 <userinput>ed 0xd8c00244, 0x11011100</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
170 <userinput>ed 0xd8c00248, 0x01000001</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
171
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
172 <userinput>ed 0xda000000, 0x55561645</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
173 <userinput>ed 0xda000004, 0x000003c0</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
174 <userinput>ed 0xda000008, 0x9000fe01</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
175 <userinput>ed 0xda00000c, 0x9200fe01</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
176 <userinput>ed 0xda000000, 0xa89b0654</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
177 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
178 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
179 <listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
180 <para>Run the following commands at the JTAG debugger's prompt to tell it what regions of the CPU's
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
181 address space it can access:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
182 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
183 <userinput>ex 0x80000000,0x81ffffff,/mexram</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
184 <userinput>ex 0x84000000,0x85ffffff,/mexram</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
185 <userinput>ex 0x86000000,0x867fffff,/mexram</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
186 <userinput>ex 0x86800000,0x87ffffff,/mexram</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
187 <userinput>ex 0x8c000000,0x8cffffff,/mexram</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
188 <userinput>ex 0x90000000,0x93ffffff,/mexram</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
189 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
190 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
191 <listitem><para>Instruct the debugger to load the RAM RedBoot image into RAM:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
192 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
193 <userinput>_pc=90000000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
194 <userinput>u_pc</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
195 <userinput>rd redboot.ram,90000000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
196 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
197 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
198 <listitem><para>Load the boot PROM RedBoot into RAM:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
199 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
200 <userinput>rd redboot.prom,91020000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
201 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
202 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
203 <listitem><para>Start RedBoot in RAM:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
204 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
205 <userinput>g</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
206 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
207 <para>Note that RedBoot may take some time to start up, as it will attempt to query a BOOTP or DHCP
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
208 server to try and automatically get an IP address for the board. Note, however, that it should send
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
209 a plus over the serial port immediately, and the 7-segment LEDs should display &ldquo;rh
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
210 8&rdquo;.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
211 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
212 </orderedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
213 </sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
214 <sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
215 <title>Loading the boot PROM-based RedBoot via the RAM mode RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
216 <para>Once the RAM mode RedBoot is up and running, it can be communicated with by way of the serial
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
217 port. Commands can now be entered directly to RedBoot for flashing the boot PROM.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
218 <orderedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
219 <listitem><para>Instruct RedBoot to initialise the boot PROM:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
220 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
221 RedBoot> <userinput>fi init</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
222 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
223 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
224 <listitem><para>Write the previously loaded redboot.prom image into the boot PROM:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
225 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
226 RedBoot> <userinput>fi write -f 0x80000000 -b 0x91020000 -l 0x00020000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
227 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
228 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
229 <listitem><para>Check that RedBoot has written the image:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
230 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
231 RedBoot> <userinput>dump -b 0x91020000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
232 RedBoot> <userinput>dump -b 0x80000000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
233 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
234 <para>Barring the difference in address, the two dumps should be the same.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
235 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
236 <listitem><para>Close the JTAG software and power-cycle the board. The RedBoot banners should be
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
237 displayed again over the serial port, followed by the RedBoot prompt. The boot PROM-based RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
238 will now be running.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
239 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
240 <listitem><para>Power off the board and unjumper ST18 to write-protect the contents of the boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
241 PROM. Then power the board back up.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
242 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
243 <listitem><para>Run the following command to initialise the system flash:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
244 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
245 RedBoot> <userinput>fi init</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
246 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
247 <para>Then program the system flash based RedBoot into the system flash:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
248 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
249 RedBoot> <userinput>load -r -b %{FREEMEMLO} redboot_FLASH.bin</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
250 RedBoot> <userinput>fi write -f 0x84000000 -b %{FREEMEMLO} -l 0x00020000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
251 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
252 <note>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
253 <title>NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
254 <para>RedBoot arranges the flashes on booting such that they always appear at the same addresses,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
255 no matter which one was booted from.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
256 </note>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
257 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
258 <listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
259 <para>A similar sequence of commands can be used to program the boot PROM when RedBoot has been
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
260 booted from an image stored in the system flash.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
261 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
262 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
263 RedBoot> <userinput>load -r -b %{FREEMEMLO} /tftpboot/redboot_ROM.bin</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
264 RedBoot> <userinput>fi write -f 0x80000000 -b %{FREEMEMLO} -l 0x00020000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
265 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
266 <para>See <xref linkend="Persistent-State-Flash"> for details on configuring the RedBoot in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
267 general, and also <xref linkend="Flash-Image-System"> for more details on programming the system
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
268 flash.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
269 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
270 </orderedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
271 </sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
272 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
273 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
274 <title>Additional Commands</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
275 <para>The <command>exec</command> command which allows the loading and execution of
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
276 Linux kernels, is supported for this architecture (see <xref linkend="executing-programs">). The
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
277 <command>exec</command> parameters used for ASB2305 board are:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
278 <variablelist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
279 <varlistentry><term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
280 -w <replaceable>&lt;time></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
281 <listitem><para>Wait time in seconds before starting kernel</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
282 <varlistentry><term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
283 -c <replaceable>"params"</replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
284 <listitem><para>Parameters passed to kernel</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
285 <varlistentry><term><replaceable>&lt;addr></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
286 <listitem><para>Kernel entry point, defaulting to the entry point of the last image
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
287 loaded</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
288 </variablelist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
289 <para>The parameter string is stored in the on-chip memory at location 0x8C001000, and is prefixed
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
290 by &ldquo;cmdline:&rdquo; if it was supplied.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
291 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
292 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
293 <title>Memory Maps </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
294 <para>RedBoot sets up the following memory map on the ASB2305 board.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
295 <note>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
296 <title>NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
297 <para>The regions mapped between 0x80000000-0x9FFFFFFF are cached by the CPU. However, all those
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
298 regions can be accessed uncached by adding 0x20000000 to the address.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
299 </note>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
300 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
301 Physical Address Range Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
302 ----------------------- -----------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
303 0x80000000 - 0x9FFFFFFF Cached Region
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
304 0x80000000 - 0x81FFFFFF Boot PROM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
305 0x84000000 - 0x85FFFFFF System Flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
306 0x86000000 - 0x86007FFF 64Kbit Sys Config EEPROM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
307 0x86F90000 - 0x86F90003 4x 7-segment LEDs
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
308 0x86FA0000 - 0x86FA0003 Software DIP Switches
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
309 0x86FB0000 - 0x86FB001F PC16550 Debug Serial Port
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
310 0x8C000000 - 0x8FFFFFFF On-Chip Memory (repeated 16Kb SRAM)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
311 0x90000000 - 0x93FFFFFF SDRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
312 0x98000000 - 0x9BFFFFFF Paged PCI Memory Space (64Mb)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
313 0x9C000000 - 0x9DFFFFFF PCI Local SRAM (32Mb)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
314 0x9E000000 - 0x9E03FFFF PCI I/O Space
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
315 0x9E040000 - 0x9E0400FF AM33-PCI Bridge Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
316 0x9FFFFFF4 - 0x9FFFFFF7 PCI Memory Page Register
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
317 0x9FFFFFF8 - 0x9FFFFFFF PCI Config Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
318 0xA0000000 - 0xBFFFFFFF Uncached Mirror Region
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
319 0xC0000000 - 0xDFFFFFFF CPU Control Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
320 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
321 <para>The ASB2305 HAL makes use of the on-chip memory in the following way:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
322 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
323 0x8C000000 - 0x8C0000FF hal_vsr_table
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
324 0x8C000100 - 0x8C0001FF hal_virtual_vector_table
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
325 0x8C001000 - Linux command line (RedBoot exec command)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
326 - 0x8C003FFF Emergency DoubleFault Exception Stack
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
327 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
328 <para>Currently the CPU's interrupt table lies at the beginning of the RedBoot image, which must
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
329 therefore be aligned to a 0xFF000000 mask.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
330 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
331 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
332 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
333
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
334 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
335 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
336 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
337 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
338 export TARGET=asb2305
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
339 export ARCH_DIR=mn10300
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
340 export PLATFORM_DIR=asb2305
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
341 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
342 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
343
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
344 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
345 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
346
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
347 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
348 </sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
349
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
350 <!-- *************************** ARM ******************* -->
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
351
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
352 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
353 <sect1 id="e7t">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
354 <title>ARM/ARM7 ARM Evaluator7T</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
355 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
356 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
357 <para><indexterm><primary>ARM Evaluator7T</primary><secondary>installing and
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
358 testing</secondary></indexterm><indexterm><primary>installing and testing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
359 </primary><secondary>ARM Evaluator7T</secondary></indexterm>RedBoot supports
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
360 both serial ports for communication and downloads. The default serial port
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
361 settings are 38400,8,N,1.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
362
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
363 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
364
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
365 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
366 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
367 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
368 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
369 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
370 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
371 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
372 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
373 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
374 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
375 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
376 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
377 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
378 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
379 <entry>RedBoot running from flash address 0x20000, with
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
380 ARM Boot Monitor in flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
381 <entry>redboot_ROMA.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
382 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
383 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
384 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
385 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
386 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
387
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
388 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
389 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
390 <title>Initial Installation</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
391 <para>RedBoot is installed using the on-board boot environment. See the user
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
392 manual for full details.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
393 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
394 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
395 <title>Quick download instructions</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
396 <para>Here are quick start instructions for downloading the prebuilt Redboot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
397 image:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
398 <itemizedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
399 <listitem><para>Boot the board and press ENTER:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
400 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
401
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
402 ARM Evaluator7T Boot Monitor PreRelease 1.00
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
403 Press ENTER within 2 seconds to stop autoboot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
404 Boot: </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
405 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
406 <listitem><para>Erase the part of the flash where RedBoot will get programmed:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
407 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
408 <screen> Boot: <userinput>flasherase 01820000 10000</userinput></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
409 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
410 <listitem><para>Prepare to download the UU-encoded version of the RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
411 image:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
412 <screen> Boot: <userinput>download 10000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
413 Ready to download. Use 'transmit' option on terminal emulator to download file.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
414 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
415 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
416 <listitem><para>Either use ASCII transmit option in the terminal emulator,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
417 or on Linux, simply cat the file to the serial port:<screen> $ <userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
418 cat redboot.UU > /dev/ttyS0</userinput></screen>When complete, you should
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
419 see:<screen> Loaded file redboot.bin at address 000100000, size = 41960
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
420 Boot:</screen></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
421 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
422 <listitem><para>Program the flash:<screen> Boot: <userinput>flashwrite 01820000 10000 10000
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
423 </userinput></screen></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
424 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
425 <listitem><para>And verify that the module is available:<screen> Boot: <userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
426 rommodules</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
427 Header Base Limit
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
428 018057c8 01800000 018059e7 BootStrapLoader v1.0 Apr 27 2000 10:33:58
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
429 01828f24 01820000 0182a3e8 RedBoot Apr 5 2001</screen></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
430 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
431 <listitem><para>Reboot the board and you should see the RedBoot banner.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
432 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
433 </itemizedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
434 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
435 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
436 <title>Special RedBoot Commands </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
437 <para>None.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
438 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
439 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
440 <title>Memory Maps </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
441 <para>RedBoot sets up the following memory map on the E7T board. <note><title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
442 NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
443 <para>The virtual memory maps in this section use a C and B column to indicate
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
444 whether or not the region is cached (C) or buffered (B).</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
445 </note> <programlisting>Physical Address Range C B Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
446 ----------------------- - - -----------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
447 0x00000000 - 0x0007ffff Y N SDRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
448 0x03ff0000 - 0x03ffffff N N Microcontroller registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
449 0x01820000 - 0x0187ffff N N System flash (mirrored)</programlisting></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
450 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
451 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
452 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
453
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
454 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
455 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
456 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
457 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
458 export TARGET=e7t
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
459 export ARCH_DIR=arm
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
460 export PLATFORM_DIR=e7t
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
461 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
462 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
463
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
464 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
465 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
466
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
467 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
468 </sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
469
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
470 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
471 <sect1 id="integrator">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
472 <title>ARM/ARM7+ARM9 ARM Integrator</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
473 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
474 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
475 <para><indexterm><primary>ARM Integrator</primary><secondary>installing and
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
476 testing</secondary></indexterm><indexterm><primary>installing and testing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
477 </primary><secondary>ARM Integrator</secondary></indexterm>RedBoot supports
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
478 both serial ports for communication and downloads. The default serial port
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
479 settings are 38400,8,N,1.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
480
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
481 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
482
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
483 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
484 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
485 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
486 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
487 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
488 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
489 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
490 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
491 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
492 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
493 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
494 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
495 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
496 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
497 <entry>RedBoot running from the board's flash boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
498 sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
499 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
500 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
501 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
502 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
503 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
504 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
505 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
506 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
507 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
508 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
509 <entry>ROMRAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
510 <entry>[ROMRAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
511 <entry>RedBoot running from RAM, but contained in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
512 board's flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
513 <entry>redboot_ROMRAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
514 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
515 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
516 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
517 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
518 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
519
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
520 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
521
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
522 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
523 <title>Initial Installation</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
524 <para>RedBoot is installed using the on-board bootPROM environment. See the user
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
525 manual for full details.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
526 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
527 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
528 <title>Quick download instructions</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
529 <para>Here are quick start instructions for downloading the prebuilt Redboot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
530 image:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
531 <itemizedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
532 <listitem><para>Set DIP switch S1[1] to the ON position and reset or
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
533 power the board up. You will see the bootPROM startup message on
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
534 serial port A (J14):</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
535 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
536 Initialising...
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
537
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
538
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
539 ARM bootPROM [Version 1.3] Rebuilt on Jun 26 2001 at 22:04:10
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
540 Running on a Integrator Evaluation Board
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
541 Board Revision V1.0, ARM966E-S Processor
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
542 Memory Size is 16MBytes, Flash Size is 32MBytes
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
543 Copyright (c) ARM Limited 1999 - 2001. All rights reserved.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
544 Board designed by ARM Limited
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
545 Hardware support provided at http://www.arm.com/
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
546 For help on the available commands type ? or h
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
547 boot Monitor >
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
548 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
549 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
550 <listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
551 <para>Issue the FLASH ROM load command:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
552 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
553 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
554 boot Monitor > <userinput>L</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
555 Load Motorola S-Records into flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
556
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
557 Deleting Image 0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
558
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
559 The S-Record loader only accepts input on the serial port.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
560 Type Ctrl/C to exit loader.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
561 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
562 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
563 <listitem><para>Either use the ASCII transmit option in the terminal emulator,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
564 or on Linux, simply cat the file to the serial port:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
565 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
566 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
567 $ <userinput>cat redboot.srec > /dev/ttyS0</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
568 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
569 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
570 When complete, type Ctrl-C and you should see something similar to:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
571 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
572 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
573 ................................
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
574 ................................
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
575 ....................
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
576 Downloaded 5,394 records in 81 seconds.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
577
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
578 Overwritten block/s
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
579 0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
580
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
581 boot Monitor >
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
582 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
583 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
584 <listitem><para>Set DIP switch S1[1] to the OFF position and reboot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
585 the board and you should see the RedBoot banner.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
586 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
587 </itemizedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
588 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
589 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
590 <title>Special RedBoot Commands </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
591 <para>None.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
592 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
593 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
594 <title>Memory Maps </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
595 <para>RedBoot sets up the following memory map on the Integrator board. <note><title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
596 NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
597 <para>The virtual memory maps in this section use a C and B column to indicate
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
598 whether or not the region is cached (C) or buffered (B).</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
599 </note>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
600 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
601
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
602 ARM7TDMI
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
603 --------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
604
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
605 Physical Address Range C B Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
606 ----------------------- - - -----------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
607 0x00000000 - 0x0007ffff N N SSRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
608 0x00080000 - 0x0fffffff N N SDRAM (depends on part fitted)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
609 0x10000000 - 0x1fffffff N N System control and peripheral registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
610 0x20000000 - 0x23ffffff N N Boot ROM (contains boot Monitor)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
611 0x24000000 - 0x27ffffff N N FLASH ROM (contains RedBoot)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
612 0x28000000 - 0x2bffffff N N SSRAM echo area
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
613 0x40000000 - 0x5fffffff N N PCI Memory access windows
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
614 0x60000000 - 0x60ffffff N N PCI IO access window
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
615 0x61000000 - 0x61ffffff N N PCI config space window
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
616 0x62000000 - 0x6200ffff N N PCI bridge register window
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
617 0x80000000 - 0x8fffffff N N SDRAM echo area (used for PCI accesses)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
618
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
619
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
620 ARM966E
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
621 -------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
622
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
623 Physical Address Range C B Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
624 ----------------------- - - -----------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
625 0x00000000 - 0x000fffff N N SSRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
626 0x00100000 - 0x0fffffff N N SDRAM (depends on part fitted)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
627 0x10000000 - 0x1fffffff N N System control and peripheral registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
628 0x20000000 - 0x23ffffff N N Boot ROM (contains boot Monitor)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
629 0x24000000 - 0x27ffffff N N FLASH ROM (contains RedBoot)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
630 0x28000000 - 0x2bffffff N N SSRAM echo area
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
631 0x40000000 - 0x5fffffff N N PCI Memory access windows
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
632 0x60000000 - 0x60ffffff N N PCI IO access window
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
633 0x61000000 - 0x61ffffff N N PCI config space window
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
634 0x62000000 - 0x6200ffff N N PCI bridge register window
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
635 0x80000000 - 0x8fffffff N N SDRAM echo area (used for PCI accesses)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
636
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
637 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
638 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
639 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
640 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
641 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
642
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
643 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
644 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
645 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
646 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
647 export TARGET=integrator
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
648 export ARCH_DIR=arm
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
649 export PLATFORM_DIR=integrator
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
650 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
651 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
652
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
653 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
654 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
655
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
656 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
657 </sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
658
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
659 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
660 <sect1 id="pid">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
661 <title>ARM/ARM7+ARM9 ARM PID Board and EPI Dev7+Dev9</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
662 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
663 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
664 <para><indexterm><primary>ARM ARM7 PID, Dev7 and Dev9</primary><secondary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
665 installing and testing</secondary></indexterm><indexterm><primary>installing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
666 and testing</primary><secondary>ARM ARM7 PID, Dev7 and Dev9</secondary></indexterm>RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
667 uses either of the serial ports. The default serial port settings are 38400,8,N,1.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
668 Management of onboard flash is also supported.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
669
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
670 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
671
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
672 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
673 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
674 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
675 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
676 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
677 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
678 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
679 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
680 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
681 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
682 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
683 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
684 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
685 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
686 <entry>RedBoot running from the board's flash boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
687 sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
688 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
689 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
690 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
691 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
692 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
693 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
694 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
695 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
696 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
697 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
698 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
699 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
700 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
701 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
702
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
703 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
704 <title>Initial Installation Method </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
705 <para>Device programmer is used to program socketed flash parts with ROM version
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
706 of RedBoot. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
707 <para>Alternatively, to install RedBoot on a target that already has eCos
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
708 GDB stubs, download the RAM mode image of RedBoot and run it. Initialize the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
709 flash image directory: <command>fis init</command> Then
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
710 download the ROM version of RedBoot and program it into flash: <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
711 RedBoot> <userinput>load -b %{FREEMEMLO} -m ymodem</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
712 RedBoot> <userinput>fi cr RedBoot</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
713 </screen></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
714 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
715 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
716 <title>Special RedBoot Commands </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
717 <para>None.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
718 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
719 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
720 <title>Memory Maps </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
721 <para>RedBoot sets up the following memory map on the PID board. <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
722 Physical Address Range Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
723 ----------------------- -----------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
724 0x00000000 - 0x0007ffff DRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
725 0x04000000 - 0x04080000 flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
726 0x08000000 - 0x09ffffff ASB Expansion
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
727 0x0a000000 - 0x0bffffff APB Reference Peripheral
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
728 0x0c000000 - 0x0fffffff NISA Serial, Parallel and PC Card ports </programlisting></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
729 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
730 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
731 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
732
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
733 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
734 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
735 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
736 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
737 export TARGET=pid
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
738 export ARCH_DIR=arm
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
739 export PLATFORM_DIR=pid
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
740 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
741 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
742
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
743 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
744 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
745
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
746 </sect2></sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
747
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
748 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
749 <sect1 id="at91">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
750 <title>ARM/ARM7 Atmel AT91 Evaluation Board (EB40)</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
751 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
752 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
753 <para><indexterm><primary>Atmel AT91/EB40</primary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
754 <secondary>installing and testing</secondary></indexterm><indexterm><primary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
755 installing and testing</primary><secondary>Atmel AT91/EB40
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
756 </secondary></indexterm>RedBoot supports both serial ports.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
757 The default serial port settings are 38400,8,N,1. RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
758 also supports minimal flash management on the EB40.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
759 However, since the flash device (AT29LV1024) is so small (only the upper 64K is
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
760 available for general use), only 'fconfig' is
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
761 supported, along with the simple flash write command, 'fis
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
762 write'.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
763
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
764 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
765
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
766 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
767 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
768 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
769 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
770 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
771 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
772 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
773 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
774 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
775 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
776 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
777 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
778 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
779 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
780 <entry>RedBoot running from the board's flash boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
781 sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
782 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
783 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
784 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
785 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
786 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
787 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
788 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
789 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
790 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
791 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
792 <entry>ROMRAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
793 <entry>[ROMRAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
794 <entry>RedBoot running from RAM, but contained in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
795 board's flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
796 <entry>redboot_ROMRAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
797 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
798 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
799 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
800 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
801 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
802 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
803
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
804 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
805 <title>Initial Installation Method </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
806 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
807 This development board comes with ARM's debug tool, Angel, installed in flash.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
808 At this time, Angel will not be replaced. Rather, RedBoot will be placed in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
809 the alternate half of flash. Switch SW1 is used which monitor to boot. Selecting
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
810 SW1 to "lower mem" will choose Angel. Select SW1 to "Upper mem" for RedBoot once
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
811 it has been installed.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
812 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
813 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
814 Set SW1 to "lower mem" and connect serial port A to a host computer. Using GDB
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
815 from the host and Angel on the board, download the RAM mode image of RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
816 to the board. Once this is started, the Angel session must be interrupted (on
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
817 Linux this can be done using ^Z). Follow this by connecting to the board using
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
818 minicom at 38400-8N1. At this point, RedBoot will be running on the board in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
819 RAM. Now, download the ROMRAM mode image and program it to flash. Be sure and
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
820 first set SW1 to "upper mem".
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
821 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
822 <userinput>arm-elf-gdb redboot_RAM.elf</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
823 (gdb) <userinput>tar rdi s=/dev/ttyS0</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
824 Angel Debug Monitor (serial) 1.04 (Advanced RISC Machines SDT 2.5) for
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
825 AT91EB40 (2.00)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
826 Angel Debug Monitor rebuilt on Apr 07 2000 at 12:40:31
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
827 Serial Rate: 9600
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
828 Connected to ARM RDI target.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
829 (gdb) <userinput>set $ps=0xd3</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
830 (gdb) <userinput>load</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
831 Loading section .rom_vectors, size 0x40 lma 0x2020000
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
832 Loading section .text, size 0x7fd8 lma 0x2020040
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
833 Loading section .rodata, size 0x15a0 lma 0x2028018
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
834 Loading section .data, size 0x2e4 lma 0x20295b8
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
835 Start address 0x2020040 , load size 39068
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
836 Transfer rate: 6250 bits/sec, 500 bytes/write.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
837 (gdb) <userinput>cont</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
838 Continuing.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
839 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
840 At this point, suspend the GDB session (use Ctrl-Z) and start a
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
841 terminal emulator:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
842 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
843 RedBoot> <userinput>version</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
844
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
845 RedBoot(tm) bootstrap and debug environment [RAM]
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
846 Non-certified release, version UNKNOWN - built 14:09:27, Jul 20 2001
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
847
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
848 Platform: Atmel AT91/EB40 (ARM7TDMI)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
849 Copyright (C) 2000, 2001, Red Hat, Inc.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
850
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
851 RAM: 0x02000000-0x02080000, 0x020116d8-0x0207fd00 available
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
852 FLASH: 0x01010000 - 0x01020000, 256 blocks of 0x00000100 bytes each.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
853
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
854 RedBoot> <userinput>load -m ymodem -b %{FREEMEMLO}</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
855 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
856 Use minicom to send the file redboot_ROMRAM.srec via YModem.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
857 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
858 RedBoot> <userinput>fi wr -f 0x01010000 -b %{FREEMEMLO} -l 0xe000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
859 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
860 Set switch SW1 to "upper mem", press the "reset" pushbutton and RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
861 should come up on the board.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
862 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
863 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
864 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
865 <title>Special RedBoot Commands </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
866 <para>None.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
867 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
868 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
869 <title>Memory Maps </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
870 <para>This processor has no MMU, so the only memory map is for physical addresses.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
871 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
872 Physical Address Range Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
873 ----------------------- ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
874 0x00000000 - 0x00000fff On-chip SRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
875 0x01000000 - 0x0101ffff Flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
876 0x02000000 - 0x0207ffff RAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
877 0xffe00000 - 0xffffffff I/O registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
878
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
879 The flash based RedBoot image occupies virtual addresses 0x01010000 - 0x0101dfff
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
880 </programlisting></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
881
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
882 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
883 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
884 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
885
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
886 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
887 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
888 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
889 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
890 export TARGET=eb40
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
891 export ARCH_DIR=arm
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
892 export PLATFORM_DIR=at91
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
893 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
894 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
895
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
896 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
897 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
898
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
899 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
900 </sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
901
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
902
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
903 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
904 <sect1 id="edb7xxx">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
905 <title>ARM/ARM7 Cirrus Logic EP7xxx (EDB7211, EDB7212, EDB7312) </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
906 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
907 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
908 <para><indexterm><primary>Cirrus Logic EP7xxx (EDB7211, EDB7212, EDB7312)</primary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
909 <secondary>installing and testing</secondary></indexterm><indexterm><primary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
910 installing and testing</primary><secondary>Cirrus Logic EP7xxx (EDB7211, EDB7212, EDB7312)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
911 </secondary></indexterm>RedBoot supports both serial ports on the board and
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
912 the ethernet port. The default serial port settings are 38400,8,N,1. RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
913 also supports flash management on the EDB7xxx for the NOR flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
914 only.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
915
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
916 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
917
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
918 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
919 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
920 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
921 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
922 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
923 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
924 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
925 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
926 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
927 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
928 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
929 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
930 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
931 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
932 <entry>RedBoot running from the board's flash boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
933 sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
934 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
935 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
936 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
937 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
938 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
939 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
940 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
941 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
942 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
943 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
944 <entry>ROMRAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
945 <entry>[ROMRAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
946 <entry>RedBoot running from RAM, but contained in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
947 board's flash boot sector (EDB7312 only).</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
948 <entry>redboot_ROMRAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
949 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
950 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
951 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
952 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
953 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
954
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
955 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
956 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
957 <title>Initial Installation Method </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
958 <para>A Windows or Linux utility is used to program flash using serial port
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
959 #1 via on-chip programming firmware. See board documentation for details on
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
960 in situ flash programming. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
961 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
962 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
963 <title>Special RedBoot Commands </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
964 <para>None.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
965 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
966 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
967 <title>Memory Maps </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
968 <para>The MMU page tables and LCD display buffer, if enabled, are located
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
969 at the end of DRAM. <note><title>NOTE
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
970 </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
971 <para>The virtual memory maps in this section use a C and B column to indicate
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
972 whether or not the region is cached (C) or buffered (B).</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
973 </note><programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
974 Physical Address Range Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
975 ----------------------- ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
976 0x00000000 - 0x01ffffff NOR Flash (EDB7211, EDB7212)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
977 0x00000000 - 0x00ffffff NOR Flash (EDB7312)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
978 0x10000000 - 0x11ffffff NAND Flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
979 0x20000000 - 0x2fffffff Expansion 2
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
980 0x30000000 - 0x3fffffff Expansion 3
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
981 0x40000000 - 0x4fffffff PCMCIA 0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
982 0x50000000 - 0x5fffffff PCMCIA 1
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
983 0x60000000 - 0x600007ff On-chip SRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
984 0x80000000 - 0x8fffffff I/O registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
985 0xc0000000 - 0xc1ffffff DRAM (EDB7211, EDB7212)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
986 0xc0000000 - 0xc0ffffff DRAM (EDB7312)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
987
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
988 Virtual Address Range C B Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
989 ----------------------- - - ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
990 0x00000000 - 0x01ffffff Y Y DRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
991 0x00000000 - 0x00fcffff Y Y DRAM (EDB7312)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
992 0x20000000 - 0x2fffffff N N Expansion 2
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
993 0x30000000 - 0x3fffffff N N Expansion 3
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
994 0x40000000 - 0x4fffffff N N PCMCIA 0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
995 0x50000000 - 0x5fffffff N N PCMCIA 1
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
996 0x60000000 - 0x600007ff Y Y On-chip SRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
997 0x80000000 - 0x8fffffff N N I/O registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
998 0xc0000000 - 0xc001ffff N Y LCD buffer (if configured)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
999 0xe0000000 - 0xe1ffffff Y Y NOR Flash (EDB7211, EDB7212)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1000 0xe0000000 - 0xe0ffffff Y Y NOR Flash (EDB7312)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1001 0xf0000000 - 0xf1ffffff Y Y NAND Flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1002
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1003 The flash based RedBoot image occupies virtual addresses 0xe0000000 - 0xe003ffff.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1004 </programlisting></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1005 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1006 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1007 <title>Platform Resource Usage</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1008 <para>The EP7xxx timer #2 is used as a polled timer to provide timeout support
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1009 for network and XModem file transfers.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1010 </sect2><sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1011
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1012 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1013
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1014
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1015 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1016 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1017 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1018 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1019 export TARGET=edb7211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1020 export TARGET=edb7212
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1021 export TARGET=edb7312
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1022 export ARCH_DIR=arm
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1023 export PLATFORM_DIR=edb7xxx
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1024 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1025
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1026 Use one of the TARGET settings only.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1027 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1028
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1029 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1030 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1031
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1032 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1033 </sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1034
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1035 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1036 <sect1 id="aaed2000">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1037 <title>ARM/ARM9 Agilent AAED2000</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1038 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1039 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1040 <para><indexterm><primary>Agilent AAED2000 ARM9 (aaed)</primary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1041 <secondary>installing and testing</secondary></indexterm><indexterm><primary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1042 installing and testing</primary><secondary>Agilent AAED2000 ARM9 (aaed)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1043 </secondary></indexterm>RedBoot supports the serial and ethernet ports
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1044 on the board. The default serial port settings are 38400,8,N,1.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1045 RedBoot also supports flash management on the AAED2000.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1046
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1047 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1048
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1049 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1050 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1051 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1052 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1053 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1054 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1055 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1056 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1057 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1058 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1059 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1060 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1061 <entry>ROMRAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1062 <entry>[ROMRAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1063 <entry>RedBoot running from RAM, but contained in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1064 board's flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1065 <entry>redboot_primary_ROMRAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1066 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1067 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1068 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1069 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1070 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1071 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1072 <entry>redboot_primary_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1073 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1074 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1075 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1076 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1077 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1078 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1079
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1080 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1081 <title>Initial Installation Method </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1082 <para>It is possible to install RedBoot in one of two ways. Either as
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1083 the primary bootmonitor on the board (installed to blocks 0-1 of the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1084 flash) or as the secondary bootmonitor on the board (installed to
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1085 blocks 1-2 of the flash).</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1086
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1087 <para>Presently, only the former method is supported.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1088 <!-- Nuke the above line if uncommenting this block
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1089 <para>When installed as the secondary bootmonitor, the ARM bootmonitor
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1090 remains in flash and auto-executes RedBoot (but only when RedBoot is
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1091 smaller than 128KB - which means it cannot include the LCD driver).
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1092 It is of crucial importance that no RedBoot configured to be
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1093 primary bootmonitor is executed on a board where RedBoot is actually
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1094 supposed to be the secondary bootmonitor since it may cause corruption
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1095 of the flash. Installing RedBoot as the primary booter is
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1096 adviced.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1097 -->
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1098
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1099 <sect3><title>RedBoot as Primary Bootmonitor</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1100
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1101 <para>RedBoot is installed in flash using the on-board ARM Boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1102 Monitor.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1103 <para>Boot the board while pressing SPACE. This should bring up the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1104 Boot Monitor:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1105 <screen>ARM bootPROM [Version 1.3] Rebuilt on Jul 16 2001 at 16:21:36
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1106 Running on a P920 board Evaluation Board
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1107 Board Revision V1.0, ARM920T processor Processor
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1108 Memory Size is 32MBytes, Flash Size is 32MBytes
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1109 Copyright (c) ARM Limited 1999 - 2001. All rights reserved.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1110 Board designed by ARM Limited
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1111 Hardware support provided at http://www.arm.com/
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1112 For help on the available commands type ? or h
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1113 boot Monitor >
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1114 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1115
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1116 Download the RAM mode image of RedBoot configured as a primary
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1117 bootmonitor using the ARM bootmonitor's SREC-download command:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1118
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1119 <screen>boot Monitor &gt; <userinput>m</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1120 Load Motorola S-Record image into memory and execute it
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1121 The S-Record loader only accepts input on the serial port.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1122 Record addresses must be between 0x00008000 and 0x01E0F510.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1123 Type Ctrl/C to exit loader.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1124 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1125
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1126 Use the terminal emulator's ASCII upload command, or (on Linux) simply
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1127 cat the file to the serial port:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1128
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1129 <screen>$ <userinput>cat redboot_primary_RAM/redboot.srec &gt;/dev/ttyS1</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1130 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1131
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1132 You should see RedBoot start up:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1133
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1134 <screen>FLASH configuration checksum error or invalid key
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1135 Ethernet eth0: MAC address 00:30:d3:03:04:99
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1136 IP: 192.168.42.111, Default server: 192.168.42.3
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1137
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1138 RedBoot(tm) bootstrap and debug environment [RAM]
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1139 Non-certified release, version UNKNOWN - built 13:15:40, Nov 9 2001
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1140
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1141 Platform: AAED2000 system (ARM9) [Primary]
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1142 Copyright (C) 2000, 2001, Red Hat, Inc.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1143
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1144 RAM: 0x00000000-0x01f80000, 0x0006f208-0x01f51000 available
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1145 FLASH: 0x60000000 - 0x62000000, 256 blocks of 0x00020000 bytes each.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1146 RedBoot></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1147
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1148 As can be seen from the output above, the network has been configured
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1149 to give the board an IP address and information about the default
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1150 server. If things are not set up on your network, you can still
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1151 continue, but use the Y-modem download method when loading the RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1152 ROMRAM mode image.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1153
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1154 Now initialize RedBoot's FIS:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1155
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1156 <screen>RedBoot&gt; <userinput>fis init</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1157 About to initialize [format] FLASH image system - continue (y/n)? <userinput>y</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1158 *** Initialize FLASH Image System
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1159 Warning: device contents not erased, some blocks may not be usable
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1160 ... Erase from 0x61fe0000-0x62000000: .
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1161 ... Program from 0x01f5f000-0x01f5f300 at 0x61fe0000: .
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1162 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1163
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1164 Download the ROMRAM mode image of RedBoot via ethernet:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1165
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1166 <screen>RedBoot&gt; <userinput>load -b %{FREEMEMLO} redboot_primary_ROMRAM/redboot.srec</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1167 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1168
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1169 or using serial Y-modem protocol:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1170
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1171 <screen>RedBoot&gt; <userinput>load -mode ymodem -b %{FREEMEMLO}</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1172 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1173
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1174 (Use the terminal emulator's Y-modem upload command to send the file
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1175 <filename>redboot_primary_ROMRAM/redboot.srec</filename>.)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1176
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1177 When the image has been downloaded, program it into flash:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1178
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1179 <screen>Address offset = 0x00ff8000
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1180 Entry point: 0x00008040, address range: 0x00008000-0x0002da80
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1181 RedBoot&gt; <userinput>fi cr RedBoot</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1182 An image named 'RedBoot' exists - continue (y/n)? <userinput>y</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1183 * CAUTION * about to program 'RedBoot'
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1184 at 0x60000000..0x6003ffff from 0x00100000 - continue (y/n)? <userinput>y</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1185 ... Erase from 0x60000000-0x60040000: ..
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1186 ... Program from 0x00100000-0x00140000 at 0x60000000: ..
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1187 ... Erase from 0x61fe0000-0x62000000: .
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1188 ... Program from 0x01f5f000-0x01f7f000 at 0x61fe0000: .
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1189 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1190
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1191 Now reset the board. You should see the RedBoot banner.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1192
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1193 </sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1194
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1195 <!--
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1196 <sect3><title>RedBoot as Secondary Bootmonitor</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1197
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1198 <para>RedBoot is installed in flash using the on-board ARM Boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1199 Monitor.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1200 <para>Boot the board while pressing SPACE. This should bring up the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1201 Boot Monitor:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1202 <screen>ARM bootPROM [Version 1.3] Rebuilt on Jul 16 2001 at 16:21:36
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1203 Running on a P920 board Evaluation Board
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1204 Board Revision V1.0, ARM920T processor Processor
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1205 Memory Size is 32MBytes, Flash Size is 32MBytes
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1206 Copyright (c) ARM Limited 1999 - 2001. All rights reserved.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1207 Board designed by ARM Limited
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1208 Hardware support provided at http://www.arm.com/
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1209 For help on the available commands type ? or h
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1210 boot Monitor >
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1211 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1212
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1213 Download the RAM mode image of RedBoot configured as a secondary
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1214 bootmonitor using the ARM bootmonitor's SREC-download command:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1215
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1216 <screen>boot Monitor &gt; <userinput>m</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1217 Load Motorola S-Record image into memory and execute it
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1218 The S-Record loader only accepts input on the serial port.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1219 Record addresses must be between 0x00008000 and 0x01E0F510.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1220 Type Ctrl/C to exit loader.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1221 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1222
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1223 Use the terminal emulator's ASCII upload command, or (on Linux) simply
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1224 cat the file to the serial port:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1225
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1226 <screen>$ <userinput>cat redboot_secondary_RAM.srec &gt;/dev/ttyS1</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1227 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1228
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1229 You should see RedBoot start up:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1230
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1231 <screen>FLASH configuration checksum error or invalid key
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1232 Ethernet eth0: MAC address 00:30:d3:03:04:99
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1233 IP: 192.168.42.111, Default server: 192.168.42.3
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1234
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1235 RedBoot(tm) bootstrap and debug environment [RAM]
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1236 Non-certified release, version UNKNOWN - built 12:31:13, Nov 9 2001
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1237
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1238 Platform: AAED2000 system (ARM9) [Secondary]
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1239 Copyright (C) 2000, 2001, Red Hat, Inc.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1240
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1241 RAM: 0x00000000-0x01f80000, 0x00063568-0x01f51000 available
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1242 FLASH: 0x60000000 - 0x62000000, 256 blocks of 0x00020000 bytes each.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1243 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1244
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1245 As can be seen from the output above, the network has been configured
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1246 to give the board an IP address and information about the default
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1247 server. If things are not set up on your network, you can still
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1248 continue, but use the Y-modem download method when loading the RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1249 ROMRAM mode image.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1250
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1251 Next step is to erase all of the flash, except where the ARM booter resides:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1252
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1253 <screen>RedBoot&gt; <userinput>fi erase -f 0x60020000 -l 0x01fe0000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1254 ... Erase from 0x60020000-0x62000000: ..........................................
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1255 ................................................................................
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1256 ................................................................................
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1257 .....................................................
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1258 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1259
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1260 Then initialize RedBoot's FIS:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1261
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1262 <screen>RedBoot&gt; <userinput>fi init</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1263 About to initialize [format] FLASH image system - continue (y/n)? <userinput>y</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1264 *** Initialize FLASH Image System
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1265 Warning: device contents not erased, some blocks may not be usable
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1266 ... Erase from 0x61fc0000-0x61fe0000: .
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1267 ... Program from 0x01fdf000-0x01fff000 at 0x61fc0000: .
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1268 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1269
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1270 Download the ROMRAM mode RedBoot image via ethernet:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1271
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1272 <screen>RedBoot&gt; <userinput>load -raw -b %{FREEMEMLO} redboot_secondary_ROMRAM.arm.bin</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1273 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1274
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1275 or using serial Y-modem protocol:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1276
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1277 <screen>RedBoot&gt; <userinput>load -raw -mode ymodem -b %{FREEMEMLO}</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1278 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1279
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1280 (Use the terminal emulator's Y-modem upload command to send the file
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1281 <filename>redboot_secondary_ROMRAM.arm.bin</filename>.)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1282
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1283 When the image has been downloaded, program it into flash:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1284
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1285 <screen>RedBoot&gt; <userinput>fi cr RedBoot</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1286 An image named 'RedBoot' exists - continue (y/n)? <userinput>y</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1287 * CAUTION * about to program 'RedBoot'
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1288 at 0x60020000..0x6005ffff from 0x00100000 - continue (y/n)? <userinput>y</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1289 ... Erase from 0x60020000-0x60060000: ..
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1290 ... Program from 0x00100000-0x00140000 at 0x60020000: ..
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1291 ... Erase from 0x61fc0000-0x61fe0000: .
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1292 ... Program from 0x01f5f000-0x01f7f000 at 0x61fc0000: .
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1293 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1294
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1295 Now reset the board. You might see the ARM Monitor complain:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1296
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1297 <screen>Failed to boot from flash.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1298 The ARM Boot Monitor SIB can not be found.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1299 Press any key to continue.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1300 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1301
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1302 This is due to due to the flash having been erased. Press a key, and
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1303 execute the "validate flash contents" command:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1304
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1305 <screen>boot Monitor &gt; <userinput>v</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1306
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1307 There are 254 128KByte blocks of Application Flash:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1308
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1309 No images found!
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1310 ================
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1311
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1312 System Information Blocks
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1313 =========================
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1314 Address Owner Size Idx Rev
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1315 ~~~~~~~ ~~~~~ ~~~~ ~~~ ~~~
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1316 0x05FE0000 ARM Boot Monitor 312 0 0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1317
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1318
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1319 Blocks of unknown type
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1320 ======================
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1321 Block Size Footer Type
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1322 ~~~~~ ~~~~ ~~~~~~~~~~~
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1323 252 1 0x52420000
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1324 boot Monitor &gt;
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1325 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1326
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1327 This causes the last block of the flash to be initialized with the ARM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1328 Boot Monitor ID, necessary for the Monitor to work properly. When
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1329 resetting the board now, it should automatically start RedBoot. If you
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1330 ever need to get into the ARM Boot Monitor again, reset the board
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1331 while pressing the SPACE key.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1332
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1333 </para></sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1334 -->
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1335
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1336 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1337
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1338 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1339 <title>Special RedBoot Commands </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1340 <para>The <command>exec</command> command which allows the loading
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1341 and execution of Linux kernels,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1342 is supported for this board (see <xref linkend="executing-programs">). The <command>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1343 exec</command> parameters used for the AAED2000 are:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1344 <variablelist><varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1345 <term>-b <replaceable>&lt;addr></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1346 <listitem><para>Location Linux kernel was loaded to</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1347 <varlistentry><term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1348 -l <replaceable>&lt;len></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1349 <listitem><para>Length of kernel</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1350 <varlistentry><term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1351 -c <replaceable>"params"</replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1352 <listitem><para>Parameters passed to kernel</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1353 <varlistentry><term>-r <replaceable>&lt;addr></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1354 <listitem><para>'initrd' ramdisk location</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1355 <varlistentry><term>-s <replaceable>&lt;len></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1356 <listitem><para>Length of initrd ramdisk</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1357 </variablelist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1358
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1359 <para>The parameters for kernel image base and size are automatically
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1360 set after a load operation. So one way of starting the kernel would
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1361 be:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1362
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1363 <screen>RedBoot&gt; <userinput>load -r -b 0x100000 zImage</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1364 Raw file loaded 0x00100000-0x001a3d6c
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1365 RedBoot&gt; exec -c "console=ttyAC0,38400"
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1366 Using base address 0x00100000 and length 0x000a3d6c
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1367 Uncompressing Linux.....
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1368 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1369
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1370 An image could also be put in flash and started directly:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1371
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1372 <screen>RedBoot&gt; <userinput>exec -b 0x60040000 -l 0xc0000 -c "console=ttyAC0,38400"</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1373 Uncompressing Linux.....
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1374 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1375
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1376 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1377
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1378 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1379 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1380 <title>Memory Maps </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1381 <para>The MMU page tables are located at 0x4000. <note><title>NOTE
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1382 </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1383 <para>The virtual memory maps in this section use a C and B column to indicate
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1384 whether or not the region is cached (C) or buffered (B).</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1385 </note><programlisting>Physical Address Range Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1386 ----------------------- ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1387 0x00000000 - 0x01ffffff Flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1388 0x10000000 - 0x100fffff Ethernet
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1389 0x30000000 - 0x300fffff Board registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1390 0x40000000 - 0x4fffffff PCMCIA Slot (0)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1391 0x50000000 - 0x5fffffff Compact Flash Slot (1)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1392 0x80000000 - 0x800037ff I/O registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1393 0xb0060000 - 0xb00fffff On-chip SRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1394 0xf0000000 - 0xfd3fffff SDRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1395
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1396 Virtual Address Range C B Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1397 ----------------------- - - ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1398 0x00000000 - 0x01f7ffff Y Y SDRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1399 0x01f80000 - 0x01ffffff Y Y SDRAM (used for LCD frame buffer)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1400 0x10000000 - 0x100fffff N N Ethernet
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1401 0x30000000 - 0x300fffff N N Board registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1402 0x40000000 - 0x4fffffff N N PCMCIA Slot (0)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1403 0x50000000 - 0x5fffffff N N Compact Flash Slot (1)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1404 0x60000000 - 0x61ffffff N N Flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1405 0x80000000 - 0x800037ff N N I/O registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1406 0xf0000000 - 0xffffffff N N SDRAM (uncached)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1407
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1408 </programlisting></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1409
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1410 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1411 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1412 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1413
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1414 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1415 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1416 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1417 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1418 export TARGET=aaed
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1419 export ARCH_DIR=arm
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1420 export PLATFORM_DIR=arm9/aaed2000
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1421 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1422 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1423
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1424 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1425 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1426
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1427 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1428 </sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1429
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1430
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1431
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1432 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1433 <sect1 id="ebsa285">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1434 <title>ARM/StrongARM(SA110) Intel EBSA 285</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1435 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1436 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1437 <para><indexterm><primary>Intel StrongArm EBSA 285</primary><secondary>installing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1438 and testing</secondary></indexterm><indexterm><primary>installing and testing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1439 </primary><secondary>Intel StrongArm EBSA 285</secondary></indexterm>RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1440 uses the single EBSA-285 serial port. The default serial port settings are
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1441 38400,8,N,1. If the EBSA-285 is used as a host on a PCI backplane, ethernet
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1442 is supported using an Intel PRO/100+ ethernet adapter. Management of
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1443 onboard flash is also supported.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1444
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1445 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1446
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1447 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1448 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1449 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1450 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1451 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1452 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1453 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1454 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1455 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1456 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1457 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1458 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1459 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1460 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1461 <entry>RedBoot running from the board's flash boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1462 sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1463 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1464 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1465 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1466 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1467 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1468 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1469 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1470 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1471 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1472 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1473 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1474 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1475 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1476
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1477 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1478 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1479 <title>Initial Installation Method </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1480 <para>A linux application is used to program the flash over the PCI bus. Sources
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1481 and build instructions for this utility are located in the RedBoot sources
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1482 in: <filename class="directory">packages/hal/arm/ebsa285/current/support/linux/safl_util</filename>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1483 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1484 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1485 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1486 <title>Communication Channels </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1487 <para>Serial, Intel PRO 10/100+ 82559 PCI ethernet card.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1488 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1489 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1490 <title>Special RedBoot Commands </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1491 <para>None.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1492 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1493 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1494 <title>Memory Maps </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1495 <para>Physical and virtual mapping are mapped one to one on the EBSA-285 using
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1496 a first level page table located at address 0x4000. No second level tables
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1497 are used. <note><title>NOTE </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1498 <para>The virtual memory maps in this section use a C and B column to indicate
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1499 whether or not the region is cached (C) or buffered (B).</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1500 </note><programlisting>Address Range C B Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1501 ----------------------- - - ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1502 0x00000000 - 0x01ffffff Y Y SDRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1503 0x40000000 - 0x400fffff N N 21285 Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1504 0x41000000 - 0x413fffff Y N flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1505 0x42000000 - 0x420fffff N N 21285 CSR Space
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1506 0x50000000 - 0x50ffffff Y Y Cache Clean
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1507 0x78000000 - 0x78ffffff N N Outbound Write Flush
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1508 0x79000000 - 0x7c0fffff N N PCI IACK/Config/IO
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1509 0x80000000 - 0xffffffff N Y PCI Memory </programlisting></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1510 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1511 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1512 <title>Platform Resource Usage </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1513 <para>Timer3 is used as a polled timer to provide timeout support for networking
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1514 and XModem file transfers.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1515 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1516 <!--
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1517 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1518 <title>Building eCos Test Cases to run with old RedBoots</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1519 <para>If using older versions of RedBoot, the default configuration for
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1520 EBSA-285 will send diagnostic output to the serial line only, not over an ethernet
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1521 connection. To allow eCos programs to use RedBoot to channel diagnostic output to
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1522 GDB whether connected by net or serial, enable the configuration option <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1523 CYGSEM_HAL_VIRTUAL_VECTOR_DIAG
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1524 "Do diagnostic IO via virtual vector table"</programlisting> located here
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1525 in the common HAL configuration tree: <programlisting>"eCos HAL"
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1526 "ROM monitor support"
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1527 "Enable use of virtual vector calling interface"
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1528 "Do diagnostic IO via virtual vector table"</programlisting>Other
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1529 than that, no special configuration is required to use RedBoot. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1530 <para>If you have been using built-in stubs to acquire support for thread-aware
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1531 debugging, you can still do that, but you must only use the serial device
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1532 for GDB connection and you must not enable the option mentioned above. However,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1533 it is no longer necessary to do that to get thread-awareness; RedBoot is thread
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1534 aware.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1535 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1536 -->
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1537 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1538 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1539
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1540 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1541 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1542 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1543 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1544 export TARGET=ebsa285
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1545 export ARCH_DIR=arm
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1546 export PLATFORM_DIR=ebsa285
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1547 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1548 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1549
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1550 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1551 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1552
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1553 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1554 </sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1555
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1556 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1557 <sect1 id="brutus">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1558 <title>ARM/StrongARM(SA1100) Intel Brutus</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1559 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1560 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1561 <para><indexterm><primary>Intel-SA1100 (Brutus)</primary><secondary>installing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1562 and testing</secondary></indexterm><indexterm><primary>installing and testing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1563 </primary><secondary>Intel SA1100 (Brutus)</secondary></indexterm>RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1564 supports both board serial ports on the Brutus board. The default serial port
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1565 settings are 38400,8,N,1. flash management is not currently supported. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1566
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1567 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1568
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1569 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1570 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1571 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1572 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1573 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1574 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1575 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1576 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1577 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1578 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1579 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1580 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1581 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1582 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1583 <entry>RedBoot running from the board's flash boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1584 sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1585 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1586 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1587 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1588 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1589 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1590 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1591 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1592 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1593 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1594 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1595 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1596 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1597 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1598
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1599 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1600 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1601 <title>Initial Installation Method </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1602 <para>Device programmer is used to program socketed flash parts.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1603 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1604 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1605 <title>Special RedBoot Commands </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1606 <para>None.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1607 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1608 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1609 <title>Memory Maps </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1610 <para>The first level page table is located at physical address 0xc0004000.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1611 No second level tables are used.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1612
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1613 <note><title>NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1614 <para>The virtual memory maps in this section use a C and B column to indicate
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1615 whether or not the region is cached (C) or buffered (B).</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1616
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1617 </note><programlisting>Physical Address Range Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1618 ----------------------- ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1619 0x00000000 - 0x000fffff Boot ROM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1620 0x08000000 - 0x083fffff Application flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1621 0x10000000 - 0x100fffff SRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1622 0x18000000 - 0x180fffff Chip Select 3
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1623 0x20000000 - 0x3fffffff PCMCIA
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1624 0x80000000 - 0xbfffffff SA-1100 Internal Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1625 0xc0000000 - 0xc7ffffff DRAM Bank 0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1626 0xc8000000 - 0xcfffffff DRAM Bank 1
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1627 0xd0000000 - 0xd7ffffff DRAM Bank 2
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1628 0xd8000000 - 0xdfffffff DRAM Bank 3
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1629 0xe0000000 - 0xe7ffffff Cache Clean
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1630
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1631
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1632 Virtual Address Range C B Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1633 ----------------------- - - ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1634 0x00000000 - 0x003fffff Y Y DRAM Bank 0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1635 0x00400000 - 0x007fffff Y Y DRAM Bank 1
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1636 0x00800000 - 0x00bfffff Y Y DRAM Bank 2
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1637 0x00c00000 - 0x00ffffff Y Y DRAM Bank 3
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1638 0x08000000 - 0x083fffff Y Y Application flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1639 0x10000000 - 0x100fffff Y N SRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1640 0x20000000 - 0x3fffffff N N PCMCIA
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1641 0x40000000 - 0x400fffff Y Y Boot ROM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1642 0x80000000 - 0xbfffffff N N SA-1100 Internal Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1643 0xe0000000 - 0xe7ffffff Y Y Cache Clean</programlisting></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1644 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1645 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1646 <title>Platform Resource Usage </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1647 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1648 The SA11x0 OS timer is used as a polled timer to provide timeout
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1649 support for XModem file transfers.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1650 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1651 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1652 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1653
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1654 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1655 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1656 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1657 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1658 export TARGET=brutus
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1659 export ARCH_DIR=arm
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1660 export PLATFORM_DIR=sa11x0/brutus
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1661 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1662 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1663
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1664 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1665 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1666
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1667 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1668 </sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1669
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1670 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1671 <sect1 id="sa1100mm">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1672 <title>ARM/StrongARM(SA1100) Intel SA1100 Multimedia Board </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1673 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1674 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1675 <para><indexterm><primary>Intel SA1100 Multimedia Board</primary><secondary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1676 installing and testing</secondary></indexterm><indexterm><primary>installing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1677 and testing</primary><secondary>Intel SA1100 Multimedia Board</secondary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1678 </indexterm>RedBoot supports both board serial ports. The default serial port
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1679 settings are 38400,8,N,1. flash management is also supported.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1680
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1681 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1682
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1683 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1684 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1685 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1686 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1687 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1688 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1689 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1690 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1691 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1692 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1693 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1694 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1695 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1696 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1697 <entry>RedBoot running from the board's flash boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1698 sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1699 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1700 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1701 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1702 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1703 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1704 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1705 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1706 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1707 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1708 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1709 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1710 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1711 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1712 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1713
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1714 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1715 <title>Initial Installation Method </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1716 <para>A device programmer is used to program socketed flash parts.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1717 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1718 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1719 <title>Special RedBoot Commands </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1720 <para>None.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1721 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1722 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1723 <title>Memory Maps </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1724 <para>The first level page table is located at physical address 0xc0004000.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1725 No second level tables are used.<note><title>NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1726 <para>The virtual memory maps in this section use a C and B column to indicate
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1727 whether or not the region is cached (C) or buffered (B).</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1728 </note><programlisting>Physical Address Range Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1729 ----------------------- ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1730 0x00000000 - 0x000fffff Boot flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1731 0x08000000 - 0x083fffff Application flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1732 0x10000000 - 0x107fffff SA-1101 Board Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1733 0x18000000 - 0x180fffff Ct8020 DSP
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1734 0x18400000 - 0x184fffff XBusReg
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1735 0x18800000 - 0x188fffff SysRegA
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1736 0x18c00000 - 0x18cfffff SysRegB
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1737 0x19000000 - 0x193fffff Spare CPLD A
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1738 0x19400000 - 0x197fffff Spare CPLD B
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1739 0x20000000 - 0x3fffffff PCMCIA
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1740 0x80000000 - 0xbfffffff SA1100 Internal Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1741 0xc0000000 - 0xc07fffff DRAM Bank 0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1742 0xe0000000 - 0xe7ffffff Cache Clean
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1743 Virtual Address Range C B Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1744
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1745
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1746 ----------------------- - - ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1747 0x00000000 - 0x007fffff Y Y DRAM Bank 0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1748 0x08000000 - 0x083fffff Y Y Application flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1749 0x10000000 - 0x100fffff N N SA-1101 Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1750 0x18000000 - 0x180fffff N N Ct8020 DSP
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1751 0x18400000 - 0x184fffff N N XBusReg
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1752 0x18800000 - 0x188fffff N N SysRegA
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1753 0x18c00000 - 0x18cfffff N N SysRegB
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1754 0x19000000 - 0x193fffff N N Spare CPLD A
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1755 0x19400000 - 0x197fffff N N Spare CPLD B
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1756 0x20000000 - 0x3fffffff N N PCMCIA
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1757 0x50000000 - 0x500fffff Y Y Boot flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1758 0x80000000 - 0xbfffffff N N SA1100 Internal Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1759 0xc0000000 - 0xc07fffff N Y DRAM Bank 0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1760 0xe0000000 - 0xe7ffffff Y Y Cache Clean</programlisting></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1761 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1762 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1763 <title>Platform Resource Usage </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1764 <para> The SA11x0 OS timer is used as a polled timer to provide timeout support
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1765 for XModem file transfers.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1766 </sect2><sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1767
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1768 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1769
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1770 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1771 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1772 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1773 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1774 export TARGET=sa1100mm
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1775 export ARCH_DIR=arm
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1776 export PLATFORM_DIR=sa11x0/sa1100mm
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1777 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1778 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1779
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1780 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1781 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1782
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1783 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1784 </sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1785
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1786
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1787
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1788 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1789 <sect1 id="assabet">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1790 <title>ARM/StrongARM(SA1110) Intel SA1110 (Assabet) </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1791 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1792 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1793 <para><indexterm><primary>Intel SA1110 (Assabet)</primary><secondary>installing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1794 and testing</secondary></indexterm><indexterm><primary>installing and testing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1795 </primary><secondary>Intel SA1110 (Assabet)</secondary></indexterm>RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1796 supports the board serial port and the compact flash ethernet port. The default
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1797 serial port settings are 38400,8,N,1. RedBoot also supports flash management
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1798 on the Assabet. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1799
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1800 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1801
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1802 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1803 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1804 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1805 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1806 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1807 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1808 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1809 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1810 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1811 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1812 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1813 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1814 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1815 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1816 <entry>RedBoot running from the board's flash boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1817 sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1818 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1819 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1820 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1821 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1822 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1823 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1824 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1825 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1826 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1827 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1828 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1829 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1830 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1831 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1832 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1833 <title>Initial Installation Method</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1834 <para>A Windows or Linux utility is used to program flash over parallel port
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1835 driven JTAG interface. See board documentation for details on in situ flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1836 programming. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1837 <para>The flash parts are also socketed and may be programmed in a suitable
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1838 device programmer.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1839 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1840 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1841 <title>Special RedBoot Commands</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1842 <para>None.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1843 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1844 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1845 <title>Memory Maps</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1846 <para>The first level page table is located at physical address 0xc0004000.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1847 No second level tables are used.<note><title>NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1848 <para>The virtual memory maps in this section use a C and B column to indicate
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1849 whether or not the region is cached (C) or buffered (B).</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1850 </note><programlisting>Physical Address Range Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1851 ----------------------- ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1852 0x00000000 - 0x07ffffff flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1853 0x08000000 - 0x0fffffff SA-1111 Board flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1854 0x10000000 - 0x17ffffff Board Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1855 0x18000000 - 0x1fffffff Ethernet
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1856 0x20000000 - 0x2fffffff SA-1111 Board PCMCIA
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1857 0x30000000 - 0x3fffffff Compact Flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1858 0x40000000 - 0x47ffffff SA-1111 Board
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1859 0x48000000 - 0x4bffffff GFX
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1860 0x80000000 - 0xbfffffff SA-1110 Internal Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1861 0xc0000000 - 0xc7ffffff DRAM Bank 0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1862 0xc8000000 - 0xcfffffff DRAM Bank 1
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1863 0xd0000000 - 0xd7ffffff DRAM Bank 2
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1864 0xd8000000 - 0xdfffffff DRAM Bank 3
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1865 0xe0000000 - 0xe7ffffff Cache Clean
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1866
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1867
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1868 Virtual Address Range C B Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1869 ----------------------- - - ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1870 0x00000000 - 0x01ffffff Y Y DRAM Bank 0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1871 0x08000000 - 0x0fffffff Y Y SA-1111 Board flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1872 0x10000000 - 0x17ffffff N N Board Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1873 0x18000000 - 0x1fffffff N N Ethernet
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1874 0x20000000 - 0x2fffffff N N SA-1111 Board PCMCIA
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1875 0x30000000 - 0x3fffffff N N Compact Flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1876 0x40000000 - 0x47ffffff N N SA-1111 Board
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1877 0x48000000 - 0x4bffffff N N GFX
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1878 0x50000000 - 0x57ffffff Y Y flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1879 0x80000000 - 0xbfffffff N N SA-1110 Internal Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1880 0xc0000000 - 0xc1ffffff N Y DRAM Bank 0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1881 0xe0000000 - 0xe7ffffff Y Y Cache Clean
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1882 </programlisting></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1883 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1884 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1885 <title>Platform Resource Usage </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1886 <para>The SA11x0 OS timer is used as a polled timer to provide timeout support
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1887 for network and XModem file transfers.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1888 </sect2><sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1889 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1890
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1891 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1892 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1893 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1894 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1895 export TARGET=assabet
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1896 export ARCH_DIR=arm
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1897 export PLATFORM_DIR=sa11x0/assabet
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1898 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1899 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1900
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1901 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1902 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1903
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1904 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1905 </sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1906
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1907 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1908 <sect1 id="nano">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1909 <title>ARM/StrongARM(SA11X0) Bright Star Engineering commEngine and nanoEngine</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1910 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1911 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1912 <para><indexterm><primary>commEngine</primary><secondary>installing and testing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1913 </secondary></indexterm><indexterm><primary>nanoEngine</primary><secondary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1914 installing and testing</secondary></indexterm><indexterm><primary>installing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1915 and testing</primary><secondary>commEngine</secondary></indexterm><indexterm>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1916 <primary>installing and testing</primary><secondary>nanoEngine</secondary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1917 </indexterm>RedBoot supports a serial port and the built in ethernet port
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1918 for communication and downloads. The default serial port settings are 38400,8,N,1.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1919 RedBoot runs from and supports flash management for the system flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1920 region.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1921
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1922 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1923
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1924 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1925 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1926 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1927 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1928 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1929 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1930 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1931 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1932 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1933 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1934 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1935 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1936 <entry>POST</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1937 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1938 <entry>RedBoot running from the first free flash block
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1939 at 0x40000.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1940 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1941 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1942 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1943 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1944 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1945 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1946 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1947 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1948 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1949 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1950 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1951 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1952 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1953
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1954 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1955 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1956 <title>Initial Installation</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1957 <para>Unlike other targets, the nanoEngine comes equipped with boot firmware
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1958 which you cannot modify. See chapter 5, "nanoEngine Firmware" of the <citetitle>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1959 nanoEngine Hardware Reference Manual</citetitle> (we refer to "July 17, 2000
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1960 Rev 0.6") from Bright Star Engineering. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1961 <para>Because of this, eCos, and therefore Redboot, only supports a
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1962 special configuration of the ROM mode, starting at offset 0x40000 in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1963 the flash.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1964 <para>Briefly, the POST-configuration RedBoot image lives in flash following the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1965 BSE firmware. The BSE firmware is configured, using its standard <command>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1966 bootcmd</command> command, to run RedBoot at startup.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1967 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1968 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1969 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1970 <title>Download Instructions</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1971 <para>You can perform the initial load of the POST-configuration RedBoot image into
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1972 flash using the BSE firmware's <command>load</command> command.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1973 This will load a binary file, using TFTP, and program it into flash in one
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1974 operation. Because no memory management is used in the BSE firmware, flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1975 is mapped from address zero upwards, so the address for the RedBoot POST image
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1976 is 0x40000. You must use the binary version of RedBoot for this,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1977 <filename>redboot-post.bin</filename>.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1978
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1979 <para>This assumes you have set up the other BSE firmware config
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1980 parameters such that it can communicate over your network to your TFTP
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1981 server.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1982 <screen>><userinput>load redboot-post.bin 40000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1983 loading ... erasing blk at 00040000
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1984 erasing blk at 00050000
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1985 94168 bytes loaded cksum 00008579
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1986 done
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1987 >
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1988 > <userinput>set bootcmd "go 40000"</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1989 > <userinput>get</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1990 myip = 10.16.19.198
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1991 netmask = 255.255.255.0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1992 eth = 0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1993 gateway = 10.16.19.66
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1994 serverip = 10.16.19.66
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1995 bootcmd = go 40000
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1996 ></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1997
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1998 <note><title>NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
1999 <para>the BSE firmware runs its serial IO at 9600 Baud; RedBoot runs instead
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2000 at 38400 Baud. You must select the right baud rate in your terminal program
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2001 to be able to set up the BSE firmware.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2002 </note>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2003
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2004 After a reset, the BSE firmware will print
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2005
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2006 <screen>Boot: BSE 2000 Sep 12 2000 14:00:30
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2007 autoboot: "go 40000" [hit ESC to abort]</screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2008
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2009 and then RedBoot starts, switching to 38400 Baud.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2010
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2011 <para>Once you have installed a bootable RedBoot in the system in this
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2012 manner, we advise re-installing using the generic method described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2013 <xref linkend="updating-redboot"> in order that the Flash Image System
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2014 contains an appropriate description of the flash entries.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2015 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2016 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2017 <title>Cohabiting with POST in Flash</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2018 <para>The configuration file named <filename>redboot_POST.ecm</filename>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2019 configures RedBoot to build for execution at address 0x50040000 (or, during
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2020 bootup, 0x00040000). This is to allow power-on self-test (POST) code or immutable
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2021 firmware to live in the lower addresses of the flash and to run before RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2022 gets control. The assumption is that RedBoot will be entered at its base address
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2023 in physical memory, that is 0x00040000.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2024
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2025 <para>Alternatively, for testing, you can call it in an already running system
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2026 by using <userinput>go 0x50040040</userinput> at another RedBoot prompt, or
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2027 a branch to that address. The address is where the reset vector
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2028 points. It is reported by RedBoot's <command>load</command> command
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2029 and listed
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2030 by the <command>fis list</command> command, amongst other
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2031 places.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2032
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2033 <para>Using the POST configuration enables a normal config option which causes
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2034 linking and initialization against memory layout files called "...post..."
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2035 rather than "...rom..." or "...ram..." in the <filename class="directory">include/pkgconf
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2036 </filename> directory. Specifically:<literallayout><filename>include/pkgconf/mlt_arm_sa11x0_nano_post.h</filename>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2037 <filename>include/pkgconf/mlt_arm_sa11x0_nano_post.ldi</filename>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2038 <filename>include/pkgconf/mlt_arm_sa11x0_nano_post.mlt</filename></literallayout>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2039
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2040 It is these you should edit if you wish to move the execution address
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2041 from 0x50040000 in the POST configuration. Startup mode naturally
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2042 remains ROM in this configuration.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2043
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2044 <para>Because the nanoEngine contains immutable boot firmware at the start
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2045 of flash, RedBoot for this target is configured to reserve that area in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2046 Flash Image System, and to create by default an entry for the POST
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2047 mode RedBoot.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2048 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2049 RedBoot> <userinput>fis list</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2050 Name FLASH addr Mem addr Length Entry point
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2051 (reserved) 0x50000000 0x50000000 0x00040000 0x00000000
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2052 RedBoot[post] 0x50040000 0x00100000 0x00020000 0x50040040
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2053 RedBoot config 0x503E0000 0x503E0000 0x00010000 0x00000000
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2054 FIS directory 0x503F0000 0x503F0000 0x00010000 0x00000000
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2055 RedBoot>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2056 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2057 The entry "(reserved)" ensures that the FIS cannot attempt
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2058 to overwrite the BSE firmware, thus ensuring that the board remains bootable
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2059 and recoverable even after installing a broken RedBoot image.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2060 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2061 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2062 <title>Special RedBoot Commands</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2063 <para>The nanoEngine/commEngine has one or two Intel i82559 Ethernet controllers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2064 installed, but these have no associated serial EEPROM in which to record their
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2065 Ethernet Station Address (ESA, or MAC address). The BSE firmware records an
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2066 ESA for the device it uses, but this information is not available to RedBoot;
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2067 we cannot share it.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2068 <para>To keep the ESAs for the two ethernet interfaces, two new items of RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2069 configuration data are introduced. You can list them with the RedBoot command <command>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2070 fconfig -l</command> thus:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2071 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2072 RedBoot> <userinput>fconfig -l</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2073 Run script at boot: false
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2074 Use BOOTP for network configuration: false
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2075 Local IP address: 10.16.19.91
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2076 Default server IP address: 10.16.19.66
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2077 Network hardware address [MAC] for eth0: 0x00:0xB5:0xE0:0xB5:0xE0:0x99
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2078 Network hardware address [MAC] for eth1: 0x00:0xB5:0xE0:0xB5:0xE0:0x9A
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2079 GDB connection port: 9000
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2080 Network debug at boot time: false
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2081 RedBoot></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2082
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2083 You should set them before running RedBoot or eCos applications with
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2084 the board connected to a network. The <command>fconfig </command>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2085 command can be used as for any configuration data item; the entire ESA
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2086 is entered in one line.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2087 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2088 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2089 <title>Memory Maps</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2090 <para>The first level page table is located at physical address 0xc0004000.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2091 No second level tables are used. <note><title>NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2092 <para>The virtual memory maps in this section use a C and B column to indicate
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2093 whether or not the region is cached (C) or buffered (B).</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2094 </note><programlisting>Physical Address Range Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2095 ----------------------- ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2096 0x00000000 - 0x003fffff 4Mb FLASH (nCS0)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2097 0x18000000 - 0x18ffffff Internal PCI bus - 2 x i82559 ethernet
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2098 0x40000000 - 0x4fffffff External IO or PCI bus
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2099 0x80000000 - 0xbfffffff SA-1110 Internal Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2100 0xc0000000 - 0xc7ffffff DRAM Bank 0 - 32Mb SDRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2101 0xc8000000 - 0xcfffffff DRAM Bank 1 - empty
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2102 0xe0000000 - 0xe7ffffff Cache Clean
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2103
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2104 Virtual Address Range C B Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2105 ----------------------- - - ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2106 0x00000000 - 0x001fffff Y Y DRAM - 8Mb to 32Mb
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2107 0x18000000 - 0x180fffff N N Internal PCI bus - 2 x i82559 ethernet
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2108 0x40000000 - 0x4fffffff N N External IO or PCI bus
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2109 0x50000000 - 0x51ffffff Y Y Up to 32Mb FLASH (nCS0)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2110 0x80000000 - 0xbfffffff N N SA-1110 Internal Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2111 0xc0000000 - 0xc0ffffff N Y DRAM Bank 0: 8 or 16Mb
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2112 0xc8000000 - 0xc8ffffff N Y DRAM Bank 1: 8 or 16Mb or absent
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2113 0xe0000000 - 0xe7ffffff Y Y Cache Clean</programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2114 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2115
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2116 <para>The ethernet devices use a "PCI window" to communicate with the CPU.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2117 This is 1Mb of SDRAM which is shared with the ethernet devices that are on
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2118 the PCI bus. It is neither cached nor buffered, to ensure that CPU and PCI
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2119 accesses see correct data in the correct order. By default it is configured
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2120 to be megabyte number 30, at addresses 0x01e00000-0x01efffff. This can be
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2121 modified, and indeed must be, if less than 32Mb of SDRAM is installed, via
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2122 the memory layout tool, or by moving the section <computeroutput>__pci_window
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2123 </computeroutput> referred to by symbols <computeroutput>CYGMEM_SECTION_pci_window*
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2124 </computeroutput> in the linker script. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2125 <para>Though the nanoEngine ships with 32Mb of SDRAM all attached to DRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2126 bank 0, the code can cope with any of these combinations also; "2 x " in this
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2127 context means one device in each DRAM Bank. <literallayout>1 x 8Mb = 8Mb 2 x 8Mb = 16Mb
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2128 1 x 16Mb = 16Mb 2 x 16Mb = 32Mb</literallayout>All are programmed the same
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2129 in the memory controller. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2130 <para>Startup code detects which is fitted and programs the memory map accordingly.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2131 If the device(s) is 8Mb, then there are gaps in the physical memory map, because
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2132 a high order address bit is not connected. The gaps are the higher 2Mb out
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2133 of every 4Mb.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2134
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2135 <para> The SA11x0 OS timer is used as a polled timer to provide timeout
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2136 support within RedBoot.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2137 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2138 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2139 <title>Nano Platform Port</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2140 <para>The nano is in the set of SA11X0-based platforms. It uses the arm architectural
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2141 HAL, the sa11x0 variant HAL, plus the nano platform hal. These are components
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2142 <literallayout>CYGPKG_HAL_ARM hal/arm/arch/
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2143 CYGPKG_HAL_ARM_SA11X0 hal/arm/sa11x0/var
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2144 CYGPKG_HAL_ARM_SA11X0_NANO hal/arm/sa11x0/nano</literallayout> respectively.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2145 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2146 <para>The target name is "nano" which includes all these, plus the ethernet
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2147 driver packages, flash driver, and so on.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2148 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2149 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2150 <title>Ethernet Driver</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2151 <para>The ethernet driver is in two parts: </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2152 <para>A generic ether driver for Intel i8255x series devices, specifically
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2153 the i82559, is <computeroutput>devs/eth/intel/i82559</computeroutput>. Its
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2154 package name is <computeroutput>CYGPKG_DEVS_ETH_INTEL_I82559</computeroutput>.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2155 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2156 <para>The platform-specific ether driver is <computeroutput>devs/eth/arm/nano
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2157 </computeroutput>. Its package is <computeroutput>CYGPKG_DEVS_ETH_ARM_NANO
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2158 </computeroutput>. This tells the generic driver the address in IO memory
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2159 of the chip, for example, and other configuration details. This driver picks
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2160 up the ESA from RedBoot's configuration data - unless configured to use a
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2161 static ESA in the usual manner. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2162 </sect2><sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2163 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2164
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2165 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2166 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2167 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2168 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2169 export TARGET=nano
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2170 export ARCH_DIR=arm
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2171 export PLATFORM_DIR=sa11x0/nano
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2172 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2173 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2174
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2175 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2176 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2177 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2178 </sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2179
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2180 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2181 <sect1 id="ipaq">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2182 <title>ARM/StrongARM(SA11X0) Compaq iPAQ PocketPC</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2183 <indexterm><primary>Compaq iPAQ PocketPC</primary><secondary>installing and
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2184 testing</secondary></indexterm><indexterm><primary>installing and testing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2185 </primary><secondary>Compaq iPAQ PocketPC</secondary></indexterm>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2186 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2187 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2188 <para>RedBoot supports the serial port via cradle or cable, and Compact Flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2189 ethernet cards if fitted for communication and downloads. The LCD touchscreen
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2190 may also be used for the console, although by default RedBoot will switch
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2191 exclusively to one channel once input arrives. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2192 <para>The default serial port settings are 38400,8,N,1. RedBoot runs from
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2193 and supports flash management for the system flash region. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2194
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2195 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2196
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2197 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2198 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2199 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2200 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2201 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2202 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2203 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2204 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2205 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2206 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2207 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2208 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2209 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2210 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2211 <entry>RedBoot running from the board's flash boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2212 sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2213 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2214 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2215 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2216 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2217 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2218 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2219 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2220 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2221 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2222 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2223 <entry>WinCE</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2224 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2225 <entry>RedBoot running from RAM, started from
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2226 <application>OSloader</application>.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2227 <entry>redboot_WinCE.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2228 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2229 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2230 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2231 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2232 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2233
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2234
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2235
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2236 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2237 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2238 <title>Initial Installation</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2239 <para>RedBoot ROM and WinCE mode images are needed by the installation process.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2240 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2241 <sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2242 <title>Installing RedBoot on the iPAQ using Windows/CE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2243 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2244 The Windows/CE environment originally shipped with the iPAQ contains a hidden
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2245 mini-loader, sometimes referred to as the "Parrot" loader. This loader can
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2246 be started by holding down the action button (the joypad) while resetting
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2247 the unit or when powering on. At this point, a blue bird will appear on
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2248 the LCD screen. Also at this point, a simple loader can be accessed over the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2249 serial port at 115200/8N1. Using this loader, the contents of the iPAQ flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2250 memory can be saved to a Compact Flash memory card.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2251 <note><title>NOTE</title><para>We have only tested this operation with a 32Mbyte CF memory card.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2252 Given that the backup will take 16MBytes + 1KByte, something more than a 16MByte
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2253 card will be required.</para></note>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2254 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2255 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2256 Use the "r2c" command to dump Flash contents to the CF memory card. Once this
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2257 completes, RedBoot can be installed with no fear since the Parrot loader can
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2258 be used to restore the Flash contents at a later time.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2259 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2260 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2261 If you expect to completely recover the state of the iPAQ Win/CE environment, then
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2262 HotSync should be run to backup all "RAM" files as well before installing RedBoot.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2263 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2264 <para>The next step in installing RedBoot on the iPAQ actually involves Windows/CE,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2265 which is the native environment on the unit. Using WinCE, you need to
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2266 install an application which will run a RAM based version of RedBoot. Once
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2267 this is installed and running, RedBoot can be used to update the flash with
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2268 a native/ROM version of RedBoot. <itemizedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2269 <listitem><para>Using ActiveSync, copy the file OSloader to your iPAQ. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2270 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2271 <listitem><para>Using ActiveSync, copy the file redboot_WinCE.bin to the iPAQ
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2272 as bootldr in its root directory. Note: this is not the top level folder
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2273 displayed by Windows (Mobile Device), but rather the 'My Pocket PC' folder
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2274 within it.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2275 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2276 <listitem><para>Execute OSloader. If you didn't create a shortcut, then you
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2277 will have to poke around for it using the WinCE file explorer.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2278 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2279 <listitem><para>Choose the <guimenuitem>Tools->BootLdr->Run after loading
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2280 from file</guimenuitem> menu item. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2281 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2282 </itemizedlist>At this point, the RAM based version of RedBoot should be running.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2283 You should be able to return to this point by just executing the last two
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2284 steps of the previous process if necessary.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2285 </sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2286 <sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2287 <title>Installing RedBoot on the iPAQ - using the Compaq boot loader</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2288 <para>This method of installation is no longer supported.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2289 If you have previously installed either the Compaq boot loader or older
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2290 versions of RedBoot, restore the Win/CE environment and proceed as outlined
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2291 above.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2292 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2293 </sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2294 <sect3 id="setting-up-and-testing-redboot">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2295 <title>Setting up and testing RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2296 <para>When RedBoot first comes up, it will want to initialize its LCD touch
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2297 screen parameters. It does this by displaying a keyboard graphic and asks
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2298 you to press certain keys. Using the stylus, press and hold until the prompt
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2299 is withdrawn. When you lift the stylus, RedBoot will continue with the next
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2300 calibration. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2301 <para>Once the LCD touchscreen has been calibrated, RedBoot will start. The
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2302 calibration step can be skipped by pressing the <guibutton>return/abort</guibutton>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2303 button on the unit (right most button with a curved arrow icon). Additionally,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2304 the unit will assume default values if the screen is not touched within about
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2305 15 seconds. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2306 <para>Once RedBoot has started, you should get information similar to this
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2307 on the LCD screen. It will also appear on the serial port at 38400,8,N,1.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2308
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2309 <screen>RedBoot(tm) bootstrap and debug environment [ROM]
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2310 Non-certified release, version UNKNOWN - built 06:17:41, Mar 19 2001
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2311 Platform: Compaq iPAQ Pocket PC (StrongARM 1110)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2312
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2313 Copyright (C) 2000, 2001, Red Hat, Inc.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2314
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2315 RAM: 0x00000000-0x01fc0000, 0x0001f200-0x01f70000 available
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2316 FLASH: 0x50000000 - 0x51000000, 64 blocks of 0x00040000 bytes
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2317 each.</screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2318
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2319 Since the LCD touchscreen is only 30 characters wide, some of this
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2320 data will be off the right hand side of the display. The joypad may be
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2321 used to pan left and right in order to see the full lines. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2322 <para>If you have a Compact Flash ethernet card, RedBoot should find
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2323 it. You'll need to have BOOTP enabled for this unit (see your
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2324 sysadmin for details). If it does, it will print a message like:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2325
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2326 <screen>... Waiting for network card: .Ready!
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2327 Socket Communications Inc: CF+ LPE Revision E 08/04/99
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2328 IP: 192.168.1.34, Default server: 192.168.1.101</screen></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2329 </sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2330
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2331 <sect3 id="ipaq-install-rb-permanently">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2332 <title>Installing RedBoot permanently</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2333 <para>Once you are satisfied with the setup and that RedBoot is operating
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2334 properly in your environment, you can set up your iPAQ unit to have RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2335 be the bootstrap application.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2336
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2337 <caution><title>CAUTION</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2338 <para>This step will destroy your Windows/CE environment.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2339 <para>Before you take this step, it is strongly recommended you save your WinCE FLASH contents
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2340 as outlined above using the "parrot" loader, or
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2341 by using the Compaq OSloader:<itemizedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2342
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2343 <listitem><para>Using OSloader on the iPAQ, select the <guimenuitem>Tools->Flash->Save
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2344 to files...</guimenuitem>. menu item.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2345 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2346
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2347 <listitem><para>Four (4) files, 4MB each in size will be created.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2348 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2349
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2350 <listitem><para>After each file is created, copy the file to your computer,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2351 then delete the file from the iPAQ to make room in the WinCE ramdisk for the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2352 next file.</para></listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2353 </itemizedlist></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2354
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2355 </caution>You will need to download the version of RedBoot designed as the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2356 ROM bootstrap. Then install it permanently using these commands:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2357 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2358 RedBoot> <userinput>lo -r -b 0x100000 redboot_ROM.bin</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2359 RedBoot> <userinput>fi loc -f 0x50000000 -l 0x40000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2360 RedBoot> <userinput>fis init</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2361 RedBoot> <userinput>fi unl -f 0x50040000 -l 0x40000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2362 RedBoot> <userinput>fi cr RedBoot -b 0x100000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2363 RedBoot> <userinput>fi loc -f 0x50040000 -l 0x40000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2364 RedBoot> <userinput>reset</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2365 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2366
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2367 <warning><title>WARNING</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2368 <para>You must type these commands exactly! Failure to do so may render your
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2369 iPAQ totally useless. Once you've done this, RedBoot should come up every
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2370 time you reset.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2371 </warning></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2372 </sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2373
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2374 <sect3>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2375 <title>Restoring Windows/CE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2376 <para>To restore Windows/CE from the backup taken in <xref linkend="ipaq-install-rb-permanently">,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2377 visit <ulink url="http://www.handhelds.org/projects/wincerestoration.html">http://www.handhelds.org/projects/wincerestoration.html</ulink>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2378 for directions.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2379 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2380 </sect3></sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2381
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2382 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2383 <title>Additional commands</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2384 <para>The <command>exec</command> command which allows the loading
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2385 and execution of Linux kernels,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2386 is supported for this board (see <xref linkend="executing-programs">). The <command>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2387 exec</command> parameters used for the iPAQ are:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2388 <variablelist><varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2389 <term>-b <replaceable>&lt;addr></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2390 <listitem><para>Location Linux kernel was loaded to</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2391 <varlistentry><term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2392 -l <replaceable>&lt;len></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2393 <listitem><para>Length of kernel</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2394 <varlistentry><term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2395 -c <replaceable>"params"</replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2396 <listitem><para>Parameters passed to kernel</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2397 <varlistentry><term>-r <replaceable>&lt;addr></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2398 <listitem><para>'initrd' ramdisk location</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2399 <varlistentry><term>-s <replaceable>&lt;len></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2400 <listitem><para>Length of initrd ramdisk</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2401 </variablelist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2402 <para>Linux kernels may be run on the iPAQ using the sources from the anonymous
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2403 CVS repository at the Handhelds project (<ulink url="http://www.handhelds.org/">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2404 http://www.handhelds.org/</ulink>) with
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2405 the <filename>elinux.patch</filename> patch file applied. This file can be
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2406 found in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2407 <filename>misc/</filename> subdirectory of the iPAQ platform HAL in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2408 RedBoot sources, normally
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2409 <filename>hal/arm/sa11x0/ipaq/<replaceable>VERSION</replaceable>/misc/</filename>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2410 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2411 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2412 On the iPAQ (and indeed all SA11x0 platforms), Linux expects to be loaded
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2413 at address 0xC0008000 and the entry point is also at 0xC0008000.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2414 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2415
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2416 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2417 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2418 <title>Memory Maps</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2419 <para>RedBoot sets up the following memory map on the iPAQ: The first level
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2420 page table is located at physical address 0xC0004000. No second level tables
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2421 are used. <note><title>NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2422 <para>The virtual memory maps in this section use a C and B column to indicate
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2423 whether or not the region is cached (C) or buffered (B).</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2424 </note> <programlisting>Physical Address Range Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2425 ----------------------- ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2426 0x00000000 - 0x01ffffff 16Mb to 32Mb FLASH (nCS0) [organized as below]
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2427 0x000000 - 0x0003ffff Parrot Loader
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2428 0x040000 - 0x0007ffff RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2429 0xf80000 - 0x00fbffff Fconfig data
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2430 0xfc0000 - 0x00ffffff FIS directory
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2431 0x30000000 - 0x3fffffff Compact Flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2432 0x48000000 - 0x4bffffff iPAQ internal registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2433 0x80000000 - 0xbfffffff SA-1110 Internal Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2434 0xc0000000 - 0xc1ffffff DRAM Bank 0 - 32Mb SDRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2435 0xe0000000 - 0xe7ffffff Cache Clean
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2436
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2437
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2438 Virtual Address Range C B Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2439 ----------------------- - - ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2440 0x00000000 - 0x01ffffff Y Y DRAM - 32Mb
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2441 0x30000000 - 0x3fffffff N N Compact Flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2442 0x48000000 - 0x4bffffff N N iPAQ internal registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2443 0x50000000 - 0x51ffffff Y Y Up to 32Mb FLASH (nCS0)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2444 0x80000000 - 0xbfffffff N N SA-1110 Internal Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2445 0xc0000000 - 0xc1ffffff N Y DRAM Bank 0: 32Mb
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2446 0xe0000000 - 0xe7ffffff Y Y Cache Clean </programlisting> </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2447 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2448 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2449 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2450
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2451 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2452 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2453 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2454 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2455 export TARGET=ipaq
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2456 export ARCH_DIR=arm
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2457 export PLATFORM_DIR=sa11x0/ipaq
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2458 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2459 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2460
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2461 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2462 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2463
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2464 </sect2></sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2465
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2466 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2467 <sect1 id="cerfcube">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2468 <title>ARM/StrongARM(SA11X0) Intrinsyc CerfCube</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2469 <indexterm><primary>Intrinsyc CerfCube</primary><secondary>installing and
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2470 testing</secondary></indexterm><indexterm><primary>installing and testing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2471 </primary><secondary>Intrinsyc CerfCube</secondary></indexterm>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2472 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2473 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2474 <para>RedBoot supports the serial port and the builtin
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2475 ethernet connection for communication and downloads.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2476 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2477 <para>The default serial port settings are 38400,8,N,1. RedBoot runs from
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2478 and supports flash management for the system flash region. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2479
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2480 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2481
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2482 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2483 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2484 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2485 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2486 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2487 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2488 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2489 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2490 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2491 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2492 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2493 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2494 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2495 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2496 <entry>RedBoot running from the board's flash boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2497 sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2498 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2499 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2500 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2501 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2502 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2503 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2504 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2505 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2506 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2507 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2508 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2509 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2510 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2511
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2512
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2513 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2514 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2515 <title>Initial Installation</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2516 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2517 The original boot loader supplied with the CerfCube can be used to install
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2518 RedBoot. Connect to the device using a serial port at 38400/8N1.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2519 Copy the binary RedBoot ROM mode image to an available TFTP server.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2520 Issue these commands to the Instrinsyc loader:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2521 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2522 <userinput>download tftp:<replaceable>x.x.x.x</replaceable> redboot_ROM.bin 0xc0000000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2523 <userinput>flashloader 0x00000000 0xc0000000 0x20000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2524 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2525 where <replaceable>x.x.x.x</replaceable> is the IP address of the TFTP
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2526 server.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2527 <note>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2528 <title>NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2529 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2530 Other installation methods may be available via the Intrinsyc loader.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2531 Contact Intrinsyc for details.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2532 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2533 </note>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2534 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2535 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2536 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2537 <title>Additional commands</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2538 <para>The <command>exec</command> command which allows the loading
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2539 and execution of Linux kernels,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2540 is supported for this board (see <xref linkend="executing-programs">). The <command>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2541 exec</command> parameters used for the CerfCube are:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2542 <variablelist><varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2543 <term>-b <replaceable>&lt;addr></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2544 <listitem><para>Location Linux kernel was loaded to</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2545 <varlistentry><term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2546 -l <replaceable>&lt;len></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2547 <listitem><para>Length of kernel</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2548 <varlistentry><term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2549 -c <replaceable>"params"</replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2550 <listitem><para>Parameters passed to kernel</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2551 <varlistentry><term>-r <replaceable>&lt;addr></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2552 <listitem><para>'initrd' ramdisk location</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2553 <varlistentry><term>-s <replaceable>&lt;len></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2554 <listitem><para>Length of initrd ramdisk</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2555 </variablelist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2556
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2557 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2558 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2559 <title>Memory Maps</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2560 <para>RedBoot sets up the following memory map on the CerfCube: The first level
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2561 page table is located at physical address 0xC0004000. No second level tables
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2562 are used. <note><title>NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2563 <para>The virtual memory maps in this section use a C and B column to indicate
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2564 whether or not the region is cached (C) or buffered (B).</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2565 </note> <programlisting>Physical Address Range Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2566 ----------------------- ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2567 0x00000000 - 0x01ffffff 16Mb to 32Mb FLASH (nCS0) [organized as below]
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2568 0x000000 - 0x0001ffff RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2569 0x020000 - 0x0003ffff RedBoot [RAM version]
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2570 0xfc0000 - 0x00fdffff Fconfig data
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2571 0xfe0000 - 0x00ffffff FIS directory
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2572 0x0f000000 - 0x0fffffff Onboard ethernet
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2573 0x10000000 - 0x17ffffff CerfCube internal registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2574 0x20000000 - 0x3fffffff PCMCIA / Compact Flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2575 0x80000000 - 0xbfffffff SA-1110 Internal Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2576 0xc0000000 - 0xc1ffffff DRAM Bank 0 - 32Mb SDRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2577 0xe0000000 - 0xe7ffffff Cache Clean
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2578
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2579
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2580 Virtual Address Range C B Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2581 ----------------------- - - ----------------------------------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2582 0x00000000 - 0x01ffffff Y Y DRAM - 32Mb
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2583 0x08000000 - 0x0fffffff N N Onboard ethernet controller
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2584 0x10000000 - 0x17ffffff N N CerfCube internal registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2585 0x20000000 - 0x3fffffff N N PCMCIA / Compact Flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2586 0x50000000 - 0x51ffffff Y Y Up to 32Mb FLASH (nCS0)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2587 0x80000000 - 0xbfffffff N N SA-1110 Internal Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2588 0xc0000000 - 0xc1ffffff N Y DRAM Bank 0: 32Mb
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2589 0xe0000000 - 0xe7ffffff Y Y Cache Clean </programlisting> </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2590 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2591
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2592 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2593 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2594
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2595 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2596 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2597 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2598 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2599 export TARGET=cerf
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2600 export ARCH_DIR=arm
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2601 export PLATFORM_DIR=sa11x0/cerf
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2602 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2603 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2604
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2605 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2606 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2607
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2608 </sect2></sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2609
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2610
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2611 <sect1 id="iq80310">
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2612 <title>ARM/Xscale Cyclone IQ80310</title>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2613 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2614 <title>Overview</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2615 <para><indexterm><primary>Cyclone IQ80310</primary><secondary>installing and
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2616 testing</secondary></indexterm><indexterm><primary>installing and testing
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2617 </primary><secondary>Cyclone IQ80310</secondary></indexterm>RedBoot supports
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2618 both serial ports and the built-in ethernet port for communication and downloads.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2619 The default serial port settings are 115200,8,N,1. RedBoot also supports flash
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2620 management for the onboard 8MB flash.</para>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2621
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2622 <para>The following RedBoot configurations are supported:
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2623
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2624 <informaltable frame="all">
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2625 <tgroup cols="4" colsep="1" rowsep="1" align="left">
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2626 <thead>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2627 <row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2628 <entry>Configuration</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2629 <entry>Mode</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2630 <entry>Description</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2631 <entry>File</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2632 </row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2633 </thead>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2634 <tbody>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2635 <row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2636 <entry>ROM</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2637 <entry>[ROM]</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2638 <entry>RedBoot running from the board's flash boot
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2639 sector.</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2640 <entry>redboot_ROM.ecm</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2641 </row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2642 <row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2643 <entry>RAM</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2644 <entry>[RAM]</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2645 <entry>RedBoot running from RAM with RedBoot in the
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2646 flash boot sector.</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2647 <entry>redboot_RAM.ecm</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2648 </row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2649 <row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2650 <entry>ROMA</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2651 <entry>[ROM]</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2652 <entry>RedBoot running from flash address 0x40000, with
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2653 ARM bootloader in flash boot sector.</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2654 <entry>redboot_ROMA.ecm</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2655 </row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2656 <row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2657 <entry>RAMA</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2658 <entry>[RAM]</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2659 <entry>RedBoot running from RAM with ARM bootloader in
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2660 flash boot sector.</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2661 <entry>redboot_RAMA.ecm</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2662 </row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2663 </tbody>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2664 </tgroup>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2665 </informaltable>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2666 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2667 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2668 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2669 <title>Initial Installation Method</title>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2670
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2671 <para>The board manufacturer provides a DOS application which is
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2672 capable of programming the flash over the PCI bus, and this is
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2673 required for initial installations of RedBoot. Please see the board
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2674 manual for information on using this utility. In general, the process
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2675 involves programming one of the two flash based RedBoot images to
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2676 flash. The ROM mode RedBoot (which runs from the flash boot sector)
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2677 should be programmed to flash address 0x00000000. The ROMA RedBoot
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2678 mode (which is started by the ARM bootloader) should be programmed to
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2679 flash address 0x00004000.
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2680 </para>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2681
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2682 <para> To install RedBoot to run from the flash boot sector, use the manufacturer's
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2683 flash utility to install the ROM mode image at address zero.
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2684 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2685 <para>To install RedBoot to run from address 0x40000 with the ARM bootloader
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2686 in the flash boot sector, use the manufacturer's flash utility to install
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2687 the ROMA mode image at address 0x40000. </para>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2688
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2689 <para>After booting the initial installation of RedBoot, this warning may
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2690 be printed: <screen>flash configuration checksum error or invalid key
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2691 </screen>This is normal, and indicates that the flash must be configured
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2692 for use by RedBoot. Even if the above message is not printed, it may be a
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2693 good idea to reinitialize the flash anyway. Do this with the <command>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2694 fis</command> command: <screen>RedBoot> <userinput>fis init</userinput>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2695 About to initialize [format] flash image system - continue (y/n)? <userinput>y</userinput>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2696 *** Initialize flash Image System
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2697 Warning: device contents not erased, some blocks may not be usable
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2698 ... Unlock from 0x007e0000-0x00800000: .
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2699 ... Erase from 0x007e0000-0x00800000: .
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2700 ... Program from 0xa1fd0000-0xa1fd0400 at 0x007e0000: .
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2701 ... Lock from 0x007e0000-0x00800000: .
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2702 Followed by the fconfig command:
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2703 RedBoot> <userinput>fconfig</userinput>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2704 Run script at boot: <userinput>false</userinput>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2705 Use BOOTP for network configuration: <userinput>false</userinput>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2706 Local IP address: <userinput>192.168.1.153</userinput>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2707 Default server IP address: <userinput>192.168.1.10</userinput>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2708 GDB connection port: <userinput>1000</userinput>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2709 Network debug at boot time: <userinput>false</userinput>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2710 Update RedBoot non-volatile configuration - continue (y/n)? <userinput>y</userinput>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2711 ... Unlock from 0x007c0000-0x007e0000: .
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2712 ... Erase from 0x007c0000-0x007e0000: .
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2713 ... Program from 0xa0013018-0xa0013418 at 0x007c0000: .
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2714 ... Lock from 0x007c0000-0x007e0000: .</screen></para>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2715
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2716 <note><para>When later updating RedBoot in situ, it is important to
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2717 use a matching ROM and RAM mode pair of images. So use either RAM/ROM
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2718 or RAMA/ROMA images. Do not mix them.</para></note>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2719
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2720 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2721 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2722 <title>Error codes</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2723 <para>RedBoot uses the two digit LED display to indicate errors during board
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2724 initialization. Possible error codes are: <literallayout>88 - Unknown Error
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2725 55 - I2C Error
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2726 FF - SDRAM Error
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2727 01 - No Error</literallayout></para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2728 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2729 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2730 <title>Using RedBoot with ARM Bootloader </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2731 <para>RedBoot can coexist with ARM tools in flash on the IQ80310 board. In
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2732 this configuration, the ARM bootloader will occupy the flash boot sector while
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2733 RedBoot is located at flash address 0x40000. The sixteen position rotary switch
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2734 is used to tell the ARM bootloader to jump to the RedBoot image located at
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2735 address 0x40000. RedBoot is selected by switch position 0 or 1. Other switch
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2736 positions are used by the ARM firmware and RedBoot will not be started. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2737 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2738 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2739 <title>Special RedBoot Commands </title>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2740 <para>A special RedBoot command, <command>diag</command>, is used to
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2741 access a set of hardware diagnostics provided by the board
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2742 manufacturer. To access the diagnostic menu, enter diag at the RedBoot prompt:
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2743 <screen>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2744 RedBoot> <userinput>diag</userinput>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2745 Entering Hardware Diagnostics - Disabling Data Cache!
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2746 1 - Memory Tests
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2747 2 - Repeating Memory Tests
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2748 3 - 16C552 DUART Serial Port Tests
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2749 4 - Rotary Switch S1 Test for positions 0-3
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2750 5 - seven Segment LED Tests
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2751 6 - Backplane Detection Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2752 7 - Battery Status Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2753 8 - External Timer Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2754 9 - i82559 Ethernet Configuration
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2755 10 - i82559 Ethernet Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2756 11 - Secondary PCI Bus Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2757 12 - Primary PCI Bus Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2758 13 - i960Rx/303 PCI Interrupt Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2759 14 - Internal Timer Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2760 15 - GPIO Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2761 0 - quit Enter the menu item number (0 to quit):
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2762 </screen>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2763 Tests for various hardware subsystems are provided, and some
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2764 tests require special hardware in order to execute normally. The Ethernet
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2765 Configuration item may be used to set the board ethernet address.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2766 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2767 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2768 <title>IQ80310 Hardware Tests</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2769 <para><screen>1 - Memory Tests
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2770 2 - Repeating Memory Tests
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2771 3 - 16C552 DUART Serial Port Tests
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2772 4 - Rotary Switch S1 Test for positions 0-3
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2773 5 - 7 Segment LED Tests
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2774 6 - Backplane Detection Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2775 7 - Battery Status Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2776 8 - External Timer Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2777 9 - i82559 Ethernet Configuration
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2778 10 - i82559 Ethernet Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2779 11 - i960Rx/303 PCI Interrupt Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2780 12 - Internal Timer Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2781 13 - Secondary PCI Bus Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2782 14 - Primary PCI Bus Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2783 15 - Battery Backup SDRAM Memory Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2784 16 - GPIO Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2785 17 - Repeat-On-Fail Memory Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2786 18 - Coyonosa Cache Loop (No return)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2787 19 - Show Software and Hardware Revision
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2788 0 - quit
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2789 Enter the menu item number (0 to quit): </screen></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2790 <para>Tests for various hardware subsystems are provided, and some tests require
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2791 special hardware in order to execute normally. The Ethernet Configuration
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2792 item may be used to set the board ethernet address.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2793 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2794 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2795 <title>Rebuilding RedBoot </title>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2796
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2797 <para>These shell variables provide the platform-specific information
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2798 needed for building RedBoot according to the procedure described in
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2799 <xref linkend="Rebuilding-Redboot">:
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2800 <programlisting>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2801 export TARGET=iq80310
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2802 export ARCH_DIR=arm
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2803 export PLATFORM_DIR=iq80310
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2804 </programlisting>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2805 </para>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2806
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2807 <para>The names of configuration files are listed above with the
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2808 description of the associated modes.</para>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2809
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2810 </sect2>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2811
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2812 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2813 <title>Interrupts</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2814 <para>RedBoot uses an interrupt vector table which is located at address 0xA000A004.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2815 Entries in this table are pointers to functions with this protoype:: <programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2816 int irq_handler( unsigned vector, unsigned data )</programlisting>On an IQ80310
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2817 board, the vector argument is one of 49 interrupts defined in <computeroutput>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2818 hal/arm/iq80310/current/include/hal_platform_ints.h:</computeroutput>: <programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2819 // *** 80200 CPU ***
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2820 #define CYGNUM_HAL_INTERRUPT_reserved0 0
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2821 #define CYGNUM_HAL_INTERRUPT_PMU_PMN0_OVFL 1 // See Ch.12 - Performance Mon.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2822 #define CYGNUM_HAL_INTERRUPT_PMU_PMN1_OVFL 2 // PMU counter 0/1 overflow
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2823 #define CYGNUM_HAL_INTERRUPT_PMU_CCNT_OVFL 3 // PMU clock overflow
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2824 #define CYGNUM_HAL_INTERRUPT_BCU_INTERRUPT 4 // See Ch.11 - Bus Control Unit
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2825 #define CYGNUM_HAL_INTERRUPT_NIRQ 5 // external IRQ
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2826 #define CYGNUM_HAL_INTERRUPT_NFIQ 6 // external FIQ
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2827
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2828
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2829 // *** XINT6 interrupts ***
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2830 #define CYGNUM_HAL_INTERRUPT_DMA_0 7
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2831 #define CYGNUM_HAL_INTERRUPT_DMA_1 8
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2832 #define CYGNUM_HAL_INTERRUPT_DMA_2 9
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2833 #define CYGNUM_HAL_INTERRUPT_GTSC 10 // Global Time Stamp Counter
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2834 #define CYGNUM_HAL_INTERRUPT_PEC 11 // Performance Event Counter
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2835 #define CYGNUM_HAL_INTERRUPT_AAIP 12 // application accelerator unit
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2836
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2837
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2838 // *** XINT7 interrupts ***
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2839 // I2C interrupts
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2840 #define CYGNUM_HAL_INTERRUPT_I2C_TX_EMPTY 13
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2841 #define CYGNUM_HAL_INTERRUPT_I2C_RX_FULL 14
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2842 #define CYGNUM_HAL_INTERRUPT_I2C_BUS_ERR 15
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2843 #define CYGNUM_HAL_INTERRUPT_I2C_STOP 16
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2844 #define CYGNUM_HAL_INTERRUPT_I2C_LOSS 17
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2845 #define CYGNUM_HAL_INTERRUPT_I2C_ADDRESS 18
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2846
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2847
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2848 // Messaging Unit interrupts
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2849 #define CYGNUM_HAL_INTERRUPT_MESSAGE_0 19
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2850 #define CYGNUM_HAL_INTERRUPT_MESSAGE_1 20
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2851 #define CYGNUM_HAL_INTERRUPT_DOORBELL 21
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2852 #define CYGNUM_HAL_INTERRUPT_NMI_DOORBELL 22
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2853 #define CYGNUM_HAL_INTERRUPT_QUEUE_POST 23
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2854 #define CYGNUM_HAL_INTERRUPT_OUTBOUND_QUEUE_FULL 24
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2855 #define CYGNUM_HAL_INTERRUPT_INDEX_REGISTER 25
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2856 // PCI Address Translation Unit
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2857 #define CYGNUM_HAL_INTERRUPT_BIST 26
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2858
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2859
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2860 // *** External board interrupts (XINT3) ***
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2861 #define CYGNUM_HAL_INTERRUPT_TIMER 27 // external timer
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2862 #define CYGNUM_HAL_INTERRUPT_ETHERNET 28 // onboard enet
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2863 #define CYGNUM_HAL_INTERRUPT_SERIAL_A 29 // 16x50 uart A
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2864 #define CYGNUM_HAL_INTERRUPT_SERIAL_B 30 // 16x50 uart B
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2865 #define CYGNUM_HAL_INTERRUPT_PCI_S_INTD 31 // secondary PCI INTD
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2866 // The hardware doesn't (yet?) provide masking or status for these
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2867 // even though they can trigger cpu interrupts. ISRs will need to
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2868 // poll the device to see if the device actually triggered the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2869 // interrupt.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2870 #define CYGNUM_HAL_INTERRUPT_PCI_S_INTC 32 // secondary PCI INTC
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2871 #define CYGNUM_HAL_INTERRUPT_PCI_S_INTB 33 // secondary PCI INTB
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2872 #define CYGNUM_HAL_INTERRUPT_PCI_S_INTA 34 // secondary PCI INTA
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2873
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2874
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2875 // *** NMI Interrupts go to FIQ ***
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2876 #define CYGNUM_HAL_INTERRUPT_MCU_ERR 35
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2877 #define CYGNUM_HAL_INTERRUPT_PATU_ERR 36
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2878 #define CYGNUM_HAL_INTERRUPT_SATU_ERR 37
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2879 #define CYGNUM_HAL_INTERRUPT_PBDG_ERR 38
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2880 #define CYGNUM_HAL_INTERRUPT_SBDG_ERR 39
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2881 #define CYGNUM_HAL_INTERRUPT_DMA0_ERR 40
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2882 #define CYGNUM_HAL_INTERRUPT_DMA1_ERR 41
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2883 #define CYGNUM_HAL_INTERRUPT_DMA2_ERR 42
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2884 #define CYGNUM_HAL_INTERRUPT_MU_ERR 43
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2885 #define CYGNUM_HAL_INTERRUPT_reserved52 44
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2886 #define CYGNUM_HAL_INTERRUPT_AAU_ERR 45
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2887 #define CYGNUM_HAL_INTERRUPT_BIU_ERR 46
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2888
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2889
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2890 // *** ATU FIQ sources ***
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2891 #define CYGNUM_HAL_INTERRUPT_P_SERR 47
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2892 #define CYGNUM_HAL_INTERRUPT_S_SERR 48</programlisting>The data passed
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2893 to the ISR is pulled from a data table <computeroutput>(hal_interrupt_data)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2894 </computeroutput> which immediately follows the interrupt vector table. With
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2895 49 interrupts, the data table starts at address 0xA000A0C8. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2896 <para>An application may create a normal C function with the above prototype
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2897 to be an ISR. Just poke its address into the table at the correct index and
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2898 enable the interrupt at its source. The return value of the ISR is ignored
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2899 by RedBoot.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2900 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2901 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2902 <title>Memory Maps</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2903 <para>The first level page table is located at 0xa0004000. Two second level
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2904 tables are also used. One second level table is located at 0xa0008000 and
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2905 maps the first 1MB of flash. The other second level table is at 0xa0008400,
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2906 and maps the first 1MB of SDRAM. <note><title>NOTE</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2907 <para>The virtual memory maps in this section use a C and B column to indicate
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2908 whether or not the region is cached (C) or buffered (B).</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2909 </note></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2910 <para><programlisting>Physical Address Range Description
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2911 ----------------------- ----------------------------------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2912 0x00000000 - 0x00000fff flash Memory
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2913 0x00001000 - 0x00001fff 80312 Internal Registers
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2914 0x00002000 - 0x007fffff flash Memory
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2915 0x00800000 - 0x7fffffff PCI ATU Outbound Direct Window
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2916 0x80000000 - 0x83ffffff Primary PCI 32-bit Memory
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2917 0x84000000 - 0x87ffffff Primary PCI 64-bit Memory
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2918 0x88000000 - 0x8bffffff Secondary PCI 32-bit Memory
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2919 0x8c000000 - 0x8fffffff Secondary PCI 64-bit Memory
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2920 0x90000000 - 0x9000ffff Primary PCI IO Space
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2921 0x90010000 - 0x9001ffff Secondary PCI IO Space
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2922 0x90020000 - 0x9fffffff Unused
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2923 0xa0000000 - 0xbfffffff SDRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2924 0xc0000000 - 0xefffffff Unused
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2925 0xf0000000 - 0xffffffff 80200 Internal Registers
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2926
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2927
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2928 Virtual Address Range C B Description
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2929 ----------------------- - - ----------------------------------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2930 0x00000000 - 0x00000fff Y Y SDRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2931 0x00001000 - 0x00001fff N N 80312 Internal Registers
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2932 0x00002000 - 0x007fffff Y N flash Memory
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2933 0x00800000 - 0x7fffffff N N PCI ATU Outbound Direct Window
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2934 0x80000000 - 0x83ffffff N N Primary PCI 32-bit Memory
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2935 0x84000000 - 0x87ffffff N N Primary PCI 64-bit Memory
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2936 0x88000000 - 0x8bffffff N N Secondary PCI 32-bit Memory
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2937 0x8c000000 - 0x8fffffff N N Secondary PCI 64-bit Memory
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2938 0x90000000 - 0x9000ffff N N Primary PCI IO Space
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2939 0x90010000 - 0x9001ffff N N Secondary PCI IO Space
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2940 0xa0000000 - 0xbfffffff Y Y SDRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2941 0xc0000000 - 0xcfffffff Y Y Cache Flush Region
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2942 0xd0000000 - 0xd0000fff Y N first 4k page of flash
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2943 0xf0000000 - 0xffffffff N N 80200 Internal Registers </programlisting></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2944 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2945 <sect2>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2946 <title>Platform Resource Usage</title>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2947 <para>The external timer is used as a polled timer to provide timeout support
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2948 for networking and XModem file transfers.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2949 </sect2></sect1>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2950
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2951 <?Pub _newpage>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2952 <sect1 id="iq80321">
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2953 <title>ARM/Xscale Intel IQ80321</title>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2954 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2955 <title>Overview</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2956 <para><indexterm><primary>Intel IQ80321</primary><secondary>installing and
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2957 testing</secondary></indexterm><indexterm><primary>installing and testing
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2958 </primary><secondary>Intel IQ80321</secondary></indexterm>RedBoot supports
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2959 the serial port and the built-in ethernet port for communication and downloads.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2960 The default serial port settings are 115200,8,N,1. RedBoot also supports flash
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2961 management for the onboard 8MB flash.</para>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2962
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
2963 <para>The following RedBoot configurations are supported:
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2964
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2965 <informaltable frame="all">
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2966 <tgroup cols="4" colsep="1" rowsep="1" align="left">
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2967 <thead>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2968 <row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2969 <entry>Configuration</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2970 <entry>Mode</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2971 <entry>Description</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2972 <entry>File</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2973 </row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2974 </thead>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2975 <tbody>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2976 <row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2977 <entry>ROM</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2978 <entry>[ROM]</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2979 <entry>RedBoot running from the board's flash boot
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2980 sector.</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2981 <entry>redboot_ROM.ecm</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2982 </row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2983 <row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2984 <entry>RAM</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2985 <entry>[RAM]</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2986 <entry>RedBoot running from RAM with RedBoot in the
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2987 flash boot sector.</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2988 <entry>redboot_RAM.ecm</entry>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2989 </row>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2990 </tbody>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2991 </tgroup>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2992 </informaltable>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2993 </para>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2994
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
2995
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2996 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2997 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2998 <title>Initial Installation Method</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2999 <para>The board manufacturer provides a DOS application which is capable of
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3000 programming the flash over the PCI bus, and this is required for initial installations
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3001 of RedBoot. Please see the board manual for information on using this utility.
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3002 In general, the process involves programming the ROM mode RedBoot
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3003 image to flash. RedBoot should be programmed to flash address
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3004 0x00000000 using the DOS utility.
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3005 </para>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3006
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3007 <para>After booting the initial installation of RedBoot, this warning may
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3008 be printed: <screen>flash configuration checksum error or invalid key
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3009 </screen>This is normal, and indicates that the flash must be configured
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3010 for use by RedBoot. Even if the above message is not printed, it may be a
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3011 good idea to reinitialize the flash anyway. Do this with the <command>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3012 fis</command> command: <screen>RedBoot> <userinput>fis init</userinput>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3013 About to initialize [format] FLASH image system - continue (y/n)? <userinput>y</userinput>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3014 *** Initialize FLASH Image System
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3015 Warning: device contents not erased, some blocks may not be usable
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3016 ... Unlock from 0xf07e0000-0xf0800000: .
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3017 ... Erase from 0xf07e0000-0xf0800000: .
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3018 ... Program from 0x01ddf000-0x01ddf400 at 0xf07e0000: .
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3019 ... Lock from 0xf07e0000-0xf0800000: .
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3020 </screen></para></sect2>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3021 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3022 <title>Switch Settings</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3023 <para>The 80321 board is highly configurable through a number of switches and jumpers.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3024 RedBoot makes some assumptions about board configuration and attention must be paid
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3025 to these assumptions for reliable RedBoot operation:
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3026 <itemizedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3027 <listitem><para>The onboard ethernet and the secondary slot may be placed in a
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3028 private space so that they are not seen by a PC BIOS. If the board is to be used
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3029 in a PC with BIOS, then the ethernet should be placed in this private space so that
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3030 RedBoot and the BIOS do not conflict.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3031 </para></listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3032 <listitem><para>RedBoot assumes that the board is plugged into a PC with BIOS. This
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3033 requires RedBoot to detect when the BIOS has configured the PCI-X secondary bus. If
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3034 the board is placed in a backplane, RedBoot will never see the BIOS configure the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3035 secondary bus. To prevent this wait, set switch S7E1-3 to ON when using the board
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3036 in a backplane.</para></listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3037 <listitem><para>For the remaining switch settings, the following is a known good
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3038 configuration:
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3039 <informaltable frame=all>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3040 <tgroup cols=2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3041 <tbody>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3042 <row><entry>S1D1</entry><entry>All OFF</entry></row>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3043 <row><entry>S7E1</entry><entry>7 is ON, all others OFF</entry></row>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3044 <row><entry>S8E1</entry><entry>2,3,5,6 are ON, all others OFF</entry></row>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3045 <row><entry>S8E2</entry><entry>2,3 are ON, all others OFF</entry></row>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3046 <row><entry>S9E1</entry><entry>3 is ON, all others OFF</entry></row>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3047 <row><entry>S4D1</entry><entry>1,3 are ON, all others OFF</entry></row>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3048 <row><entry>J9E1</entry><entry>2,3 jumpered</entry></row>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3049 <row><entry>J9F1</entry><entry>2,3 jumpered</entry></row>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3050 <row><entry>J3F1</entry><entry>Nothing jumpered</entry></row>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3051 <row><entry>J3G1</entry><entry>2,3 jumpered</entry></row>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3052 <row><entry>J1G2</entry><entry>2,3 jumpered</entry></row>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3053 </tbody></tgroup></informaltable></para></listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3054 </itemizedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3055 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3056 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3057 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3058 <title>LED Codes</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3059 <para>RedBoot uses the two digit LED display to indicate status during board
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3060 initialization. Possible codes are:</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3061
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3062 <literallayout width=72>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3063 LED Actions
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3064 -------------------------------------------------------------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3065 Power-On/Reset
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3066 88
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3067 Set the CPSR
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3068 Enable coprocessor access
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3069 Drain write and fill buffer
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3070 Setup PBIU chip selects
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3071 A1
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3072 Enable the Icache
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3073 A2
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3074 Move FLASH chip select from 0x0 to 0xF0000000
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3075 Jump to new FLASH location
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3076 A3
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3077 Setup and enable the MMU
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3078 A4
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3079 I2C interface initialization
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3080 90
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3081 Wait for I2C initialization to complete
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3082 91
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3083 Send address (via I2C) to the DIMM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3084 92
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3085 Wait for transmit complete
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3086 93
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3087 Read SDRAM PD data from DIMM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3088 94
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3089 Read remainder of EEPROM data.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3090 An error will result in one of the following
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3091 error codes on the LEDs:
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3092 77 BAD EEPROM checksum
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3093 55 I2C protocol error
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3094 FF bank size error
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3095 A5
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3096 Setup DDR memory interface
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3097 A6
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3098 Enable branch target buffer
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3099 Drain the write & fill buffers
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3100 Flush Icache, Dcache and BTB
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3101 Flush instuction and data TLBs
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3102 Drain the write & fill buffers
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3103 SL
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3104 ECC Scrub Loop
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3105 SE
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3106 A7
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3107 Clean, drain, flush the main Dcache
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3108 A8
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3109 Clean, drain, flush the mini Dcache
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3110 Flush Dcache
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3111 Drain the write & fill buffers
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3112 A9
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3113 Enable ECC
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3114 AA
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3115 Save SDRAM size
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3116 Move MMU tables into RAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3117 AB
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3118 Clean, drain, flush the main Dcache
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3119 Clean, drain, flush the mini Dcache
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3120 Drain the write & fill buffers
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3121 AC
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3122 Set the TTB register to DRAM mmu_table
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3123 AD
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3124 Set mode to IRQ mode
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3125 A7
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3126 Move SWI & Undefined "vectors" to RAM (at 0x0)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3127 A6
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3128 Switch to supervisor mode
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3129 A5
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3130 Move remaining "vectors" to RAM (at 0x0)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3131 A4
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3132 Copy DATA to RAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3133 Initialize interrupt exception environment
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3134 Initialize stack
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3135 Clear BSS section
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3136 A3
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3137 Call platform specific hardware initialization
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3138 A2
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3139 Run through static constructors
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3140 A1
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3141 Start up the eCos kernel or RedBoot
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3142 </literallayout>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3143 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3144 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3145 <title>Special RedBoot Commands </title>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3146 <para>A special RedBoot command, <command>diag</command>, is used to
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3147 access a set of hardware diagnostics. To access the diagnostic menu,
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3148 enter <command>diag</command> at the RedBoot prompt:
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3149 <screen>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3150 RedBoot> <userinput>diag</userinput>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3151 Entering Hardware Diagnostics - Disabling Data Cache!
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3152
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3153 IQ80321 Hardware Tests
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3154
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3155 1 - Memory Tests
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3156 2 - Repeating Memory Tests
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3157 3 - Repeat-On-Fail Memory Tests
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3158 4 - Rotary Switch S1 Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3159 5 - 7 Segment LED Tests
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3160 6 - i82544 Ethernet Configuration
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3161 7 - Baterry Status Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3162 8 - Battery Backup SDRAM Memory Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3163 9 - Timer Test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3164 10 - PCI Bus test
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3165 11 - CPU Cache Loop (No Return)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3166 0 - quit
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3167 Enter the menu item number (0 to quit):
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3168 </screen>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3169 Tests for various hardware subsystems are provided, and some tests require
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3170 special hardware in order to execute normally. The Ethernet Configuration
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3171 item may be used to set the board ethernet address.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3172 <sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3173 <title>Memory Tests</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3174 <para>This test is used to test installed DDR SDRAM memory. Five different
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3175 tests are run over the given address ranges. If errors are encountered, the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3176 test is aborted and information about the failure is printed. When selected,
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3177 the user will be prompted to enter the base address of the test range and its
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3178 size. The numbers must be in hex with no leading &ldquo;0x&rdquo;
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3179 </para>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3180 <screen>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3181 Enter the menu item number (0 to quit): <userinput>1</userinput>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3182
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3183 Base address of memory to test (in hex): <userinput>100000</userinput>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3184
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3185 Size of memory to test (in hex): <userinput>200000</userinput>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3186
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3187 Testing memory from 0x00100000 to 0x002fffff.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3188
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3189 Walking 1's test:
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3190 0000000100000002000000040000000800000010000000200000004000000080
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3191 0000010000000200000004000000080000001000000020000000400000008000
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3192 0001000000020000000400000008000000100000002000000040000000800000
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3193 0100000002000000040000000800000010000000200000004000000080000000
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3194 passed
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3195 32-bit address test: passed
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3196 32-bit address bar test: passed
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3197 8-bit address test: passed
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3198 Byte address bar test: passed
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3199 Memory test done.
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3200 </screen>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3201 </sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3202 <sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3203 <title>Repeating Memory Tests</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3204 <para>The repeating memory tests are exactly the same as the above memory tests,
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3205 except that the tests are automatically rerun after completion. The only way out
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3206 of this test is to reset the board.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3207 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3208 </sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3209 <sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3210 <title>Repeat-On-Fail Memory Tests</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3211 <para>This is similar to the repeating memory tests except that when an error
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3212 is found, the failing test continuously retries on the failing address.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3213 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3214 </sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3215 <sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3216 <title>Rotary Switch S1 Test</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3217 <para>This tests the operation of the sixteen position rotary switch. When run,
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3218 this test will display the current position of the rotary switch on the LED
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3219 display. Slowly dial through each position and confirm reading on LED.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3220 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3221 </sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3222 <sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3223 <title>7 Segment LED Tests</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3224 <para>This tests the operation of the seven segment displays. When run, each
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3225 LED cycles through 0 through F and a decimal point.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3226 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3227 </sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3228 <sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3229 <title>i82544 Ethernet Configuration</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3230 <para>This test initializes the ethernet controller&rsquo;s serial EEPROM if
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3231 the current contents are invalid. In any case, this test will also allow the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3232 user to enter a six byte ethernet MAC address into the serial EEPROM.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3233 </para>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3234 <screen>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3235 Enter the menu item number (0 to quit): <userinput>6</userinput>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3236
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3237
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3238 Current MAC address: 00:80:4d:46:00:02
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3239 Enter desired MAC address: <userinput>00:80:4d:46:00:01</userinput>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3240 Writing to the Serial EEPROM... Done
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3241
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3242 ******** Reset The Board To Have Changes Take Effect ********
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3243 </screen>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3244 </sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3245 <sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3246 <title>Battery Status Test</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3247 <para>This tests the current status of the battery. First, the test checks to
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3248 see if the battery is installed and reports that finding. If the battery is
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3249 installed, the test further determines whether the battery status is one or
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3250 more of the following:
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3251 <itemizedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3252 <listitem><para>Battery is charging.</para></listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3253 <listitem><para>Battery is fully discharged.</para></listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3254 <listitem><para>Battery voltage measures within normal operating range.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3255 </para></listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3256 </itemizedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3257 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3258 </sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3259 <sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3260 <title>Battery Backup SDRAM Memory Test</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3261 <para>This tests the battery backup of SDRAM memory. This test is a three
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3262 step process:</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3263 <orderedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3264 <listitem><para>Select Battery backup test from main diag menu, then write
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3265 data to SDRAM.</para></listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3266 <listitem><para>Turn off power for 60 seconds, then repower the board.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3267 </para></listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3268 <listitem><para>Select Battery backup test from main diag menu, then check
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3269 data that was written in step 1.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3270 </para></listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3271 </orderedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3272 </sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3273 <sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3274 <title>Timer Test</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3275 <para>This tests the internal timer by printing a number of dots at one
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3276 second intervals.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3277 </sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3278 <sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3279 <title>PCI Bus Test</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3280 <para>This tests the secondary PCI-X bus and socket. This test requires that
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3281 an IQ80310 board be plugged into the secondary slot of the IOP80321 board.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3282 The test assumes at least 32MB of installed memory on the IQ80310. That memory
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3283 is mapped into the IOP80321 address space and the memory tests are run on that
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3284 memory.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3285 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3286 </sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3287 <sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3288 <title>CPU Cache Loop</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3289 <para>This test puts the CPU into a tight loop run entirely from the ICache.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3290 This should prevent all external bus accesses.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3291 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3292 </sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3293 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3294 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3295 <title>Rebuilding RedBoot </title>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3296
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3297 <para>These shell variables provide the platform-specific information
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3298 needed for building RedBoot according to the procedure described in
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3299 <xref linkend="Rebuilding-Redboot">:
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3300 <programlisting>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3301 export TARGET=iq80321
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3302 export ARCH_DIR=arm
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3303 export PLATFORM_DIR=xscale/iq80321
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3304 </programlisting>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3305 </para>
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3306
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3307 <para>The names of configuration files are listed above with the
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3308 description of the associated modes.</para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3309 </sect2>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3310
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3311 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3312 <title>Interrupts</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3313 <para>RedBoot uses an interrupt vector table which is located at address 0x8004.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3314 Entries in this table are pointers to functions with this protoype:: <programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3315 int irq_handler( unsigned vector, unsigned data )</programlisting>On an IQ80321
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3316 board, the vector argument is one of 32 interrupts defined in <computeroutput>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3317 hal/arm/xscale/verde/current/include/hal_var_ints.h:</computeroutput>: <programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3318 // *** 80200 CPU ***
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3319 #define CYGNUM_HAL_INTERRUPT_DMA0_EOT 0
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3320 #define CYGNUM_HAL_INTERRUPT_DMA0_EOC 1
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3321 #define CYGNUM_HAL_INTERRUPT_DMA1_EOT 2
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3322 #define CYGNUM_HAL_INTERRUPT_DMA1_EOC 3
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3323 #define CYGNUM_HAL_INTERRUPT_RSVD_4 4
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3324 #define CYGNUM_HAL_INTERRUPT_RSVD_5 5
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3325 #define CYGNUM_HAL_INTERRUPT_AA_EOT 6
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3326 #define CYGNUM_HAL_INTERRUPT_AA_EOC 7
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3327 #define CYGNUM_HAL_INTERRUPT_CORE_PMON 8
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3328 #define CYGNUM_HAL_INTERRUPT_TIMER0 9
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3329 #define CYGNUM_HAL_INTERRUPT_TIMER1 10
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3330 #define CYGNUM_HAL_INTERRUPT_I2C_0 11
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3331 #define CYGNUM_HAL_INTERRUPT_I2C_1 12
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3332 #define CYGNUM_HAL_INTERRUPT_MESSAGING 13
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3333 #define CYGNUM_HAL_INTERRUPT_ATU_BIST 14
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3334 #define CYGNUM_HAL_INTERRUPT_PERFMON 15
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3335 #define CYGNUM_HAL_INTERRUPT_CORE_PMU 16
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3336 #define CYGNUM_HAL_INTERRUPT_BIU_ERR 17
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3337 #define CYGNUM_HAL_INTERRUPT_ATU_ERR 18
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3338 #define CYGNUM_HAL_INTERRUPT_MCU_ERR 19
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3339 #define CYGNUM_HAL_INTERRUPT_DMA0_ERR 20
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3340 #define CYGNUM_HAL_INTERRUPT_DMA1_ERR 22
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3341 #define CYGNUM_HAL_INTERRUPT_AA_ERR 23
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3342 #define CYGNUM_HAL_INTERRUPT_MSG_ERR 24
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3343 #define CYGNUM_HAL_INTERRUPT_SSP 25
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3344 #define CYGNUM_HAL_INTERRUPT_RSVD_26 26
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3345 #define CYGNUM_HAL_INTERRUPT_XINT0 27
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3346 #define CYGNUM_HAL_INTERRUPT_XINT1 28
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3347 #define CYGNUM_HAL_INTERRUPT_XINT2 29
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3348 #define CYGNUM_HAL_INTERRUPT_XINT3 30
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3349 #define CYGNUM_HAL_INTERRUPT_HPI 31
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3350 </programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3351 The data passed to the ISR is pulled from a data table <computeroutput>(hal_interrupt_data)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3352 </computeroutput> which immediately follows the interrupt vector table. With
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3353 32 interrupts, the data table starts at address 0x8084. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3354 <para>An application may create a normal C function with the above prototype
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3355 to be an ISR. Just poke its address into the table at the correct index and
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3356 enable the interrupt at its source. The return value of the ISR is ignored
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3357 by RedBoot.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3358 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3359 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3360 <title>Memory Maps</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3361 <para>The RAM based page table is located at RAM start + 0x4000. RedBoot may be configured
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3362 for one of two memory maps. The difference between them is the location of RAM and the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3363 PCI outbound windows. The alternative memory map may be used when
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3364 building RedBoot or eCos by using the <literal>RAM_ALTMAP</literal>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3365 and <literal>ROM_ALTMAP</literal> startup types in the configuration.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3366 <note><title>NOTE</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3367 <para>The virtual memory maps in this section use a C, B, and X column to indicate
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3368 the caching policy for the region..</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3369 </note></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3370 <para><programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3371 X C B Description
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3372 - - - ---------------------------------------------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3373 0 0 0 Uncached/Unbuffered
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3374 0 0 1 Uncached/Buffered
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3375 0 1 0 Cached/Buffered Write Through, Read Allocate
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3376 0 1 1 Cached/Buffered Write Back, Read Allocate
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3377 1 0 0 Invalid -- not used
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3378 1 0 1 Uncached/Buffered No write buffer coalescing
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3379 1 1 0 Mini DCache - Policy set by Aux Ctl Register
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3380 1 1 1 Cached/Buffered Write Back, Read/Write Allocate
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3381
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3382 Physical Address Range Description
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3383 ----------------------- ----------------------------------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3384 0x00000000 - 0x7fffffff ATU Outbound Direct Window
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3385 0x80000000 - 0x900fffff ATU Outbound Translate Windows
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3386 0xa0000000 - 0xbfffffff SDRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3387 0xf0000000 - 0xf0800000 FLASH (PBIU CS0)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3388 0xfe800000 - 0xfe800fff UART (PBIU CS1)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3389 0xfe840000 - 0xfe840fff Left 7-segment LED (PBIU CS3)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3390 0xfe850000 - 0xfe850fff Right 7-segment LED (PBIU CS2)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3391 0xfe8d0000 - 0xfe8d0fff Rotary Switch (PBIU CS4)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3392 0xfe8f0000 - 0xfe8f0fff Baterry Status (PBIU CS5)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3393 0xfff00000 - 0xffffffff Verde Memory mapped Registers
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3394
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3395
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3396 Default Virtual Map X C B Description
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3397 ----------------------- - - - ----------------------------------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3398 0x00000000 - 0x1fffffff 1 1 1 SDRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3399 0x20000000 - 0x9fffffff 0 0 0 ATU Outbound Direct Window
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3400 0xa0000000 - 0xb00fffff 0 0 0 ATU Outbound Translate Windows
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3401 0xc0000000 - 0xdfffffff 0 0 0 Uncached alias for SDRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3402 0xe0000000 - 0xe00fffff 1 1 1 Cache flush region (no phys mem)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3403 0xf0000000 - 0xf0800000 0 1 0 FLASH (PBIU CS0)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3404 0xfe800000 - 0xfe800fff 0 0 0 UART (PBIU CS1)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3405 0xfe840000 - 0xfe840fff 0 0 0 Left 7-segment LED (PBIU CS3)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3406 0xfe850000 - 0xfe850fff 0 0 0 Right 7-segment LED (PBIU CS2)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3407 0xfe8d0000 - 0xfe8d0fff 0 0 0 Rotary Switch (PBIU CS4)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3408 0xfe8f0000 - 0xfe8f0fff 0 0 0 Baterry Status (PBIU CS5)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3409 0xfff00000 - 0xffffffff 0 0 0 Verde Memory mapped Registers
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3410
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3411 Alternate Virtual Map X C B Description
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3412 ----------------------- - - - ----------------------------------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3413 0x00000000 - 0x000fffff 1 1 1 Alias for 1st MB of SDRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3414 0x00100000 - 0x7fffffff 0 0 0 ATU Outbound Direct Window
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3415 0x80000000 - 0x900fffff 0 0 0 ATU Outbound Translate Windows
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3416 0xa0000000 - 0xbfffffff 1 1 1 SDRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3417 0xc0000000 - 0xdfffffff 0 0 0 Uncached alias for SDRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3418 0xe0000000 - 0xe00fffff 1 1 1 Cache flush region (no phys mem)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3419 0xf0000000 - 0xf0800000 0 1 0 FLASH (PBIU CS0)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3420 0xfe800000 - 0xfe800fff 0 0 0 UART (PBIU CS1)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3421 0xfe840000 - 0xfe840fff 0 0 0 Left 7-segment LED (PBIU CS3)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3422 0xfe850000 - 0xfe850fff 0 0 0 Right 7-segment LED (PBIU CS2)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3423 0xfe8d0000 - 0xfe8d0fff 0 0 0 Rotary Switch (PBIU CS4)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3424 0xfe8f0000 - 0xfe8f0fff 0 0 0 Baterry Status (PBIU CS5)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3425 0xfff00000 - 0xffffffff 0 0 0 Verde Memory mapped Registers
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3426
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3427 </programlisting></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3428 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3429 <sect2>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3430 <title>Platform Resource Usage</title>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3431 <para>The Verde programmable timer0 is used for timeout support
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3432 for networking and XModem file transfers.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3433 </sect2></sect1>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3434
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3435 <!-- ********************** CalmRISC ********************** -->
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3436 <?Pub _newpage>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3437 <sect1 id="CalmRISC16">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3438 <title>CalmRISC/CalmRISC16 Samsung CalmRISC16 Core Evaluation Board </title>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3439 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3440 <title>Overview</title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3441 <para><indexterm><primary>Samsung CalmRISC16 Core EVB</primary><secondary>installing
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3442 and testing</secondary></indexterm><indexterm><primary>installing and testing
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3443 </primary><secondary>Samsung CalmRISC16 Core EVB</secondary></indexterm> The
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3444 Samsung CalmRISC16 evaluation platform consists of two boards connected by a
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3445 ribbon cable. One board contains the CPU core and memory. The other board is
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3446 called the MDSChip board and provides the host interface. The calmRISC16 is a
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3447 harvard architecture with separate 22-bit program and data addresses. The
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3448 instruction set provides no instruction for writing to program memory. The
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3449 MDSChip board firmware (called CalmBreaker) provides a pseudo register interface
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3450 so that code running on the core has access to a serial channel and a mechanism
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3451 to write to program memory. The serial channel is fixed at 57600-8-N-1 by the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3452 firmware. The CalmBreaker firmware also provides a serial protocol which
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3453 allows a host to download a program and to start or stop the core board.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3454
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3455 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3456
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3457 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3458 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3459 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3460 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3461 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3462 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3463 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3464 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3465 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3466 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3467 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3468 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3469 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3470 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3471 <entry>RedBoot running via the MDSChip board.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3472 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3473 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3474 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3475 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3476 </informaltable>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3477 </para>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3478
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3479 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3480 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3481 <title>Initial Installation Method </title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3482 <para>The CalmRISC16 core is controlled through the MDSChip board. There is
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3483 no non-volatile storage available for RedBoot, so RedBoot must be downloaded
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3484 to the board on every power cycle. A small utility program is used to download
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3485 S-record files to the eval board. Sources and build instructions for this
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3486 utility are located in the RedBoot sources in:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3487 <filename class="directory">packages/hal/calmrisc16/ceb/current/support
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3488 </filename></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3489 <para>To download the RedBoot image, first press the reset button on the MDSChip
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3490 board. The green 'Run' LED on the core board should go off. Now, use the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3491 utility to download the RedBoot image with:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3492 <screen>$ <userinput>calmbreaker -p /dev/term/b --reset --srec-code -f redboot.elf</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3493 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3494 Note that the '-p /dev/term/b' specifies the serial port to use and will vary
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3495 from system to system. The download will take about two minutes. After it
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3496 finishes, start RedBoot with:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3497 <screen>$ <userinput>calmbreaker -p /dev/term/b --run</userinput></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3498 The 'Run' LED on the core board should be on. Connecting to the MDSboard with
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3499 a terminal and typing enter should result in RedBoot reprinting the command
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3500 prompt.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3501 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3502 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3503 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3504 <title>Special RedBoot Commands </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3505 <para>None.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3506 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3507 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3508 <title>Special Note on Serial Channel </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3509 <para>The MDSChip board uses a relatively slow microcontroller to provide
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3510 the pseudo-register interface to the core board. This pseudo-register
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3511 interface provides access to the serial channel and write access to program
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3512 memory. Those interfaces are slow and the serial channel is easily overrun
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3513 by a fast host. For this reason, GDB must be told to limit the size of code
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3514 download packets to avoid serial overrun. This is done with the following
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3515 GDB command:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3516 <screen>(gdb) <userinput>set download-write-size 25</userinput></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3517 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3518 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3519 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3520
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3521 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3522
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3523 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3524 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3525 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3526 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3527 export TARGET=calm16_ceb
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3528 export ARCH_DIR=calmrisc16
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3529 export PLATFORM_DIR=ceb
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3530 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3531 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3532
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3533 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3534 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3535
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3536 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3537 </sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3538
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3539 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3540 <sect1 id="CalmRISC32">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3541 <title>CalmRISC/CalmRISC32 Samsung CalmRISC32 Core Evaluation Board </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3542 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3543 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3544 <para><indexterm><primary>Samsung CalmRISC32 Core EVB</primary><secondary>installing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3545 and testing</secondary></indexterm><indexterm><primary>installing and testing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3546 </primary><secondary>Samsung CalmRISC32 Core EVB</secondary></indexterm> The
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3547 Samsung CalmRISC32 evaluation platform consists of two boards connected by a
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3548 ribbon cable. One board contains the CPU core and memory. The other board is
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3549 called the MDSChip board and provides the host interface. The calmRISC32 is a
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3550 harvard architecture with separate 32-bit program and data addresses. The
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3551 instruction set provides no instruction for writing to program memory. The
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3552 MDSChip board firmware (called CalmBreaker) provides a pseudo register interface
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3553 so that code running on the core has access to a serial channel and a mechanism
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3554 to write to program memory. The serial channel is fixed at 57600-8-N-1 by the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3555 firmware. The CalmBreaker firmware also provides a serial protocol which
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3556 allows a host to download a program and to start or stop the core board.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3557
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3558 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3559
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3560 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3561 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3562 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3563 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3564 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3565 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3566 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3567 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3568 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3569 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3570 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3571 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3572 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3573 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3574 <entry>RedBoot running via the MDSChip board.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3575 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3576 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3577 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3578 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3579 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3580 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3581
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3582 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3583 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3584 <title>Initial Installation Method </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3585 <para>The calmRISC32 core is controlled through the MDSChip board. There is
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3586 no non-volatile storage available for RedBoot, so RedBoot must be downloaded
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3587 to the board on every power cycle. A small utility program is used to download
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3588 S-record files to the eval board. Sources and build instructions for this
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3589 utility are located in the RedBoot sources in:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3590 <filename class="directory">packages/hal/calmrisc32/ceb/current/support
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3591 </filename></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3592 <para>To download the RedBoot image, first press the reset button on the MDSChip
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3593 board. The green 'Run' LED on the core board should go off. Now, use the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3594 utility to download the RedBoot image with:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3595 <screen>$ <userinput>calmbreaker -p /dev/term/b --reset --srec-code -f redboot.elf</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3596 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3597 Note that the '-p /dev/term/b' specifies the serial port to use and will vary
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3598 from system to syetm. The download will take about two minutes. After it
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3599 finishes, start RedBoot with:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3600 <screen>$ <userinput>calmbreaker -p /dev/term/b --run</userinput></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3601 The 'Run' LED on the core board should be on. Connecting to the MDSboard with
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3602 a terminal and typing enter should result in RedBoot reprinting the command
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3603 prompt.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3604 </para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3605 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3606 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3607 <title>Special RedBoot Commands </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3608 <para>None.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3609 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3610 <sect2>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3611 <title>Special Note on Serial Channel </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3612 <para>The MDSChip board uses a relatively slow microcontroller to provide
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3613 the pseudo-register interface to the core board. This pseudo-register
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3614 interface provides access to the serial channel and write access to program
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3615 memory. Those interfaces are slow and the serial channel is easily overrun
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3616 by a fast host. For this reason, GDB must be told to limit the size of code
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3617 download packets to avoid serial overrun. This is done with the following
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3618 GDB command:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3619 <screen>(gdb) <userinput>set download-write-size 25</userinput></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3620 </para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3621 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3622 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3623 <title>Rebuilding RedBoot</title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3624
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3625 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3626 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3627 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3628 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3629 export TARGET=calm32_ceb
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3630 export ARCH_DIR=calmrisc32
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3631 export PLATFORM_DIR=ceb
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3632 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3633 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3634
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3635 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3636 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3637
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3638 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3639 </sect1>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3640
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3641 <!-- ******************************** FRV ********************* -->
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3642
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3643 <?Pub _newpage>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3644 <sect1 id="frv400">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3645 <title>FRV/FRV400 Fujitsu FR-V 400 (MB-93091)</title>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3646 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3647 <title>Overview</title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3648
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3649 <para><indexterm><primary>Fujitsu FR-V 400</primary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3650 <secondary>installing and testing</secondary></indexterm><indexterm><primary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3651 installing and testing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3652 </primary><secondary>Fujitsu FR-V 400</secondary></indexterm>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3653 RedBoot supports both serial ports, which are available via
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3654 the stacked serial connectors on the mother board.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3655 The topmost port is the default and is considered to be port 0 by RedBoot.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3656 The bottommost port is serial port 1.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3657 The default serial port settings are 38400,8,N,1.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3658 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3659 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3660 FLASH management is also supported, but only for the FLASH device in IC7.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3661 This arrangement allows for IC8 to retain either the original Fujitsu board
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3662 firmware, or some application specific contents.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3663
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3664 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3665
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3666 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3667 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3668 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3669 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3670 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3671 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3672 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3673 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3674 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3675 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3676 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3677 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3678 <entry>ROMRAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3679 <entry>[ROMRAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3680 <entry>RedBoot running from RAM, but contained in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3681 board's flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3682 <entry>redboot_ROMRAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3683 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3684 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3685 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3686 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3687 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3688 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3689 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3690 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3691 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3692 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3693 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3694 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3695 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3696
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3697 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3698 <title>Initial Installation Method </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3699
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3700 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3701 RedBoot can be installed by directly programming the FLASH device in IC7
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3702 or by using the Fujitsu provided software to download and install a
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3703 version into the FLASH device. Complete instructions are provided
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3704 separately.
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3705 </para>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3706
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3707 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3708
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3709 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3710 <title>Special RedBoot Commands</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3711
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3712 <para>None.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3713 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3714
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3715 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3716 <title>Memory Maps</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3717
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3718 <para>The memory map of this platform is fixed by the hardware (cannot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3719 be changed by software). The only attributes which can be modified are
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3720 control over cacheability, as noted below.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3721 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3722 Address Cache? Resource
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3723 00000000-03EFFFFF Yes SDRAM (via plugin DIMM)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3724 03F00000-03FFFFFF No SDRAM (used for PCI window)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3725 10000000-1FFFFFFF No MB86943 PCI bridge
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3726 20000000-201FFFFF No SRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3727 21000000-23FFFFFF No Motherboard resources
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3728 24000000-25FFFFFF No PCI I/O space
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3729 26000000-2FFFFFFF No PCI Memory space
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3730 30000000-FDFFFFFF ?? Unused
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3731 FE000000-FEFFFFFF No I/O devices
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3732 FF000000-FF1FFFFF No IC7 - RedBoot FLASH
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3733 FF200000-FF3FFFFF No IC8 - unused FLASH
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3734 FF400000-FFFFFFFF No Misc other I/O
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3735 </screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3736 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3737
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3738 <note> <title>NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3739 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3740 The only configuration currently suppored requires a 64MB SDRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3741 DIMM to be present on the CPU card. No other memory configuration
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3742 is supported at this time.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3743 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3744 </note>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3745
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3746 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3747
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3748 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3749 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3750
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3751 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3752 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3753 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3754 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3755 export TARGET=frv400
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3756 export ARCH_DIR=frv
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3757 export PLATFORM_DIR=frv400
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3758 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3759 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3760
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3761 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3762 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3763 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3764
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3765 </sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3766
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3767 <!-- ********************************* IA32 *************************** -->
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3768 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3769 <sect1 id="x86pc">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3770 <title>IA32/x86 x86-Based PC</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3771 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3772 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3773 <para><indexterm><primary>x86 Based PC</primary><secondary>installing and
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3774 testing</secondary></indexterm><indexterm><primary>installing and testing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3775 </primary><secondary>x86 Based PC</secondary></indexterm>RedBoot supports
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3776 two serial ports and an Intel i82559 based ethernet card (for example an Intel
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3777 EtherExpress Pro 10/100) for communication and downloads. The default serial
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3778 port settings are 38400,8,N,1.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3779
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3780 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3781
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3782 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3783 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3784 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3785 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3786 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3787 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3788 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3789 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3790 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3791 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3792 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3793 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3794 <entry>Floppy</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3795 <entry>[Floppy]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3796 <entry>RedBoot running from a boot floppy disk installed
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3797 in the A: drive of the PC.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3798 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3799 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3800 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3801 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3802 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3803 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3804
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3805 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3806 <sect2>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3807 <title>Initial Installation</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3808 <para>RedBoot takes the form of a self-booting image that must be written
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3809 onto a formatted floppy disk. The process will erase any file system or data
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3810 that already exists on that disk, so proceed with caution.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3811 <para>For Red Hat Linux users, this can be done by:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3812 <screen>$ <userinput>dd conv=sync if=install/bin/redboot.bin of=/dev/fd0H1440
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3813 </userinput></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3814 <para>For NT Cygwin users, this can be done by first ensuring that the raw
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3815 floppy device is mounted as <filename>/dev/fd0</filename>. To check if this
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3816 is the case, type the command <command>mount</command> at the Cygwin bash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3817 prompt. If the floppy drive is already mounted, it will be listed as something
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3818 similar to the following line:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3819 <screen> \\.\a: /dev/fd0 user binmode</screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3820 <para>If this line is not listed, then mount the floppy drive using the command:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3821 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3822 <screen>$ <userinput>mount -f -b //./a: /dev/fd0</userinput></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3823 <para>To actually install the boot image on the floppy, use the command:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3824 <screen>$ <userinput>dd conv=sync if=install/bin/redboot.bin of=/dev/fd0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3825 </userinput></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3826 <para>Insert this floppy in the A: drive of the PC to be used as a target
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3827 and ensure that the BIOS is configured to boot from A: by default. On reset,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3828 the PC will boot from the floppy and be ready to be debugged via either serial
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3829 line, or via the ethernet interface if it is installed.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3830 <note><title>NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3831 <para>Unreliable floppy media may cause the write to silently fail. This
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3832 can be determined if the RedBoot image does not correctly
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3833 boot. In such cases, the floppy should be (unconditionally) reformatted
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3834 using the <command>fdformat</command> command on Linux, or
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3835 <command>format a: /u</command> on DOS/Windows.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3836 </note>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3837 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3838 <sect2>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3839 <title>Flash management</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3840 <para>PC RedBoot does not support any FLASH commands.</para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3841 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3842 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3843 <title>Special RedBoot Commands </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3844 <para>None.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3845 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3846 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3847 <title>Memory Maps </title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3848 <para>All selectors are initialized to map the entire 32-bit address space
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3849 in the familiar protected mode flat model. Page translation is not used.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3850 RAM up to 640K is mapped to 0x0 to 0xa0000. RAM above 640K is mapped
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3851 from address 0x100000 upwards. Space is reserved between 0xa0000 and
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3852 0x100000 for option ROMs and the BIOS.
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3853 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3854 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3855 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3856 <title>Rebuilding RedBoot</title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3857
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3858 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3859 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3860 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3861 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3862 export TARGET=pc
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3863 export ARCH_DIR=i386
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3864 export PLATFORM_DIR=pc
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3865 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3866 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3867
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3868 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3869 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3870
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3871 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3872 </sect1>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3873
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3874 <!-- *************** MIPS ******************* -->
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3875
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3876 <?Pub _newpage>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3877 <sect1 id="atlas">
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3878 <title>MIPS/MIPS32(CoreLV 4Kc)+MIPS64(CoreLV 5Kc) Atlas Board</title>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3879 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3880 <title>Overview</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3881 <para><indexterm><primary>MIPS Atlas Board with CoreLV 4KC and CoreLV 5KC
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3882 </primary><secondary>installing and testing</secondary></indexterm><indexterm>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3883 <primary>installing and testing</primary><secondary>MIPS Atlas Board with
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3884 CoreLV 4KC and CoreLV 5KC</secondary></indexterm>RedBoot supports the DgbSer
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3885 serial port and the built in ethernet port for communication and downloads.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3886 The default serial port settings are 115200,8,N,1. RedBoot runs from and supports
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3887 flash management for the system flash region.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3888
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3889 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3890
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3891 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3892 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3893 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3894 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3895 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3896 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3897 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3898 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3899 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3900 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3901 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3902 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3903 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3904 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3905 <entry>RedBoot running from the board's flash boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3906 sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3907 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3908 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3909 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3910 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3911 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3912 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3913 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3914 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3915 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3916 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3917 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3918 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3919 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3920
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3921 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3922 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3923 <title>Initial Installation</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3924 <para>RedBoot is installed using the code download facility built into the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3925 Atlas board. See the Atlas User manual for details, and also the Atlas download
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3926 format in <xref linkend="Atlas-download-format">.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3927 <sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3928 <title>Quick download instructions</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3929 <para>Here are quick start instructions for downloading the prebuilt RedBoot
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3930 image.</para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3931 <orderedlist>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3932 <listitem><para>Locate the prebuilt files in the bin directory: <filename>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3933 deleteall.dl</filename> and <filename>redboot.dl</filename>.
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3934 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3935 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3936 <listitem><para>Make sure switch S1-1 is OFF and switch S5-1 is ON. Reset
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3937 the board and verify that the LED display reads <computeroutput>Flash DL</computeroutput>.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3938 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3939 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3940 <listitem><para>Make sure your parallel port is connected to the 1284 port
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3941 Of the Atlas board. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3942 </listitem>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3943 <listitem><para>Send the <filename>deleteall.dl</filename> file to the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3944 parallel port to erase previous images:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3945 <screen>$ <userinput>cat deleteall.dl >/dev/lp0</userinput></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3946 When this is complete, the LED display should read
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3947 <computeroutput>Deleted</computeroutput>.</para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3948 </listitem>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3949 <listitem><para>Send the ROM mode RedBoot image to the board:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3950 <screen>$ <userinput>cat redboot.dl >/dev/lp0</userinput></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3951 When this is complete, the LED display should show the last
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3952 address programmed. This will be something like: <computeroutput>1fc17000
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3953 </computeroutput>. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3954 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3955 <listitem><para>Change switch S5-1 to OFF and reset the board. The LED display
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3956 should read <computeroutput>RedBoot</computeroutput>. </para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3957 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3958 <listitem><para>Run the RedBoot <command>fis init</command>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3959 and <command>fconfig</command> commands to initialize the flash.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3960 See <xref linkend="Atlas-Additional-fconfig-options">, <xref linkend="Flash-Image-System">
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3961 and <xref linkend="Persistent-State-Flash"> for details. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3962 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3963 </orderedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3964 </sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3965 <sect3 id="Atlas-download-format">
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3966 <title>Atlas download format</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3967 <para>In order to download RedBoot to the Atlas board, it must be converted
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3968 to the Atlas download format. There are different ways of doing this depending
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3969 on which version of the developer's kit is shipped with the board. </para>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3970 <para>The <citetitle>Atlas Developer's Kit</citetitle> CD contains an <application>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3971 srec2flash</application> utility. The source code for this utility is part
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3972 of the <filename>yamon/yamon-src-01.01.tar.gz</filename> tarball
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3973 on the Dev Kit CD. The path in the expanded tarball is <filename
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3974 class="directory">yamon/bin/tools</filename>. To use
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3975 <application>srec2flash</application> to convert the S-record file:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3976 <screen>$ <userinput>srec2flash -EL -S29 redboot.srec >redboot.dl</userinput></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3977 The <citetitle>Atlas/Malta Developer's Kit</citetitle> CD
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3978 contains an <application>srecconv.pl</application> utility which requires
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3979 Perl. This utilty is part of the <filename>yamon/yamon-src-02.00.tar.gz</filename>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3980 tarball on the Dev Kit CD. The path in the expanded tarball
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3981 is <filename class="directory">yamon/bin/tools</filename>. To use <application>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3982 srecconv</application> to convert the S-record file:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3983 <screen>$ <userinput>cp redboot_ROM.srec redboot_ROM.rec</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3984 $ <userinput>srecconv.pl -ES L -A 29 redboot_ROM</userinput></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3985 The resulting file is named <filename>redboot_ROM.fl</filename>.</para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3986 </sect3></sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3987 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3988 <title>Flash management</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3989 <sect3 id="Atlas-Additional-fconfig-options">
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3990 <title>Additional config options</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3991 <para>The ethernet MAC address is stored in flash manually using the <command>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3992 fconfig</command> command. You can use the YAMON <command>setenv
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3993 ethaddr</command> command to print out the board ethernet address.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3994 Typically, it is: <screen>00:0d:a0:00:<replaceable>xx:xx</replaceable></screen> where
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3995 <replaceable>xx.xx</replaceable> is the hex representation of the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
3996 board serial number.</para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3997 </sect3>
210
d2c90368aeef Merge from eCos master repository on 2002-05-23-21:39:14-BST
jlarmour
parents: 208
diff changeset
3998 </sect2>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3999 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4000 <title>Additional commands</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4001 <para>The <command>exec</command> command which allows the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4002 loading and execution of Linux kernels, is supported for this architecture
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4003 (see <xref linkend="executing-programs">). The
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4004 <command>exec</command> parameters used for MIPS boards are:</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4005 <variablelist><varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4006 <term>-b <replaceable>&lt;addr></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4007 <listitem><para>Location to store command line and environment passed to kernel</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4008 <varlistentry><term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4009 -w <replaceable>&lt;time></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4010 <listitem><para>Wait time in seconds before starting kernel</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4011 <varlistentry><term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4012 -c <replaceable>"params"</replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4013 <listitem><para>Parameters passed to kernel</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4014 <varlistentry><term><replaceable>&lt;addr></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4015 <listitem><para>Kernel entry point, defaulting to the entry point of the last image
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4016 loaded</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4017 </variablelist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4018 <para>Linux kernels on MIPS platforms expect the entry point to be called with arguments
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4019 in the registers equivalent to a C call with prototype:
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4020 <programlisting>void Linux(int argc, char **argv, char **envp);</programlisting></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4021 <para>RedBoot will place the appropriate data at the offset specified by the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4022 <parameter>-b</parameter> parameter, or by default at address 0x80080000, and will set the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4023 arguments accordingly when calling into the kernel.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4024 <para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4025 The default entry point, if no image with explicit entry point has been loaded and
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4026 none is specified, is 0x80000750.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4027 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4028 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4029
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4030 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4031 <title>Interrupts</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4032 <para>RedBoot uses an interrupt vector table which is located at address 0x80000400.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4033 Entries in this table are pointers to functions with this protoype: <programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4034 int irq_handler( unsigned vector, unsigned data )</programlisting>On an atlas
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4035 board, the vector argument is one of 25 interrupts defined in <computeroutput>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4036 hal/mips/atlas/<replaceable>VERSION</replaceable>/include/plf_intr.h</computeroutput>: <programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4037 #define CYGNUM_HAL_INTERRUPT_SER 0
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4038 #define CYGNUM_HAL_INTERRUPT_TIM0 1
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4039 #define CYGNUM_HAL_INTERRUPT_2 2
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4040 #define CYGNUM_HAL_INTERRUPT_3 3
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4041 #define CYGNUM_HAL_INTERRUPT_RTC 4
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4042 #define CYGNUM_HAL_INTERRUPT_COREHI 5
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4043 #define CYGNUM_HAL_INTERRUPT_CORELO 6
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4044 #define CYGNUM_HAL_INTERRUPT_7 7
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4045 #define CYGNUM_HAL_INTERRUPT_PCIA 8
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4046 #define CYGNUM_HAL_INTERRUPT_PCIB 9
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4047 #define CYGNUM_HAL_INTERRUPT_PCIC 10
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4048 #define CYGNUM_HAL_INTERRUPT_PCID 11
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4049 #define CYGNUM_HAL_INTERRUPT_ENUM 12
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4050 #define CYGNUM_HAL_INTERRUPT_DEG 13
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4051 #define CYGNUM_HAL_INTERRUPT_ATXFAIL 14
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4052 #define CYGNUM_HAL_INTERRUPT_INTA 15
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4053 #define CYGNUM_HAL_INTERRUPT_INTB 16
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4054 #define CYGNUM_HAL_INTERRUPT_INTC 17
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4055 #define CYGNUM_HAL_INTERRUPT_INTD 18
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4056 #define CYGNUM_HAL_INTERRUPT_SERR 19
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4057 #define CYGNUM_HAL_INTERRUPT_HW1 20
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4058 #define CYGNUM_HAL_INTERRUPT_HW2 21
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4059 #define CYGNUM_HAL_INTERRUPT_HW3 22
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4060 #define CYGNUM_HAL_INTERRUPT_HW4 23
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4061 #define CYGNUM_HAL_INTERRUPT_HW5 24</programlisting>The data
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4062 passed to the ISR is pulled from a data table (<computeroutput>hal_interrupt_data
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4063 </computeroutput>) which immediately follows the interrupt vector table. With
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4064 25 interrupts, the data table starts at address 0x80000464 on atlas.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4065 <para>An application may create a normal C function with the above prototype
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4066 to be an ISR. Just poke its address into the table at the correct index and
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4067 enable the interrupt at its source. The return value of the ISR is ignored
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4068 by RedBoot. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4069 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4070 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4071 <title>Memory Maps </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4072 <para>Memory Maps RedBoot sets up the following memory map on the Atlas board.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4073 <programlisting>Physical Address Range Description
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4074 ----------------------- -------------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4075 0x00000000 - 0x07ffffff SDRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4076 0x08000000 - 0x17ffffff PCI Memory Space
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4077 0x18000000 - 0x1bdfffff PCI I/O Space
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4078 0x1be00000 - 0x1bffffff System Controller
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4079 0x1c000000 - 0x1dffffff System flash
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4080 0x1e000000 - 0x1e3fffff Monitor flash
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4081 0x1f000000 - 0x1fbfffff FPGA</programlisting></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4082 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4083 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4084 <title>Rebuilding RedBoot</title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4085
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4086 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4087 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4088 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4089 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4090 export TARGET=atlas_mips32_4kc
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4091 export TARGET=atlas_mips64_5kc
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4092 export ARCH_DIR=mips
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4093 export PLATFORM_DIR=atlas
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4094 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4095
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4096 Use one of the TARGET settings only.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4097
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4098 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4099
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4100 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4101 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4102
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4103 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4104 </sect1>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4105 <?Pub _newpage>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4106 <sect1 id="malta">
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4107 <title>MIPS/MIPS32(CoreLV 4Kc)+MIPS64(CoreLV 5Kc) Malta Board </title>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4108 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4109 <title>Overview</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4110 <para><indexterm><primary>MIPS Malta Board with CoreLV 4KC and CoreLV 5KC
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4111 </primary><secondary>installing and testing</secondary></indexterm><indexterm>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4112 <primary>installing and testing</primary><secondary>MIPS Malta Board with
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4113 CoreLV 4KC and CoreLV 5KC</secondary></indexterm>RedBoot supports both front
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4114 facing serial ports and the built in ethernet port for communication and downloads.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4115 The default serial port settings are 38400,8,N,1. RedBoot runs from and supports
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4116 flash management for the system flash region.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4117
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4118 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4119
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4120 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4121 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4122 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4123 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4124 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4125 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4126 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4127 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4128 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4129 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4130 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4131 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4132 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4133 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4134 <entry>RedBoot running from the board's flash boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4135 sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4136 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4137 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4138 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4139 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4140 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4141 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4142 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4143 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4144 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4145 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4146 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4147 </informaltable>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4148 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4149
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4150 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4151 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4152 <title>Initial Installation</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4153 <para>RedBoot is installed using the code download facility built into the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4154 Malta board. See the Malta User manual for details, and also the Malta download
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4155 format in <xref linkend="Malta-download-format">.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4156 <sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4157 <title>Quick download instructions</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4158 <para>Here are quick start instructions for downloading the prebuilt RedBoot
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4159 image. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4160 <orderedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4161 <listitem><para>Locate the prebuilt files in the bin directory: <filename>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4162 deleteall.fl</filename> and <filename>redboot_ROM.fl</filename>. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4163 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4164 <listitem><para>Make sure switch S5-1 is ON. Reset the board and verify that
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4165 the LED display reads <computeroutput>Flash DL</computeroutput>. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4166 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4167 <listitem><para>Make sure your parallel port is connected to the 1284 port
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4168 Of the Atlas board. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4169 </listitem>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4170 <listitem><para>Send the <filename>deleteall.fl</filename> file to the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4171 parallel port to erase previous images:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4172 <screen>$ <userinput>cat deleteall.fl >/dev/lp0</userinput></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4173 When this is complete, the LED display should read
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4174 <computeroutput>Deleted</computeroutput>.</para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4175 </listitem>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4176 <listitem><para>Send the RedBoot image to the board:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4177 <screen>$ <userinput>cat redboot_ROM.fl >/dev/lp0</userinput></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4178 When this is complete, the LED display should show the last address
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4179 programmed. This will be something like:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4180 <computeroutput>1fc17000</computeroutput>. </para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4181 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4182 <listitem><para>Change switch S5-1 to OFF and reset the board. The LED display
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4183 should read <computeroutput>RedBoot</computeroutput>. </para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4184 </listitem>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4185 <listitem><para>Run the RedBoot <command>fis init</command> and <command>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4186 fconfig</command> commands to initialize the flash. See <xref linkend="Flash-Image-System">
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4187 and <xref linkend="Persistent-State-Flash"> for details. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4188 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4189 </orderedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4190 </sect3>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4191 <sect3 id="malta-download-format">
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4192 <title>Malta download format</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4193 <para>In order to download RedBoot to the Malta board, it must be converted
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4194 to the Malta download format.</para>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4195 <para>The <citetitle>Atlas/Malta Developer's Kit</citetitle> CD contains an <application>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4196 srecconv.pl</application> utility which requires Perl. This utility is part
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4197 of the <filename>yamon/yamon-src-02.00.tar.gz</filename> tarball
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4198 on the Dev Kit CD. The path in the expanded tarball is <filename
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4199 class="directory">yamon/bin/tools</filename>. To use
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4200 <application>srecconv</application> to convert the S-record file:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4201 <screen>$ <userinput>cp redboot_ROM.srec redboot_ROM.rec</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4202 $ <userinput>srecconv.pl -ES L -A 29 redboot_ROM</userinput></screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4203 The resulting file is named <filename>redboot_ROM.fl</filename>.</para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4204 </sect3></sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4205
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4206 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4207 <title>Additional commands</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4208 <para>The <command>exec</command> command which allows the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4209 loading and execution of Linux kernels, is supported for this architecture
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4210 (see <xref linkend="executing-programs">). The
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4211 <command>exec</command> parameters used for MIPS boards are:</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4212 <variablelist><varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4213 <term>-b <replaceable>&lt;addr></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4214 <listitem><para>Location to store command line and environment passed to kernel</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4215 <varlistentry><term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4216 -w <replaceable>&lt;time></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4217 <listitem><para>Wait time in seconds before starting kernel</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4218 <varlistentry><term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4219 -c <replaceable>"params"</replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4220 <listitem><para>Parameters passed to kernel</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4221 <varlistentry><term><replaceable>&lt;addr></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4222 <listitem><para>Kernel entry point, defaulting to the entry point of the last image
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4223 loaded</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4224 </variablelist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4225 <para>Linux kernels on MIPS platforms expect the entry point to be called with arguments
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4226 in the registers equivalent to a C call with prototype:
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4227 <programlisting>void Linux(int argc, char **argv, char **envp);</programlisting></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4228 <para>RedBoot will place the appropriate data at the offset specified by the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4229 <parameter>-b</parameter> parameter, or by default at address 0x80080000, and will set the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4230 arguments accordingly when calling into the kernel.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4231 <para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4232 The default entry point, if no image with explicit entry point has been loaded and
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4233 none is specified, is 0x80000750.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4234 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4235 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4236
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4237 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4238 <title>Interrupts</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4239 <para>RedBoot uses an interrupt vector table which is located at address 0x80000200.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4240 Entries in this table are pointers to functions with this protoype: <programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4241 int irq_handler( unsigned vector, unsigned data )</programlisting>On the malta
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4242 board, the vector argument is one of 22 interrupts defined in <computeroutput>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4243 hal/mips/malta/<replaceable>VERSION</replaceable>/include/plf_intr.h</computeroutput>: <programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4244
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4245 #define CYGNUM_HAL_INTERRUPT_SOUTH_BRIDGE_INTR 0
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4246 #define CYGNUM_HAL_INTERRUPT_SOUTH_BRIDGE_SMI 1
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4247 #define CYGNUM_HAL_INTERRUPT_CBUS_UART 2
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4248 #define CYGNUM_HAL_INTERRUPT_COREHI 3
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4249 #define CYGNUM_HAL_INTERRUPT_CORELO 4
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4250 #define CYGNUM_HAL_INTERRUPT_COMPARE 5
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4251 #define CYGNUM_HAL_INTERRUPT_TIMER 6
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4252 #define CYGNUM_HAL_INTERRUPT_KEYBOARD 7
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4253 #define CYGNUM_HAL_INTERRUPT_CASCADE 8
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4254 #define CYGNUM_HAL_INTERRUPT_TTY1 9
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4255 #define CYGNUM_HAL_INTERRUPT_TTY0 10
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4256 #define CYGNUM_HAL_INTERRUPT_11 11
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4257 #define CYGNUM_HAL_INTERRUPT_FLOPPY 12
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4258 #define CYGNUM_HAL_INTERRUPT_PARALLEL 13
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4259 #define CYGNUM_HAL_INTERRUPT_REAL_TIME_CLOCK 14
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4260 #define CYGNUM_HAL_INTERRUPT_I2C 15
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4261 #define CYGNUM_HAL_INTERRUPT_PCI_AB 16
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4262 #define CYGNUM_HAL_INTERRUPT_PCI_CD 17
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4263 #define CYGNUM_HAL_INTERRUPT_MOUSE 18
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4264 #define CYGNUM_HAL_INTERRUPT_19 19
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4265 #define CYGNUM_HAL_INTERRUPT_IDE_PRIMARY 20
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4266 #define CYGNUM_HAL_INTERRUPT_IDE_SECONDARY 21</programlisting>The data
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4267 passed to the ISR is pulled from a data table (<computeroutput>hal_interrupt_data
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4268 </computeroutput>) which immediately follows the interrupt vector table. With
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4269 22 interrupts, the data table starts at address 0x80000258.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4270 <para>An application may create a normal C function with the above prototype
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4271 to be an ISR. Just poke its address into the table at the correct index and
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4272 enable the interrupt at its source. The return value of the ISR is ignored
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4273 by RedBoot. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4274 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4275 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4276 <title>Memory Maps </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4277 <para>Memory Maps RedBoot sets up the following memory map on the Malta board.<note>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4278 <title>NOTE</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4279 <para>The virtual memory maps in this section use a C and B column to indicate
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4280 whether or not the region is cached (C) or buffered (B).</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4281 </note><programlisting>Physical Address Range C B Description
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4282 ----------------------- - - -----------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4283 0x80000000 - 0x81ffffff Y Y SDRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4284 0x9e000000 - 0x9e3fffff Y N System flash (cached)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4285 0x9fc00000 - 0x9fffffff Y N System flash (mirrored)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4286 0xa8000000 - 0xb7ffffff N N PCI Memory Space
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4287 0xb4000000 - 0xb40fffff N N Galileo System Controller
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4288 0xb8000000 - 0xb80fffff N N Southbridge / ISA
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4289 0xb8100000 - 0xbbdfffff N N PCI I/O Space
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4290 0xbe000000 - 0xbe3fffff N N System flash (noncached)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4291 0xbf000000 - 0xbfffffff N N Board logic FPGA</programlisting></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4292 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4293 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4294 <title>Rebuilding RedBoot</title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4295
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4296 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4297 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4298 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4299 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4300 export TARGET=malta_mips32_4kc
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4301 export ARCH_DIR=mips
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4302 export PLATFORM_DIR=malta
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4303 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4304 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4305
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4306 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4307 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4308
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4309 </sect2></sect1>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4310 <?Pub _newpage>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4311 <sect1 id="ocelot">
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4312 <title>MIPS/RM7000 PMC-Sierra Ocelot</title>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4313 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4314 <title>Overview</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4315 <para><indexterm><primary>PMC-Sierra MIPS RM7000 Ocelot</primary><secondary>installing
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4316 and testing</secondary></indexterm><indexterm><primary>installing and testing
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4317 </primary><secondary>PMC-Sierra MIPS RM7000 Ocelot</secondary></indexterm>RedBoot
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4318 uses the front facing serial port. The default serial port settings are 38400,8,N,1.
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4319 RedBoot also supports ethernet. Management of onboard flash is also supported.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4320
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4321 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4322
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4323 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4324 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4325 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4326 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4327 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4328 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4329 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4330 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4331 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4332 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4333 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4334 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4335 <entry>ROM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4336 <entry>[ROM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4337 <entry>RedBoot running from the board's flash boot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4338 sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4339 <entry>redboot_ROM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4340 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4341 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4342 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4343 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4344 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4345 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4346 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4347 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4348 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4349 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4350 </informaltable>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4351 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4352 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4353
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4354 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4355 <title>Additional commands</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4356 <para>The <command>exec</command> command which allows the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4357 loading and execution of Linux kernels, is supported for this architecture
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4358 (see <xref linkend="executing-programs">). The
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4359 <command>exec</command> parameters used for MIPS boards are:</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4360 <variablelist><varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4361 <term>-b <replaceable>&lt;addr></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4362 <listitem><para>Location to store command line and environment passed to kernel</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4363 <varlistentry><term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4364 -w <replaceable>&lt;time></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4365 <listitem><para>Wait time in seconds before starting kernel</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4366 <varlistentry><term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4367 -c <replaceable>"params"</replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4368 <listitem><para>Parameters passed to kernel</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4369 <varlistentry><term><replaceable>&lt;addr></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4370 <listitem><para>Kernel entry point, defaulting to the entry point of the last image
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4371 loaded</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4372 </variablelist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4373 <para>Linux kernels on MIPS platforms expect the entry point to be called with arguments
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4374 in the registers equivalent to a C call with prototype:
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4375 <programlisting>void Linux(int argc, char **argv, char **envp);</programlisting></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4376 <para>RedBoot will place the appropriate data at the offset specified by the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4377 <parameter>-b</parameter> parameter, or by default at address 0x80080000, and will set the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4378 arguments accordingly when calling into the kernel.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4379 <para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4380 The default entry point, if no image with explicit entry point has been loaded and
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4381 none is specified, is 0x80000750.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4382 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4383 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4384
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4385 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4386 <title>Memory Maps </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4387 <para>RedBoot sets up the following memory map on the Ocelot board. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4388 <para>Note that these addresses are accessed through kseg0/1 and thus translate
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4389 to the actual address range 0x80000000-0xbfffffff, depending on the need for
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4390 caching/non-caching access to the bus.<note><title>NOTE</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4391 <para>The virtual memory maps in this section use a C and B column to indicate
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4392 whether or not the region is cached (C) or buffered (B).</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4393 </note><programlisting>Physical Address Range Description
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4394 ----------------------- -----------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4395 0x00000000 - 0x0fffffff SDRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4396 0x10000000 - 0x10ffffff PCI I/O space
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4397 0x12000000 - 0x13ffffff PCI Memory space
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4398 0x14000000 - 0x1400ffff Galileo system controller
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4399 0x1c000000 - 0x1c0000ff PLD (board logic)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4400 0x1fc00000 - 0x1fc7ffff flash</programlisting></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4401 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4402 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4403 <title>Rebuilding RedBoot</title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4404
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4405 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4406 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4407 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4408 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4409 export TARGET=ocelot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4410 export ARCH_DIR=mips
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4411 export PLATFORM_DIR=rm7000/ocelot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4412 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4413 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4414
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4415 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4416 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4417
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4418 </sect2></sect1>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4419
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4420
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4421 <?Pub _newpage>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4422 <sect1 id="vrc4375">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4423 <title>MIPS/VR4375 NEC DDB-VRC4375</title>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4424 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4425 <title>Overview</title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4426
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4427 <para><indexterm><primary>NEC DDB-VRC4375</primary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4428 <secondary>installing and testing</secondary></indexterm><indexterm><primary>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4429 installing and testing</primary><secondary>NEC DDB-VRC4375
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4430 </secondary></indexterm>RedBoot supports only serial port 1, which is connected to the upper
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4431 of the stacked serial connectors on the board. The default serial
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4432 port settings are 38400,8,N,1. FLASH management is also supported.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4433
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4434 <para>The following RedBoot configurations are supported:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4435
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4436 <informaltable frame="all">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4437 <tgroup cols="4" colsep="1" rowsep="1" align="left">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4438 <thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4439 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4440 <entry>Configuration</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4441 <entry>Mode</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4442 <entry>Description</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4443 <entry>File</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4444 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4445 </thead>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4446 <tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4447 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4448 <entry>ROMRAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4449 <entry>[ROMRAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4450 <entry>RedBoot running from RAM, but contained in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4451 board's flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4452 <entry>redboot_ROMRAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4453 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4454 <row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4455 <entry>RAM</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4456 <entry>[RAM]</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4457 <entry>RedBoot running from RAM with RedBoot in the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4458 flash boot sector.</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4459 <entry>redboot_RAM.ecm</entry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4460 </row>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4461 </tbody>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4462 </tgroup>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4463 </informaltable>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4464 </para>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4465
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4466 </sect2>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4467
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4468 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4469 <title>Initial Installation Method </title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4470
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4471 <para>A device programmer should be used to program a socketed FLASH part
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4472 (AMD 29F040). The board as delivered is configured for a 512K
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4473 EPROM. To install a FLASH ROM, Jumpers J30, J31 and J36 need to be
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4474 changed as described in the board's User Manual.</para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4475 </sect2>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4476
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4477 <sect2>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4478 <title>Special RedBoot Commands</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4479
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4480 <para>None.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4481 </sect2>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4482
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4483 <sect2>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4484 <title>Memory Maps</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4485
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4486 <para>RedBoot sets up the memory map primarily as described in the board's
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4487 User Manual. There are some minor differences, noted in the following
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4488 table:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4489 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4490 Physical Virtual Resource
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4491 Addresses Addresses
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4492 00000000-01FFFFFF 80000000-81FFFFFF Base SDRAM (cached)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4493 00000000-01FFFFFF A0000000-A1FFFFFF Base SDRAM (uncached)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4494 0C000000-0C0BFFFF AC000000-AC0B0000 PCI IO space
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4495 0F000000-0F0001FF AF000000-AF0001FF VRC4375 Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4496 1C000000-1C0FFFFF BC000000-BC0FFFFF VRC4372 Registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4497 1C100000-1DFFFFFF BC100000-BDFFFFFF PCI Memory space
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4498 1FC00000-1FC7FFFF BFC00000-BFC7FFFF FLASH ROM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4499 80000000-8000000D C0000000-C000000D RTC
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4500 8000000E-80007FFF C000000E-C0007FFF NVRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4501 81000000-81FFFFFF C1000000-C1FFFFFF Z85C30 DUART
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4502 82000000-82FFFFFF C2000000-C2FFFFFF Z8536 Timer
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4503 83000000-83FFFFFF C3000000-C3FFFFFF 8255 Parallel port
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4504 87000000-87FFFFFF C7000000-C7FFFFFF Seven segment display</screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4505 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4506
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4507 <note> <title>NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4508 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4509 By default the VRC4375 SIMM control registers are not programmed
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4510 since the values used must depend on the SIMMs installed. If SIMMs
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4511 are to be used, correct values must be placed in these registers
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4512 before accessing the SIMM address range.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4513 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4514 </note>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4515
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4516 <note> <title>NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4517 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4518 The allocation of address ranges to devices in the PCI IO and
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4519 memory spaces is handled by the eCos PCI support library. They do
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4520 not correspond to those described in the board User Manual.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4521 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4522 </note>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4523
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4524 <note> <title>NOTE</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4525 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4526 The MMU has been set up to relocate the VRC4372 supported devices
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4527 mapped at physical addresses 0x8xxxxxxx to virtual addresses
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4528 0xCxxxxxxx.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4529 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4530 </note>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4531
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4532 </sect2>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4533
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4534 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4535 <title>Ethernet Driver</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4536
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4537 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4538 The ethernet driver is in two parts:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4539 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4540
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4541 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4542 A generic ether driver for the Intel i21143 device is located in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4543 <filename class="directory">devs/eth/intel/i21143</filename>. Its package name is <computeroutput>CYGPKG_DEVS_ETH_INTEL_I21143</computeroutput>.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4544 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4545
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4546 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4547 The platform-specific ether driver is <filename
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4548 class="directory">devs/eth/mips/vrc4375</filename>. Its package is
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4549 <computeroutput>CYGPKG_DEVS_ETH_MIPS_VRC4375</computeroutput>. This
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4550 tells the generic driver the address in IO memory of the chip, for
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4551 example, and other configuration details. The ESA (MAC address) is by
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4552 default collected from on-board serial EEPROM, unless configured
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4553 statically within this package.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4554 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4555 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4556
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4557 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4558 <title>Rebuilding RedBoot</title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4559
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4560 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4561 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4562 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4563 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4564 export TARGET=vrc4373
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4565 export ARCH_DIR=mips
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4566 export PLATFORM_DIR=vrc4373
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4567 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4568 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4569
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4570 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4571 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4572
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4573 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4574 </sect1>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4575
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4576 <!-- ************************** PowerPC ********************** -->
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4577
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4578 <?Pub _newpage>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4579 <sect1 id="viper">
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4580 <title>PowerPC/MPC860T Analogue & Micro PowerPC 860T</title>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4581 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4582 <title>Overview</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4583 <para><indexterm><primary>Analogue & Micro PowerPC 860T</primary><secondary>installing
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4584 and testing</secondary></indexterm><indexterm><primary>installing and testing
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4585 </primary><secondary>Analogue & Micro PowerPC 860T</secondary></indexterm>RedBoot uses
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4586 the SMC1 serial port. The default serial port settings are 38400,8,N,1.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4587 Ethernet is also supported using the RJ-45 connector. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4588 <para>Management of onboard flash is also supported.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4589 A single RedBoot configuration is supported: <itemizedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4590 <listitem><para>RedBoot running from RAM using an image copied from the flash boot sector (ROMRAM mode).
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4591 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4592 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4593 </itemizedlist></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4594 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4595 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4596 <title>Initial Installation Method </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4597 <para>RedBoot must be installed at the A & M factory.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4598 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4599 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4600 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4601 <title>Special RedBoot Commands </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4602 <para>None.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4603 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4604 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4605 <title>Memory Maps </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4606 <para>Memory Maps RedBoot sets up the following memory map on the MBX board.<programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4607 Physical Address Range Description
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4608 ----------------------- -----------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4609 0x00000000 - 0x007fffff DRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4610 0xfe000000 - 0xfe0fffff flash (AMD29LV8008B)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4611 0xff000000 - 0xff0fffff MPC registers</programlisting></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4612 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4613 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4614 <title>Rebuilding RedBoot</title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4615
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4616 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4617 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4618 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4619 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4620 export TARGET=viper
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4621 export ARCH_DIR=powerpc
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4622 export PLATFORM_DIR=viper
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4623 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4624 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4625
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4626 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4627 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4628
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4629 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4630 </sect1>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4631
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4632 <?Pub _newpage>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4633 <sect1 id="mbx">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4634 <title>PowerPC/MPC8XX Motorola MBX</title>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4635 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4636 <title>Overview</title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4637 <para><indexterm><primary>Motorola PowerPC MBX</primary><secondary>installing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4638 and testing</secondary></indexterm><indexterm><primary>installing and testing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4639 </primary><secondary>Motorola PowerPC MBX</secondary></indexterm>RedBoot uses
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4640 the SMC1/COM1 serial port. The default serial port settings are 38400,8,N,1.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4641 Ethernet is also supported using the 10-base T connector. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4642 <para>Management of onboard flash is also supported. Two basic RedBoot configurations
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4643 are supported: <itemizedlist>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4644 <listitem><para>RedBoot running from RAM with RedBoot in the flash boot sector.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4645 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4646 </listitem>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4647 <listitem><para>RedBoot running from the board's flash boot sector. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4648 </listitem>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4649 </itemizedlist></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4650 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4651 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4652 <title>Initial Installation Method </title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4653 <para>Device programmer is used to program the XU1 socketed flash part (AM29F040B)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4654 with the ROM version of RedBoot. - Use the on-board EPPC-Bug monitor to update
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4655 RedBoot. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4656 <para>This assumes that you have EPPC-Bug in the on-board flash. This can
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4657 be determined by setting up the board according to the following instructions
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4658 and powering up the board. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4659 <para>The EPPC-Bug prompt should appear on the SMC1 connector at 9600 baud,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4660 8N1. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4661 <orderedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4662 <listitem><para>Set jumper 3 to 2-3 [allow XU1 flash to be programmed] </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4663 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4664 <listitem><para>Set jumper 4 to 2-3 [boot EPPC-Bug] </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4665 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4666 </orderedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4667 <para>If it is available, program the flash by following these steps: </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4668 <orderedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4669 <listitem><para>Prepare EPPC-Bug for download: <screen>EPPC-Bug>lo 0
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4670 </screen>At this point the monitor is ready for input. It will not
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4671 return the prompt until the file has been downloaded. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4672 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4673 <listitem><para>Use the terminal emulator's ASCII download feature (or a simple
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4674 clipboard copy/paste operation) to download the redboot.ppcbug file.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4675 <para>Note that on Linux, Minicom's ASCII download feature seems to be broken.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4676 A workaround is to load the file into emacs (or another editor) and copy the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4677 full contents to the clipboard. Then press the mouse paste-button (usually
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4678 the middle one) over the Minicom window. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4679 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4680 <listitem><para>Program the flash with the downloaded data: <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4681 EPPC-Bug>pflash 40000 60000 fc000000</screen></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4682 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4683 <listitem><para>Switch off the power, and change jumper 4 to 1-2. Turn on
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4684 the power again. The board should now boot using the newly programmed RedBoot.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4685 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4686 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4687 </orderedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4688 <para>To install RedBoot on a target that already has eCos GDB stubs, download
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4689 the RAM version of RedBoot and run it. Initialize the flash image directory: <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4690 RedBoot> fi init</screen>Then download the ROM version of RedBoot
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4691 and program it into flash:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4692 <screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4693 RedBoot> <userinput>load redboot_ROM.srec -b 0x80100000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4694 RedBoot> <userinput>fi cr RedBoot -f 0xFE000000 -b 0x00040000 -l 0x20000</userinput>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4695 </screen></para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4696 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4697 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4698 <title>Special RedBoot Commands </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4699 <para>None.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4700 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4701 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4702 <title>Memory Maps </title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4703 <para>Memory Maps RedBoot sets up the following memory map on the MBX board.<programlisting>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4704 Physical Address Range Description
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4705 ----------------------- -----------
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4706 0x00000000 - 0x003fffff DRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4707 0xfa100000 - 0xfa100003 LEDs
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4708 0xfe000000 - 0xfe07ffff flash (AMD29F040B)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4709 0xff000000 - 0xff0fffff MPC registers</programlisting></para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4710 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4711 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4712 <title>Rebuilding RedBoot</title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4713
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4714 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4715 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4716 <xref linkend="Rebuilding-Redboot">:
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4717 <programlisting>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4718 export TARGET=mbx
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4719 export ARCH_DIR=powerpc
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4720 export PLATFORM_DIR=mbx
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4721 </programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4722 </para>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4723
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4724 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4725 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4726
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4727 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4728 </sect1>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4729
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4730
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4731
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4732
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4733 <!-- ********************** SuperH ************************ -->
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4734
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4735
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4736
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4737 <?Pub _newpage>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4738 <sect1 id="edk7708">
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4739 <title>SuperH/SH3(SH7708) Hitachi EDK7708</title>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4740 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4741 <title>Overview</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4742 <para><indexterm><primary>Hitachi SH EDK7708</primary><secondary>installing
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4743 and testing</secondary></indexterm><indexterm><primary>installing and testing
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4744 </primary><secondary>Hitachi SH EDK7708</secondary></indexterm>RedBoot uses
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4745 the serial port. The default serial port settings are 38400,8,N,1.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4746 <para>Management of onboard flash is also supported. Two basic RedBoot configurations
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4747 are supported: <itemizedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4748 <listitem><para>RedBoot running from RAM with RedBoot in the flash boot sector.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4749 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4750 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4751 <listitem><para>RedBoot running from the board's flash boot sector. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4752 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4753 </itemizedlist></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4754 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4755 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4756 <title>Initial Installation Method </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4757 <para>Program the ROM RedBoot image into flash using an eprom programmer.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4758
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4759 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4760
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4761 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4762 <title>Memory Maps </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4763 <para>RedBoot sets up the following memory map on the EDK7708 board.<programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4764 Physical Address Range Description
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4765 ----------------------- -----------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4766 0x80000000 - 0x8001ffff Flash (AT29LV1024)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4767 0x88000000 - 0x881fffff DRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4768 0xa4000000 - 0xa40000ff LED ON
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4769 0xb8000000 - 0xb80000ff LED ON
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4770 </programlisting></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4771 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4772 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4773 <title>Rebuilding RedBoot</title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4774
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4775 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4776 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4777 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4778 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4779 export TARGET=edk7708
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4780 export ARCH_DIR=sh
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4781 export PLATFORM_DIR=edk7708
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4782 </programlisting>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4783 </para>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4784
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4785 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4786 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4787
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4788 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4789 </sect1>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4790
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4791 <?Pub _newpage>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4792 <sect1 id="se7709">
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4793 <title>SuperH/SH3(SH7709) Hitachi Solution Engine 7709</title>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4794 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4795 <title>Overview</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4796 <para><indexterm><primary>Hitachi SH SE7709</primary><secondary>installing
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4797 and testing</secondary></indexterm><indexterm><primary>installing and testing
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4798 </primary><secondary>Hitachi SH SE7709</secondary></indexterm>This
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4799 description covers the MS7709SE01 variant. See <xref linkend="se77x9">
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4800 for instructions for the MS7729SE01 and MS7709SSE0101 variants.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4801
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4802 <para>RedBoot uses
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4803 the COM1 and COM2 serial ports. The default serial port settings are 38400,8,N,1.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4804 Ethernet is also supported using the 10-base T connector. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4805 <para>Management of onboard flash is also supported. Two basic RedBoot configurations
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4806 are supported: <itemizedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4807 <listitem><para>RedBoot running from RAM with RedBoot in the flash boot sector.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4808 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4809 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4810 <listitem><para>RedBoot running from the board's flash boot sector. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4811 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4812 </itemizedlist></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4813 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4814 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4815 <title>Initial Installation Method </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4816 <para>The Solution Engine ships with the Hitachi boot monitor in EPROM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4817 which allows for initial programming of RedBoot:</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4818
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4819 <orderedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4820 <listitem><para>Set switch SW4-1 to ON [boot from EPROM]</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4821 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4822 <listitem><para>Connect a serial cable to CN1 (SCI) and power up the board.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4823 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4824 <listitem><para>After the boot monitor banner, invoke the flash
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4825 download/program command:<screen>Ready &gt;fl</screen></para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4826 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4827 <listitem><para>The monitor should now ask for input:
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4828 <screen>Flash ROM data copy to RAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4829 Please Send A S-format Record</screen>At this point copy the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4830 RedBoot ROM SREC file to the serial port:<screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4831 $ cat redboot_SE7709RP_ROM.eprom.srec &gt /dev/ttyS0</screen>Eventually you
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4832 should see something like<screen>Start Addrs = A1000000
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4833 End Addrs = A1xxxxxx
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4834 Transfer complete</screen> from the monitor.
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4835 </para></listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4836 <listitem><para>Set switch SW4-1 to OFF [boot from flash] and reboot the board. You
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4837 should now see the RedBoot banner.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4838 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4839 </orderedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4840 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4841 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4842 <title>Special RedBoot Commands </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4843 <para>The <command>exec</command> command which allows the loading
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4844 and execution of Linux kernels
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4845 is supported for this board (see <xref linkend="executing-programs">). The <command>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4846 exec</command> parameters used for the SE77x9 are:</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4847 <variablelist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4848 <varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4849 <term>-b <replaceable>&lt;addr></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4850 <listitem><para>Parameter block address. This is normally the first
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4851 page of the kernel image and defaults to 0x8c101000</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4852
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4853 <varlistentry><term>-i <replaceable>&lt;addr></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4854 <listitem><para>Start address of initrd
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4855 image</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4856
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4857 <varlistentry><term>-j <replaceable>&lt;size></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4858 <listitem><para>Size of initrd image</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4859
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4860 <varlistentry><term>-c <replaceable>"args"</replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4861 <listitem><para>Kernel arguments string</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4862
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4863 <varlistentry><term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4864 -m <replaceable>&lt;flags></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4865 <listitem><para>Mount rdonly flags. If set to a non-zero value the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4866 root partition will be mounted read-only.</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4867
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4868 <varlistentry><term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4869 -f <replaceable>&lt;flags></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4870 <listitem><para>RAM disk flags. Should normally be 0x4000</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4871
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4872 <varlistentry><term>-r <replaceable>&lt;device number></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4873 <listitem><para>Root device specification. /dev/ram is 0x0101</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4874
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4875 <varlistentry><term>-l <replaceable>&lt;type></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4876 <listitem><para>Loader type</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4877
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4878 </variablelist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4879
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4880 <para>Finally the kernel entry address can be specified as an optional
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4881 argument. The default is 0x8c102000</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4882
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4883 <para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4884 For the the SE77x9, Linux by default expects to be loaded at
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4885 0x8c001000 which conflicts with the data space used by RedBoot.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4886 To work around this, either change the CONFIG_MEMORY_START kernel
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4887 option to a higher address, or use the compressed kernel image and load
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4888 it at a higher address. For example, setting CONFIG_MEMORY_START to
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4889 0x8c100000, the kernel expects to be loaded at address 0x8c101000 with
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4890 the entry point at 0x8c102000.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4891 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4892
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4893 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4894 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4895 <title>Memory Maps </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4896 <para>RedBoot sets up the following memory map on the SE77x9 board.<programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4897 Physical Address Range Description
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4898 ----------------------- -----------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4899 0x80000000 - 0x803fffff Flash (MBM29LV160)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4900 0x81000000 - 0x813fffff EPROM (M27C800)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4901 0x8c000000 - 0x8dffffff DRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4902 0xb0000000 - 0xb03fffff Ethernet (DP83902A)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4903 0xb0800000 - 0xb08fffff 16C552A
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4904 0xb1000000 - 0xb100ffff Switches
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4905 0xb1800000 - 0xb18fffff LEDs
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4906 0xb8000000 - 0xbbffffff PCMCIA (MaruBun)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4907 </programlisting></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4908 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4909 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4910 <title>Ethernet Driver</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4911 <para>The ethernet driver uses a hardwired ESA which can, at present,
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4912 only be changed in CDL.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4913 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4914 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4915 <title>Rebuilding RedBoot</title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4916
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4917 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4918 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4919 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4920 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4921 export TARGET=se77x9
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4922 export ARCH_DIR=sh
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4923 export PLATFORM_DIR=se77x9
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4924 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4925 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4926
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4927 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4928 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4929 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4930 </sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4931
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4932 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4933 <sect1 id="hs7729pci">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4934 <title>SuperH/SH3(SH7729) Hitachi HS7729PCI</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4935 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4936 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4937 <para><indexterm><primary>Hitachi SH HS7729PCI</primary><secondary>installing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4938 and testing</secondary></indexterm><indexterm><primary>installing and testing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4939 </primary><secondary>Hitachi SH HS7729PCI</secondary></indexterm>RedBoot uses
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4940 the COM1 and COM2 serial ports (and the debug port on the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4941 motherboard).
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4942 The default serial port settings are 38400,8,N,1.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4943 Ethernet is also supported using a D-Link DFE-530TX PCI plugin card.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4944 <para>Management of onboard flash is also supported. Two basic RedBoot configurations
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4945 are supported: <itemizedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4946 <listitem><para>RedBoot running from RAM with RedBoot in the flash boot sector.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4947 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4948 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4949 <listitem><para>RedBoot running from the board's flash boot sector. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4950 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4951 </itemizedlist></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4952 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4953 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4954 <title>Initial Installation Method </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4955 <para>A copy of the ROM startup version of RedBoot must be programmed
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4956 into the two EPROMs. Two files with a split version of the ROM image is
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4957 provided: it is also possible to recreate these from the redboot.bin
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4958 file, but requires the split_word.c program in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4959 hal/sh/hs7729pci/<replaceable>VERSION</replaceable>/misc to be built
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4960 and executed with the redboot.bin filename as sole argument.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4961
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4962 <para>After doing this it is advised that another ROM version of
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4963 RedBoot is programmed into the flash, and that copy be used for
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4964 booting the board. This allows for software programmed updates of
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4965 RedBoot instead of having to reprogram the EPROMs.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4966
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4967 <orderedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4968 <listitem><para>Program the EPROMs with RedBoot. The .lo image should
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4969 go in socket M1 and the .hi image in socket M2.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4970 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4971 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4972 <listitem><para>Set switch SW1-6 to ON [boot from EPROM]</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4973 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4974 <listitem><para>Follow the instructions under Flash management for
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4975 updating the flash copy of RedBoot, but use
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4976 <screen>-f 0x80400000</screen> due to setting of
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4977 the SW1-6 switch.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4978 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4979 <listitem><para>Set switch SW1-6 to OFF [boot from flash] and reboot the board. You
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4980 should now see the RedBoot banner. At this time you may want to issue
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4981 the command <command>fis init</command> to initialize
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4982 the flash table with the correct addresses.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4983 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4984 </orderedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4985
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4986
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4987 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4988 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4989 <title>Special RedBoot Commands </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4990 <para>The <command>exec</command> command which allows the loading
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4991 and execution of Linux kernels
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4992 is supported for this board (see <xref linkend="executing-programs">). The <command>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4993 exec</command> parameters used for the HS7729PCI are:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4994 <variablelist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4995 <varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4996 <term>-b <replaceable>&lt;addr></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4997 <listitem><para>Parameter block address. This is normally the first
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4998 page of the kernel image and defaults to 0x8c101000</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
4999
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5000 <varlistentry><term>-i <replaceable>&lt;addr></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5001 <listitem><para>Start address of initrd
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5002 image</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5003
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5004 <varlistentry><term>-j <replaceable>&lt;size></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5005 <listitem><para>Size of initrd image</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5006
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5007 <varlistentry><term>-c <replaceable>"args"</replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5008 <listitem><para>Kernel arguments string</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5009
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5010 <varlistentry><term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5011 -m <replaceable>&lt;flags></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5012 <listitem><para>Mount rdonly flags. If set to a non-zero value the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5013 root partition will be mounted read-only.</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5014
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5015 <varlistentry><term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5016 -f <replaceable>&lt;flags></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5017 <listitem><para>RAM disk flags. Should normally be 0x4000</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5018
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5019 <varlistentry><term>-r <replaceable>&lt;device number></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5020 <listitem><para>Root device specification. /dev/ram is 0x0101</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5021
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5022 <varlistentry><term>-l <replaceable>&lt;type></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5023 <listitem><para>Loader type</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5024
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5025 </variablelist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5026
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5027 <para>Finally the kernel entry address can be specified as an optional
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5028 argument. The default is 0x8c102000</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5029
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5030 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5031 On the HS7729PCI, Linux expects to be loaded at address 0x8c101000 with
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5032 the entry point at 0x8c102000. This is configurable in the kernel
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5033 using the CONFIG_MEMORY_START option.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5034 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5035
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5036 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5037 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5038 <title>Memory Maps </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5039 <para>RedBoot sets up the following memory map on the HS7729PCI board.<programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5040 Physical Address Range Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5041 ----------------------- -----------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5042 0x80000000 - 0x803fffff Flash (MBM29LV160)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5043 0x80400000 - 0x807fffff EPROM (M27C800)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5044 0x82000000 - 0x82ffffff SRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5045 0x89000000 - 0x89ffffff SRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5046 0x8c000000 - 0x8fffffff SDRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5047 0xa8000000 - 0xa800ffff SuperIO (FDC37C935A)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5048 0xa8400000 - 0xa87fffff USB function (ML60851C)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5049 0xa8800000 - 0xa8bfffff USB host (SL11HT)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5050 0xa8c00000 - 0xa8c3ffff Switches
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5051 0xa8c40000 - 0xa8c7ffff LEDs
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5052 0xa8c80000 - 0xa8cfffff Interrupt controller
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5053 0xb0000000 - 0xb3ffffff PCI (SD0001)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5054 0xb8000000 - 0xbbffffff PCMCIA (MaruBun)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5055 </programlisting></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5056 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5057 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5058 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5059
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5060 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5061 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5062 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5063 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5064 export TARGET=hs7729pci
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5065 export ARCH_DIR=sh
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5066 export PLATFORM_DIR=hs7729pci
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5067 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5068 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5069
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5070 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5071 description of the associated modes.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5072 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5073 </sect1>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5074
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5075 <?Pub _newpage>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5076 <sect1 id="se77x9">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5077 <title>SuperH/SH3(SH77X9) Hitachi Solution Engine 77X9</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5078 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5079 <title>Overview</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5080 <para><indexterm><primary>Hitachi SH SE77X9</primary><secondary>installing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5081 and testing</secondary></indexterm><indexterm><primary>installing and testing
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5082 </primary><secondary>Hitachi SH SE77X9</secondary></indexterm>This
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5083 description covers the MS7729SE01 and MS7709SSE0101 variants. See <xref linkend="se7709">
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5084 for instructions for the MS7709SE01 variant.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5085
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5086 <para>RedBoot uses
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5087 the COM1 and COM2 serial ports. The default serial port settings are 38400,8,N,1.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5088 Ethernet is also supported using the 10-base T connector. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5089 <para>Management of onboard flash is also supported. Two basic RedBoot configurations
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5090 are supported: <itemizedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5091 <listitem><para>RedBoot running from RAM with RedBoot in the flash boot sector.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5092 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5093 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5094 <listitem><para>RedBoot running from the board's flash boot sector. </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5095 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5096 </itemizedlist></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5097 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5098 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5099 <title>Initial Installation Method </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5100 <para>The Solution Engine ships with the Hitachi boot monitor in EPROM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5101 which allows for initial programming of RedBoot:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5102
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5103 <orderedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5104 <listitem><para>Set switches SW4-3 and SW4-4 to ON [boot from EPROM]</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5105 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5106 <listitem><para>Connect a serial cable to COM2 and power up the board.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5107 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5108 <listitem><para>After the boot monitor banner, invoke the flash
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5109 download/program command:<screen>Ready &gt;fl</screen></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5110 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5111 <listitem><para>The monitor should now ask for input:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5112 <screen>Flash ROM data copy to RAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5113 Please Send A S-format Record</screen>At this point copy the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5114 RedBoot ROM SREC file to the serial port:<screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5115 $ cat redboot_ROM.eprom.srec &gt /dev/ttyS0</screen>Eventually you
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5116 should see something like<screen>Start Addrs = A1000000
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5117 End Addrs = A1xxxxxx
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5118 Transfer complete</screen> from the monitor.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5119 </para></listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5120 <listitem><para>Set switch SW4-3 to OFF [boot from flash] and reboot the board. You
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5121 should now see the RedBoot banner.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5122 </listitem>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5123 </orderedlist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5124 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5125 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5126 <title>Special RedBoot Commands </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5127 <para>The <command>exec</command> command which allows the loading
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5128 and execution of Linux kernels
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5129 is supported for this board (see <xref linkend="executing-programs">). The <command>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5130 exec</command> parameters used for the SE77x9 are:</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5131 <variablelist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5132 <varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5133 <term>-b <replaceable>&lt;addr></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5134 <listitem><para>Parameter block address. This is normally the first
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5135 page of the kernel image and defaults to 0x8c101000</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5136
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5137 <varlistentry><term>-i <replaceable>&lt;addr></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5138 <listitem><para>Start address of initrd
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5139 image</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5140
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5141 <varlistentry><term>-j <replaceable>&lt;size></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5142 <listitem><para>Size of initrd image</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5143
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5144 <varlistentry><term>-c <replaceable>"args"</replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5145 <listitem><para>Kernel arguments string</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5146
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5147 <varlistentry><term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5148 -m <replaceable>&lt;flags></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5149 <listitem><para>Mount rdonly flags. If set to a non-zero value the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5150 root partition will be mounted read-only.</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5151
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5152 <varlistentry><term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5153 -f <replaceable>&lt;flags></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5154 <listitem><para>RAM disk flags. Should normally be 0x4000</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5155
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5156 <varlistentry><term>-r <replaceable>&lt;device number></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5157 <listitem><para>Root device specification. /dev/ram is 0x0101</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5158
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5159 <varlistentry><term>-l <replaceable>&lt;type></replaceable></term>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5160 <listitem><para>Loader type</para></listitem></varlistentry>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5161
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5162 </variablelist>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5163
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5164 <para>Finally the kernel entry address can be specified as an optional
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5165 argument. The default is 0x8c102000</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5166
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5167 <para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5168 On the SE77x9, Linux expects to be loaded at address 0x8c101000 with
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5169 the entry point at 0x8c102000. This is configurable in the kernel
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5170 using the CONFIG_MEMORY_START option.
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5171 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5172
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5173 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5174 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5175 <title>Memory Maps </title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5176 <para>RedBoot sets up the following memory map on the SE77x9 board.<programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5177 Physical Address Range Description
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5178 ----------------------- -----------
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5179 0x80000000 - 0x803fffff Flash (MBM29LV160)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5180 0x81000000 - 0x813fffff EPROM (M27C800)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5181 0x8c000000 - 0x8dffffff SDRAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5182 0xb0000000 - 0xb03fffff Ethernet (DP83902A)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5183 0xb0400000 - 0xb07fffff SuperIO (FDC37C935A)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5184 0xb0800000 - 0xb0bfffff Switches
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5185 0xb0c00000 - 0xbfffffff LEDs
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5186 0xb1800000 - 0xb1bfffff PCMCIA (MaruBun)
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5187 </programlisting></para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5188 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5189 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5190 <title>Ethernet Driver</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5191 <para>The ethernet driver uses a hardwired ESA which can, at present,
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5192 only be changed in CDL.</para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5193 </sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5194 <sect2>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5195 <title>Rebuilding RedBoot</title>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5196
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5197 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5198 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5199 <xref linkend="Rebuilding-Redboot">:
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5200 <programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5201 export TARGET=se77x9
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5202 export ARCH_DIR=sh
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5203 export PLATFORM_DIR=se77x9
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5204 </programlisting>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5205 </para>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5206
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5207 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5208 description of the associated modes.</para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5209 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5210 </sect1>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5211
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5212 <?Pub _newpage>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5213 <sect1 id="se7751">
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5214 <title>SuperH/SH4(SH7751) Hitachi Solution Engine 7751</title>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5215 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5216 <title>Overview</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5217 <para><indexterm><primary>Hitachi SH SE7751</primary><secondary>installing
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5218 and testing</secondary></indexterm><indexterm><primary>installing and testing
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5219 </primary><secondary>Hitachi SH SE7751</secondary></indexterm>RedBoot uses
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5220 the COM1 serial port. The default serial port settings are 38400,8,N,1.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5221 Ethernet is also supported using the 10-base T connector. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5222 <para>Management of onboard flash is also supported. Two basic RedBoot configurations
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5223 are supported: <itemizedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5224 <listitem><para>RedBoot running from RAM with RedBoot in the flash boot sector.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5225 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5226 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5227 <listitem><para>RedBoot running from the board's flash boot sector. </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5228 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5229 </itemizedlist></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5230 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5231 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5232 <title>Initial Installation Method </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5233 <para>The Solution Engine ships with the Hitachi boot monitor in EPROM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5234 which allows for initial programming of RedBoot:</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5235
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5236 <orderedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5237 <listitem><para>Set switches SW5-3 and SW5-4 to ON [boot from EPROM]</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5238 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5239 <listitem><para>Connect a serial cable to COM1 and power up the board.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5240 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5241 <listitem><para>After the boot monitor banner, invoke the flash
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5242 download/program command:<screen>Ready &gt;fl</screen></para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5243 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5244 <listitem><para>The monitor should now ask for input:
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5245 <screen>Flash ROM data copy to RAM
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5246 Please Send A S-format Record</screen>At this point copy the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5247 RedBoot ROM SREC file to the serial port:<screen>
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5248 $ cat redboot_ROM.eprom.srec &gt /dev/ttyS0</screen>Eventually you
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5249 should see something like<screen>Start Addrs = A1000000
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5250 End Addrs = A1xxxxxx
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5251 Transfer complete</screen> from the monitor.
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5252 </para></listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5253 <listitem><para>Set switch SW5-3 to OFF [boot from flash] and reboot the board. You
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5254 should now see the RedBoot banner.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5255 </listitem>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5256 </orderedlist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5257 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5258 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5259 <title>Special RedBoot Commands </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5260 <para>The <command>exec</command> command which allows the loading
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5261 and execution of Linux kernels
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5262 is supported for this board (see <xref linkend="executing-programs">). The <command>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5263 exec</command> parameters used for the SE7751 are:</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5264 <variablelist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5265 <varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5266 <term>-b <replaceable>&lt;addr></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5267 <listitem><para>Parameter block address. This is normally the first
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5268 page of the kernel image and defaults to 0x8c101000</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5269
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5270 <varlistentry><term>-i <replaceable>&lt;addr></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5271 <listitem><para>Start address of initrd
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5272 image</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5273
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5274 <varlistentry><term>-j <replaceable>&lt;size></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5275 <listitem><para>Size of initrd image</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5276
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5277 <varlistentry><term>-c <replaceable>"args"</replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5278 <listitem><para>Kernel arguments string</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5279
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5280 <varlistentry><term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5281 -m <replaceable>&lt;flags></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5282 <listitem><para>Mount rdonly flags. If set to a non-zero value the
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5283 root partition will be mounted read-only.</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5284
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5285 <varlistentry><term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5286 -f <replaceable>&lt;flags></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5287 <listitem><para>RAM disk flags. Should normally be 0x4000</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5288
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5289 <varlistentry><term>-r <replaceable>&lt;device number></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5290 <listitem><para>Root device specification. /dev/ram is 0x0101</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5291
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5292 <varlistentry><term>-l <replaceable>&lt;type></replaceable></term>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5293 <listitem><para>Loader type</para></listitem></varlistentry>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5294
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5295 </variablelist>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5296
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5297 <para>Finally the kernel entry address can be specified as an optional
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5298 argument. The default is 0x8c102000</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5299
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5300 <para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5301 On the SE7751, Linux expects to be loaded at address 0x8c101000 with
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5302 the entry point at 0x8c102000. This is configurable in the kernel
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5303 using the CONFIG_MEMORY_START option.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5304 </para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5305
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5306 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5307 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5308 <title>Memory Maps </title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5309 <para>RedBoot sets up the following memory map on the SE7751 board.<programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5310 Physical Address Range Description
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5311 ----------------------- -----------
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5312 0x80000000 - 0x803fffff Flash (MBM29LV160)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5313 0x81000000 - 0x813fffff EPROM (M27C800)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5314 0x8c000000 - 0x8fffffff SDRAM
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5315 0xb8000000 - 0xb8ffffff PCMCIA (MaruBun)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5316 0xb9000000 - 0xb9ffffff Switches
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5317 0xba000000 - 0xbaffffff LEDs
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5318 0xbd000000 - 0xbdffffff PCI MEM space
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5319 0xbe200000 - 0xbe23ffff PCI Ctrl space
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5320 0xbe240000 - 0xbe27ffff PCI IO space
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5321 </programlisting></para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5322 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5323 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5324 <title>Ethernet Driver</title>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5325 <para>The ethernet driver uses a hardwired ESA which can, at present,
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5326 only be changed in CDL.</para>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5327 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5328 <sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5329 <title>Rebuilding RedBoot</title>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5330
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5331 <para>These shell variables provide the platform-specific information
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5332 needed for building RedBoot according to the procedure described in
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5333 <xref linkend="Rebuilding-Redboot">:
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5334 <programlisting>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5335 export TARGET=se7751
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5336 export ARCH_DIR=sh
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5337 export PLATFORM_DIR=se7751
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5338 </programlisting>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5339 </para>
211
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5340
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5341 <para>The names of configuration files are listed above with the
6eb55882e01c Merge from eCos master repository on 2002-05-29-16:32:18-BST
jlarmour
parents: 210
diff changeset
5342 description of the associated modes.</para>
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5343 </sect2>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5344 </sect1>
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5345
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5346 </chapter>