annotate packages/hal/arm/aeb/current/misc/Notes @ 2:443894e2e912 ecos-v1_2_1-release

Block commit of eCos version 1.2.1
author jlarmour
date Tue, 11 May 1999 12:24:34 +0000
parents
children 18ee5a9c102e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
1 ===========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
2 ####COPYRIGHTBEGIN####
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
3
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
4 -------------------------------------------
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
5 The contents of this file are subject to the Cygnus eCos Public License
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
6 Version 1.0 (the "License"); you may not use this file except in
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
7 compliance with the License. You may obtain a copy of the License at
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
8 http://sourceware.cygnus.com/ecos
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
9
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
10 Software distributed under the License is distributed on an "AS IS"
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
11 basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
12 License for the specific language governing rights and limitations under
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
13 the License.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
14
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
15 The Original Code is eCos - Embedded Cygnus Operating System, released
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
16 September 30, 1998.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
17
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
18 The Initial Developer of the Original Code is Cygnus. Portions created
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
19 by Cygnus are Copyright (C) 1998,1999 Cygnus Solutions. All Rights Reserved.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
20 -------------------------------------------
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
21
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
22 ####COPYRIGHTEND####
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
23 ===========================================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
24
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
25 1999-01-05, revised 1999-03-11
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
26
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
27 How to build and install the GDB module on the AEB-1
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
28 ====================================================
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
29
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
30 Overview
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
31 --------
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
32
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
33 The ARM AEB-1 comes with tools in ROM. These include a simple FLASH
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
34 management tool and the Angel (R) monitor. eCos for the ARM AEB-1
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
35 comes with GDB stubs suitable for programming into the onboard FLASH.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
36 GDB is the preferred debug environment for eCos, but Angel must be
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
37 used to initially install the GDB stubs.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
38
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
39 Once this bootstrapping is done, you can use GDB to load and debug
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
40 programs on the AEB-1 board.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
41
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
42 The following steps will have you:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
43
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
44 * talk to the AEB-1 board with a terminal emulator (or a real
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
45 terminal!)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
46
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
47 * enable ARM's Angel ROM monitor
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
48
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
49 * use GDB with Angel to download a configuration of eCos with GDB
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
50 stubs which will act as a ROM monitor
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
51
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
52 * talk to the AEB-1 with a terminal emulator again, and tell it to
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
53 write the new module to flash
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
54
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
55 * tell the board to use this new monitor, and then hook GDB up to it
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
56 for real debugging
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
57
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
58 Talking to the board
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
59 --------------------
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
60
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
61 Connect a terminal or computer's serial port to the ARM AEB-1. On a
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
62 PC with a 9-pin serial port, you can use the cable shipped by ARM with
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
63 no modification.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
64
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
65 Set the terminal or terminal emulator to 9600N1 (9600 baud, no parity,
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
66 1 stop bit).
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
67
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
68 Reset the board by pressing the little reset button on the top. You
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
69 will see the following text:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
70
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
71 ARM Evaluation Board Boot Monitor 0.01 (19 APR 1998)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
72 Press ENTER within 2 seconds to stop autoboot
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
73
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
74 Press ENTER quickly, and you will get the boot prompt:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
75
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
76 Boot:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
77
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
78
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
79 Downloading the GDB stubs
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
80 -------------------------
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
81
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
82 Run the angel monitor by typing the following at the Boot: prompt:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
83
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
84 Boot: plugin angel
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
85 Boot: angel
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
86
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
87 Then exit the terminal emulator and start up gdb with the GDB module:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
88
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
89 $ arm-elf-gdb -nw loaders/arm-aeb/gdb_module.img
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
90 (gdb) set remotebaud 9600
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
91 (gdb) target rdi s=<YOUR SERIAL PORT>
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
92
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
93 On Windows, the serial port could be com1, com2, etc. On a UNIX or
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
94 Linux system, the serial port would be /dev/cua0 or /dev/cua1.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
95 Examples are:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
96
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
97 (gdb) target rdi s=com1
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
98 (gdb) target rdi s=/dev/cua0
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
99
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
100 Finally, load the GDB stubs image:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
101
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
102 (gdb) load
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
103 Loading section .rom_vectors, size 0x44 lma 0xc000
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
104 Loading section .text, size 0x3544 lma 0xc044
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
105 Loading section .rodata, size 0x164 lma 0xf588
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
106 Loading section .data, size 0x110 lma 0xf6ec
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
107 Start address 0xc044 , load size 14332
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
108 Transfer rate: 12739 bits/sec.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
109
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
110 (Note that the sizes may not exactly match the ones you see on your
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
111 system.)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
112
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
113 Once the loading is done, quit GDB:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
114
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
115 (gdb) quit
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
116
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
117
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
118 Activating the GDB stubs
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
119 ------------------------
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
120
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
121 Connect a terminal emulator to the board again, reset the board, and
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
122 type enter within two seconds to get the Boot: prompt. This is the
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
123 same thing you did at the beginning of this procedure.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
124
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
125 Commit the GDB stubs module to flash:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
126
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
127 Boot: flashwrite 4018000 C000 8000
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
128
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
129 Verify that the eCos/"GDB stubs" module is now added in the list of
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
130 modules in the board:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
131
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
132 Boot: rommodules
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
133
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
134 You should see the following output:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
135
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
136 Header Base Limit
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
137 04000004 04000000 040034a8 BootStrap 1.00 (14 Aug 1998)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
138 04003a74 04003800 04003bc0 Production Test 1.00 (13 Aug 1998)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
139 0400e4f4 04004000 0400e60f Angel 1.02 (12 MAY 1998)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
140 0401ac00 04018000 0401aed8 eCos 1.2 (26 Feb 1999) GDB stubs
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
141
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
142 Now make the eCos/"GDB stubs" module be the default monitor:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
143
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
144 Boot: plugin eCos
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
145
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
146
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
147 Running and debugging an application
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
148 ------------------------------------
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
149
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
150 Configure eCos from scratch for the ARM AEB-1 platform, and build your
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
151 application. Remember that the AEB-1 board only has 128K of RAM.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
152
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
153 Exit from the terminal emulator (you will not need it anymore for
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
154 normal operations), and run gdb:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
155
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
156 $ arm-elf-gdb -nw executable
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
157 (gdb) set remotebaud 38400
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
158 (gdb) target remote <YOUR SERIAL PORT>
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
159 (gdb) load
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
160
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
161 You can now run your program in the usual way under GDB'S control
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
162
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
163 Notice that the GDB stub runs at 38400 baud.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
164
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
165
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
166 Building the GDB stubs
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
167 ----------------------
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
168
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
169 We provide the GDB stubs image in the directory
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
170 loaders/arm-aeb/gdb_module.img, but here are instructions on how to
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
171 rebuild them if you should ever need to.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
172
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
173 1. Configure a minimal eCos system with all packages except 'infra'
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
174 disabled. If you are doing manual configuration, you can do so
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
175 with
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
176
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
177 tcl /work2/ecc/ecc/pkgconf.tcl \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
178 --target=arm --platform=aeb --startup=stubs \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
179 --disable CYGPKG_KERNEL --disable CYGPKG_UITRON \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
180 --disable CYGPKG_LIBC --disable CYGPKG_LIBM \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
181 --disable CYGPKG_ERROR --disable CYGPKG_IO \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
182 --disable CYGPKG_IO_SERIAL --disable CYGPKG_DEVICES_WALLCLOCK \
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
183 --disable CYGPKG_DEVICES_WATCHDOG
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
184
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
185 and if you are using the Configuration Tool GUI, you can select the
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
186 ARM AEB platform, with GDB stubs startup, and enable the HAL and
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
187 INFRA packages and disable all other packages.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
188
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
189 2. Edit <hal/hal.h> to enable GDB:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
190 #define CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
191 #undef CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
192 #undef CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
193
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
194 you can use the following patch:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
195
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
196 --- pkgconf/hal.h~ Wed Mar 10 13:08:58 1999
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
197 +++ pkgconf/hal.h Thu Mar 11 15:53:16 1999
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
198 @@ -356,9 +356,9 @@
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
199
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
200 }}CFG_DATA */
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
201
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
202 -#undef CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
203 +#define CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
204 #undef CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
205 -#define CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
206 +#undef CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
207
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
208 /*
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
209 * NOTE:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
210
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
211
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
212 3. make misc
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
213
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
214 The gdb_module.img file will be built in the directory
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
215 hal/arm/aeb/current/misc
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
216
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
217
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
218 Alternate way of loading the initial stubs
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
219 ------------------------------------------
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
220
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
221 Using the AEB-1 module tool, install the GDB stubs from the provided
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
222 ".UU" file.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
223
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
224 >>> This is an annotated 'terminal' session with the AEB-1 monitor:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
225
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
226 ARM Evaluation Board Boot Monitor 0.01 (19 APR 1998)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
227 Press ENTER within 2 seconds to stop autoboot
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
228 Boot: help
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
229 Module is BootStrap 1.00 (14 Aug 1998)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
230
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
231 Help is available on:
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
232 Help Modules ROMModules UnPlug PlugIn
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
233 Kill SetEnv UnSetEnv PrintEnv DownLoad
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
234 Go GoS Boot PC FlashWrite
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
235 FlashLoad FlashErase
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
236
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
237 Boot: download c000
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
238 Ready to download. Use 'transmit' option on terminal emulator to download file.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
239
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
240 ... at this point, I told my terminal emulator (minicom) to download the ASCII file
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
241 gdb_module.img.UU (probably needs a different name on Win/NT)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
242 I had to enter ^D when the download was complete to get the monitor to come back.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
243
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
244 Loaded file gdb_module.img.raw at address 0000c000, size = 13905
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
245
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
246 Boot: flashwrite 4018000 c000 4000
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
247
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
248 As above, this command actually programs the FLASH.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
249
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
250 Boot: rommodules
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
251 Header Base Limit
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
252 04000004 04000000 040034a8 BootStrap 1.00 (14 Aug 1998)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
253 04003a74 04003800 04003bc0 Production Test 1.00 (13 Aug 1998)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
254 0400e4f4 04004000 0400e60f Angel 1.02 (12 MAY 1998)
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
255 0401b608 04018000 0401b844 eCos 1.2 (26 Feb 1999) GDB stubs
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
256
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
257 This verifies that the eCos GDB stubs are available in FLASH.
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
258
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
259 Boot: plugin ecos
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
260
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
261 This makes the eCos GDB stubs the default "monitor." When reset the
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
262 AEB-1 will start the GDB stubs, after the initial 2 second escape
443894e2e912 Block commit of eCos version 1.2.1
jlarmour
parents:
diff changeset
263 period.