This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
PDA REdboot - GDB file download
- From: "Amit Tuljapurkar" <amit1505 at rediffmail dot com>
- To: "eCos Discussion" <ecos-discuss at sources dot redhat dot com>
- Cc: "Gary Thomas" <gthomas at ecoscentric dot com>
- Date: 10 Dec 2002 06:47:00 -0000
- Subject: [ECOS] PDA REdboot - GDB file download
- Reply-to: "Amit Tuljapurkar" <amit1505 at rediffmail dot com>
Hello
As per your suggestion I run the ver command on redboot on ipaq
then it shows Memory from 0x0000 0000 to 0x0200 0000
And available memory from 0x0004 f000 to 0x01fb 0000. i checked
the hardware specs for the ipaq, it says that from 0x0000 0000 to
0x07ff ffff. Its all on board flash. & static ram starts from
0x4000 0000 to 0x 47ff ffff. And dram is from 0x c000 0000 to c7ff
ffff.
Still I continued and downloaded the Hello (ARM elf file) on H3600
ipaq. I used the following commands at gdb console..
1.set remotebaud 38400
2.target remote /dev/ttyS0
3.load hello 0x0004f000
Then it downloaded the file from 0x57000 onwards with text,data
etc all segments.However at the end it said base address to be
0x8000.
I can say "break main" & continue.. It shows me the right program
but it doesnt go to main. It goes to a function foo which i have
written before main. & there if i sa step i get following error.
Program received signal SIGBUS, Bus error.
0x00008030 in foo(arg=189916) at hello.c:6
What could be the reason ? Why i cant debug this simple program
hello.c?
Thank you in advance for your replies..
Amit Tuljapurkar
On Tue, 26 Nov 2002 Gary Thomas wrote :
On Tue, 2002-11-26 at 05:30, Amit Tuljapurkar wrote:
>
> Hello,
>
> I have installed Redboot on iPAQ PDA in its RAM. & I
> have Linux host machine runing GDB. I want to
> communicate & remote debug a sample applicaiton
> running on the PDA. I can establish remote connection
> but I could not load any file to PDA using "load".
> Following are the commands I am giving on the gdb
> console.
> 1. set debug remote 1
> 2. set remotebaud 38400
> 3. set target remote /dev/ttyS0
> 4. load
>
> Here it starts downloading the file but for few files
> it says
> "Error in accessing memory segment .interp"
> & for other files it says
> "Timed out.. Packet error.. Ignoring & continuing.."
>
> Can you please tell me how to go about this problem??
> I am using the arm-linux-gcc for compilation.
You're trying to load code into non-existent memory, or
into memory that RedBoot is using itself. Try starting up
RedBoot to a "terminal" (like minicom) and running the
"version" command. This will display the available memory
range. For example:
RAM: 0x00000000-0x00800000, 0x0002eab0-0x007ed000 available
says that this platform has 8MB, but only the RAM from
0x0002eab0
through 0x007ed000 can be used to load programs. (the rest
is in use by RedBoot itself)
--
------------------------------------------------------------
Gary Thomas |
eCosCentric, Ltd. |
+1 (970) 229-1963 | eCos & RedBoot experts
gthomas@ecoscentric.com |
http://www.ecoscentric.com/ |
------------------------------------------------------------
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss