public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
* RE: [ECOS] Embedded ICE programming
@ 2000-07-24 17:46 Fabrice Gautier
  2000-07-24 18:30 ` Grant Edwards
  0 siblings, 1 reply; 8+ messages in thread
From: Fabrice Gautier @ 2000-07-24 17:46 UTC (permalink / raw)
  To: 'Grant Edwards', Siegfried Schaefer
  Cc: Fabrice Gautier, Ecos-List (E-mail)

Hi,

What kind of configuration for eCos and the board are you using?

With the same configuration that when i use a gdt stub with serial port, i
get a Memory Access Error when loading.

In Insight the EmbeddedICE target is refered as ARM/Angel, With the command
line i can connect to JEENI using "target rdi com1"

Does I need to run Angel in order to use JEENI? In this case I'm not sure
eCos will be very happy with Angel around...

Thanks

-- 
Fabrice Gautier
fabrice_gautier@sdesigns.com 

> -----Original Message-----
> From: Grant Edwards [ mailto:grante@visi.com ]
> Sent: Monday, July 24, 2000 1:49 PM
> To: Siegfried Schaefer
> Cc: Fabrice Gautier; Ecos-List (E-mail)
> Subject: Re: [ECOS] Embedded ICE programming
> 
> 
> On Mon, Jul 24, 2000 at 11:03:39AM +0200, Siegfried Schaefer wrote:
> 
> > we are also using gdb with jeeni. What we have discover is 
> that you only
> > loose controll if you don't set a breakpoint. Of course, setting a
> > breakpoint is not always a good solution.
> > If you try to connect again to your target than it will stopped
> > immediatedly. This is a bad but functional way to stop the target. I
> > think that there must be a problem with the communication 
> between gdb
> > and jeeni. 
> 
> If you're using a Jeeni, you should be able to stop the target
> by sending a SIGINT to gdb.  On my Linux systems, pressing
> Ctrl-C at the gdb prompt does this. IIRC, that patch made it
> into the gdb source tree about 6 months ago.
> 
> -- 
> Grant Edwards
> grante@visi.com
> 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [ECOS] Embedded ICE programming
  2000-07-24 17:46 [ECOS] Embedded ICE programming Fabrice Gautier
@ 2000-07-24 18:30 ` Grant Edwards
  0 siblings, 0 replies; 8+ messages in thread
From: Grant Edwards @ 2000-07-24 18:30 UTC (permalink / raw)
  To: Fabrice Gautier; +Cc: Siegfried Schaefer, Ecos-List (E-mail)

On Mon, Jul 24, 2000 at 05:46:57PM -0700, Fabrice Gautier wrote:

> What kind of configuration for eCos and the board are you using?

I'm using a custom board with a Samsung 32C5000 microcontroller.  I use a
pretty standard RAM startup configuration with no gdb stubs, no cygmon, and
no Angel.

> With the same configuration that when i use a gdt stub with serial port, i
> get a Memory Access Error when loading.

With my board I first have to load a small assembly language program into
the processor's 8K internal RAM and run it (using the Jeeni/gdb).  That
program sets up the address decoding logic in the processor's memory
controller and enables the external RAM.  Then I load my eCos application.

In the production environment there is a boot-loader program in ROM that
loads the eCos applicatoin via Ethernet, but for debugging I use the simple
memory setup program and Jeeni.

Does your board have to have it's memory controller configured before you
load the eCos application?  You might be able to configure the board
properly using gdb write commands like "set *0x234567 = 0x12345678". I can't
do that with my processor because the memory controller configuration
register set has to be written using a single STM instruction.  So I wrote a
10 line assembly-language program to do that.

> In Insight the EmbeddedICE target is refered as ARM/Angel, With the command
> line i can connect to JEENI using "target rdi com1"

That's right.

> Does I need to run Angel in order to use JEENI? In this case I'm not sure
> eCos will be very happy with Angel around...

No.  If you run Angel, then gdb talks to it through a serial port.  With the
Jeeni, you don't need any software debugging code on the ARM target.  The
Jeeni (along with the EmbeddedICE JTAG core on the processor) does all of
single-stepping, breakpoints, etc.

-- 
Grant Edwards
grante@visi.com

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [ECOS] Embedded ICE programming
  2000-07-25 10:16 Fabrice Gautier
