This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: i386 platform !


Have you tried just connecting to redboot with GDB before uploading the application? I think (someone can correct me on this) that Redboot will only "talk" on its first communication channel. So if you load the application with tftp, it assumes that you will not be using gdb. I use redboot with a i386 platform, and it was working fine until my application got really big. I'm still working on solving that, but I can run all of the ecos tests on it. Also make sure you application has a different IP address than redboot. (once you get that far.)

David Brennan

Jean-François Mullet wrote:

Hi Gary,

The connection between the host and the target is OK because I can upload the application using tftp and run it without any problem.

Here is a screenshot of host console (I do not have serial port):

(gdb) set debug remote 1
(gdb) target remote 192.168.0.10:9000
Remote debugging using 192.168.0.10:9000
Sending packet: $Hc-1#09...putpkt: Junk: RedBoot>
Ack
Packet received: OK
Sending packet: $qC#b4...Ack
Packet received: E02
Sending packet: $qOffsets#4b...Ack
Packet received:
Sending packet: $?#3f...Ack
Packet received: S05
Sending packet: $Hg0#df...Ack
Packet received: OK
Sending packet: $g#67...Sending packet: $g#67...Sending packet: $g#67...Sending
packet: $g#67...Timed out.
Timed out.
Timed out.
Ignoring packet error, continuing...
Bad register packet; fetching a new packet
Timed out.
Timed out.
Timed out.
Ignoring packet error, continuing...
Bad register packet; fetching a new packet
Timed out.
Timed out.
Timed out.
Ignoring packet error, continuing...
Bad register packet; fetching a new packet
Timed out.
Timed out.
Couldn't establish connection to remote target
Remote communication error: Connection reset by peer.

Concerning the x86 as an embedded CPU I do agree with you in a general case but the board I'm using is a fanless PC-104 powered by a STPC Elite. PC104 consortium: http://www.pc104.org/. It's far away from a recent powerpc but I do not plan to implement any "fat" algorithm. I'm using this kind of board to take advantage of extension boards. The extension bus is based on the PC ISA bus which is obsolete in general case; I may change architecture when the concept will be validated. I will then perhaps try a more eCos conventional CPU ;-).

JF

-----Message d'origine-----
De : Gary Thomas [mailto:gary@mlbassoc.com] Envoyé : Friday, November 12, 2004 23:40
À : Jean-François Mullet
Cc : Andrew Lunn; ecos-discuss@sources.redhat.com
Objet : RE: [ECOS] i386 platform !


On Fri, 2004-11-12 at 15:36, Jean-François Mullet wrote:


Hi Andrew,

I can build an image without any problem; I just cannot connect to it with gdb. I've tested eCos versions (randomly) from two years ago till the last version on CVS and I've never been able to connect with gdb.
Sometimes the toolchain is not compatible with the eCos source code (compilation options...) but the error is obvious and an update is easy and fast.



Are you sure you have communication between your host and the target
board? e.g. you should be able to connect to the target via a serial
connection using something like minicom (Linux) or hyperterm (Windows).
Set the baud rate, etc. You should get the RedBoot prompt. Then to
test the GDB connection, try typing this: $g#67 You won't see anything
get echoed, but you should see some characters come back on the terminal. If that works, you should be able to get into gdb.


Once you know the basic communication is working, try this:
* run GDB on the host
(gdb) set remotebaud 38400
(gdb) set remotedebug 1
(gdb) tar rem /dev/ttyS0     (on Linux)
(gdb) tar rem com1           (on Windows)

Let us know if this doesn't help.



It would be nice to know on which platform people are using eCos.
It seems that x86 is not the most used according the number of relative questions on the mailing list.



Indeed - the x86 is not really an embedded platform :-) Most eCos platforms are based on PowerPC, ARM or MIPS embedded processors.




JF

-----Message d'origine-----
De : Andrew Lunn [mailto:andrew@lunn.ch] Envoyé : Friday, November 12, 2004 16:01
À : Jean-François Mullet
Cc : ecos-discuss@sources.redhat.com
Objet : Re: [ECOS] i386 platform !


On Fri, Nov 12, 2004 at 02:45:30PM +0100, Jean-Fran?ois Mullet wrote:


Hi,



I'm trying to setup a redboot image to accept remote gdb debug on
i386 target (which is supposed to be really easy !).

The only working configuration have been able to use is the prebuild
version actually in CVS which is more than 2 years old.

Any other prebuild version or any version I can build whatever the
ecos, cygwin and toolchain version I'm using is not accepting gdb
remote connection.


How are you building it. I just built one:

lunn@londo:~/eCos/work2$ ecosconfig new pc redboot
U CYGSEM_HAL_USE_ROM_MONITOR, new inferred value 0
U CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK, new inferred value 0
lunn@londo:~/eCos/work2$ ecosconfig import ../anoncvs-clean/packages/hal/i386/pc/current/misc/redboot_FLOPPY.ecm U CYGHWR_HAL_I386_FPU_SWITCH_LAZY, new inferred value 0
lunn@londo:~/eCos/work2$ ecosconfig tree lunn@londo:~/eCos/work2$ make -s
headers finished
/home/lunn/eCos/anoncvs-clean/packages/devs/eth/intel/i82559/current/src/if_i82559.c: In function `i82559_start':
/home/lunn/eCos/anoncvs-clean/packages/devs/eth/intel/i82559/current/src/if_i82559.c:1664: warning: implicit declaration of function `memset'
/home/lunn/eCos/anoncvs-clean/packages/devs/eth/intel/i82559/current/src/if_i82559.c: In function `i82559_recv':
/home/lunn/eCos/anoncvs-clean/packages/devs/eth/intel/i82559/current/src/if_i82559.c:2135: warning: implicit declaration of function `memcpy'
/home/lunn/eCos/anoncvs-clean/packages/devs/eth/intel/i82559/current/src/if_i82559.c: At top level:
/home/lunn/eCos/anoncvs-clean/packages/devs/eth/intel/i82559/current/src/if_i82559.c:2712: warning: `eth_dsr' defined but not used
/home/lunn/eCos/anoncvs-clean/packages/hal/common/current/src/hal_stub.c: In function `handle_exception_cleanup':
/home/lunn/eCos/anoncvs-clean/packages/hal/common/current/src/hal_stub.c:457: warning: comparison between pointer and integer
/home/lunn/eCos/anoncvs-clean/packages/redboot/current/src/fs/disk.c: In function `find_dos_partitions':
/home/lunn/eCos/anoncvs-clean/packages/redboot/current/src/fs/disk.c:94: warning: unused variable `tmp'
build finished


I don't have an i386 board to test it with, but it seems to compile OK
except for some warnings.

Andrew



-- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]