@ 2000-07-25 10:22 ` Grant Edwards
  0 siblings, 0 replies; 8+ messages in thread
From: Grant Edwards @ 2000-07-25 10:22 UTC (permalink / raw)
  To: Fabrice Gautier; +Cc: Ecos-List (E-mail)

On Tue, Jul 25, 2000 at 10:15:05AM -0700, Fabrice Gautier wrote:

> > Yes.  You should be able to stop execution of the ARM by
> > sending gdb a SIGINT.
>
> > Yes, that should work.  What version of gdb are you using?
> > What host system?
> 
> I'm using GDB with the Insight GUI, the host being a WinNT PC
> running cygwin. 

Ah.  I don't know if/how DDD/gdb/signals work under Cygwin.  You
should probably ask on the gdb mailing list (sign up at the
same web page as the eCos mailing list).

> The Stop Sign is the interrupt button of DDD.

My interrupt button just says "interrupt" on it.  I think.  I
haven't used DDD for a while.

-- 
Grant Edwards
grante@visi.com

^ permalink raw reply	[flat|nested] 8+ messages in thread

* RE: [ECOS] Embedded ICE programming
@ 2000-07-25 10:16 Fabrice Gautier
  2000-07-25 10:22 ` Grant Edwards
  0 siblings, 1 reply; 8+ messages in thread
From: Fabrice Gautier @ 2000-07-25 10:16 UTC (permalink / raw)
  To: 'Grant Edwards'; +Cc: Ecos-List (E-mail)

> -----Original Message-----
> From: Grant Edwards [ mailto:grante@visi.com ]
> Subject: Re: [ECOS] Embedded ICE programming
> > 
> > Does it support external break?
> 
> Yes.  You should be able to stop execution of the ARM by sending gdb a
> SIGINT.
> 
> I don't know what the "stop sign" is.  I usually run gdb from 
> the command
> line, and ctrl-C stops the ARM.  Sometimes I run gdb using 
> DDD, and clicking
> the "interrupt" button stops the ARM.
> 
> > But external break should be possible
> 
> Yes, that should work.  What version of gdb are you using?  What host
> system?

I'm using GDB with the Insight GUI, the host being a WinNT PC running
cygwin.
The Stop Sign is the interrupt button of DDD.


A+
-- 
Fabrice Gautier
fabrice_gautier@sdesigns.com 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [ECOS] Embedded ICE programming
  2000-07-24 19:39 Fabrice Gautier
@ 2000-07-24 21:19 ` Grant Edwards
  0 siblings, 0 replies; 8+ messages in thread
From: Grant Edwards @ 2000-07-24 21:19 UTC (permalink / raw)
  To: Fabrice Gautier; +Cc: Ecos-List (E-mail)

On Mon, Jul 24, 2000 at 07:39:10PM -0700, Fabrice Gautier wrote:

>> The Jeeni (along with the EmbeddedICE JTAG core on the processor) does all
>> of single-stepping, breakpoints, etc.
> 
> Does it support external break?

Yes.  You should be able to stop execution of the ARM by sending gdb a
SIGINT.

> For now, I tried with a minimal eCos program: no libc, no serial driver, no
> gdb stub in HAL, no GDB external break support, no multithreading debug
> etc.... But a very simple
> "while(1) i=i+2;"
> program
> 
> So I can connect to jeeni, i can load the program, If i set a breakpoint in
> my main it stop correctly. But I can't interrupt it by hitting the Stop
> sign. (Seems thats what Siegfried Schaefer talked about)

I don't know what the "stop sign" is.  I usually run gdb from the command
line, and ctrl-C stops the ARM.  Sometimes I run gdb using DDD, and clicking
the "interrupt" button stops the ARM.

> I suppose there is no way to have MultiThreading Debug Support via
> Jeeni.(Unless maybe there is some support in eCos).  

I don't think that Gdb with Jeeni is kernel-aware the way it is with gdb
stubs.

> But external break should be possible

Yes, that should work.  What version of gdb are you using?  What host
system?

-- 
Grant Edwards
grante@visi.com

^ permalink raw reply	[flat|nested] 8+ messages in thread

* RE: [ECOS] Embedded ICE programming
@ 2000-07-24 19:39 Fabrice Gautier
  2000-07-24 21:19 ` Grant Edwards
  0 siblings, 1 reply; 8+ messages in thread
From: Fabrice Gautier @ 2000-07-24 19:39 UTC (permalink / raw)
  To: 'Grant Edwards'; +Cc: Ecos-List (E-mail)

> -----Original Message-----
> From: Grant Edwards [ mailto:grante@visi.com ]
> Subject: Re: [ECOS] Embedded ICE programming
> 
> 
> On Mon, Jul 24, 2000 at 05:46:57PM -0700, Fabrice Gautier wrote:
> 
> > What kind of configuration for eCos and the board are you using?
> 
> I'm using a custom board with a Samsung 32C5000 
> microcontroller.  I use a
> pretty standard RAM startup configuration with no gdb stubs, 
> no cygmon, and
> no Angel.
> 
> > With the same configuration that when i use a gdt stub with 
> > serial port, i
> > get a Memory Access Error when loading.

OK, this was my fault... The problem is not here.

> The Jeeni (along with the EmbeddedICE JTAG core on the processor) 
> does all of
> single-stepping, breakpoints, etc.

Does it support external break? 

For now, I tried with a minimal eCos program: no libc, no serial driver, no
gdb stub in HAL, no GDB external break support, no multithreading debug
etc.... But a very simple
"while(1) i=i+2;"
program

So I can connect to jeeni, i can load the program, If i set a breakpoint in
my main it stop correctly. But I can't interrupt it by hitting the Stop
sign. (Seems thats what Siegfried Schaefer talked about)

I suppose there is no way to have MultiThreading Debug Support via
Jeeni.(Unless maybe there is some support in eCos) . But external break
should be possible 

Thanks

A+
-- 
Fabrice Gautier
fabrice_gautier@sdesigns.com 

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [ECOS] Embedded ICE programming
  2000-07-24  2:05 Siegfried Schaefer
@ 2000-07-24  8:48 ` Grant Edwards
  0 siblings, 0 replies; 8+ messages in thread
From: Grant Edwards @ 2000-07-24  8:48 UTC (permalink / raw)
  To: Siegfried Schaefer; +Cc: Fabrice Gautier, Ecos-List (E-mail)

On Mon, Jul 24, 2000 at 11:03:39AM +0200, Siegfried Schaefer wrote:

> we are also using gdb with jeeni. What we have discover is that you only
> loose controll if you don't set a breakpoint. Of course, setting a
> breakpoint is not always a good solution.
> If you try to connect again to your target than it will stopped
> immediatedly. This is a bad but functional way to stop the target. I
> think that there must be a problem with the communication between gdb
> and jeeni. 

If you're using a Jeeni, you should be able to stop the target
by sending a SIGINT to gdb.  On my Linux systems, pressing
Ctrl-C at the gdb prompt does this. IIRC, that patch made it
into the gdb source tree about 6 months ago.

-- 
Grant Edwards
grante@visi.com

^ permalink raw reply	[flat|nested] 8+ messages in thread

* [ECOS] Embedded ICE programming
@ 2000-07-24  2:05 Siegfried Schaefer
  2000-07-24  8:48 ` Grant Edwards
  0 siblings, 1 reply; 8+ messages in thread
From: Siegfried Schaefer @ 2000-07-24  2:05 UTC (permalink / raw)
  To: Fabrice Gautier; +Cc: Ecos-List (E-mail)

Hallo Mr. Gautier,

we are also using gdb with jeeni. What we have discover is that you only
loose controll if you don't set a breakpoint. Of course, setting a
breakpoint is not always a good solution.
If you try to connect again to your target than it will stopped
immediatedly. This is a bad but functional way to stop the target. I
think that there must be a problem with the communication between gdb
and jeeni. 

I hope this will help you.

With best regards, Siegfried Schaefer
Schaefer EDV-Dienstleistungen und Softwareentwicklungen

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2000-07-25 10:22 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-07-24 17:46 [ECOS] Embedded ICE programming Fabrice Gautier
2000-07-24 18:30 ` Grant Edwards
  -- strict thread matches above, loose matches on Subject: below --
2000-07-25 10:16 Fabrice Gautier
2000-07-25 10:22 ` Grant Edwards
2000-07-24 19:39 Fabrice Gautier
2000-07-24 21:19 ` Grant Edwards
2000-07-24  2:05 Siegfried Schaefer
2000-07-24  8:48 ` Grant Edwards

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).