public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
* RE: [ECOS] printf
@ 2000-12-06 14:08 Fabrice Gautier
  2000-12-06 14:45 ` Grant Edwards
  0 siblings, 1 reply; 13+ messages in thread
From: Fabrice Gautier @ 2000-12-06 14:08 UTC (permalink / raw)
  To: 'Jonathan Larmour', Ilko Iliev; +Cc: ecos-discuss

> -----Original Message-----
> From: Jonathan Larmour [ mailto:jlarmour@cygnus.co.uk ]
> Subject: Re: [ECOS] printf
> 
> Ilko Iliev wrote:
> > 
> > Hi all!
> > 
> > I have successful compiled hello.c from eCOS examples.
> > I start the program with arm-elf-gdb (with simulator and 
> JTAG wiggler).
> > It hangs by printf().
> > 
> > How work printf()? Where is the printf() output?
> 
> On the relevant serial line of your target. But if you are 
> not using the
> serial line for debugging, then you will need to configure 
> eCos to use the
> serial line directly, and not wrap things in GDB packets.

The best way would be for eCos to use semihosting when using a JTAG
device...
Does the soon(?)-coming ARM Integrator port plan to suport that?

Regards,

-- 
Fabrice Gautier
fabrice_gautier@sdesigns.com 

^ permalink raw reply	[flat|nested] 13+ messages in thread
* [ECOS] printf
@ 2006-05-10 10:30 Emmanuel Viollet
  2006-05-10 10:54 ` Andrew Lunn
  0 siblings, 1 reply; 13+ messages in thread
From: Emmanuel Viollet @ 2006-05-10 10:30 UTC (permalink / raw)
  To: ecos-discuss

Hi (again... ;) )

I know I must be becoming a bit of a pain, but eCOS is really new to me, 
and I'm sometimes quite lost...

I'm having trouble compiling the following program :
/* this is a simple hello world program */
#include <stdio.h>

int main(void)
{
 printf("Hello, eCos world!\n");
 return 0;
}

Compilation works fine. But the linker complains that printf() is missing.
How are the different parts of the C library defined? I suppose that 
it's possible to implement a subset of the ANSI specifications, but I 
can't find how this is done in the configuration tool.
Any links?

In advance, thanks.

-- 
Emmanuel Viollet
Software engineer
Webdyn
e-mail : Emmanuel.Viollet@webdyn.com
Tel    : +33 (0)1 39 04 29 55


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

^ permalink raw reply	[flat|nested] 13+ messages in thread
* [ECOS] printf
@ 2001-08-30  0:02 Joerg Rapka
  2001-09-05  7:38 ` Jonathan Larmour
  0 siblings, 1 reply; 13+ messages in thread
From: Joerg Rapka @ 2001-08-30  0:02 UTC (permalink / raw)
  To: ecos-discuss

Hello all

The default console device is set by the configuration (e.g.
CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE="/dev/tty0").
Can this configuration be overridden by the application? - I have two serial
lines and the application
should select one for printf.


Thanks for hints,
Joerg

^ permalink raw reply	[flat|nested] 13+ messages in thread
* RE: [ECOS] printf
@ 2000-12-07 10:30 Fabrice Gautier
  2000-12-07 11:03 ` Grant Edwards
  2000-12-07 12:57 ` Dave Airlie
  0 siblings, 2 replies; 13+ messages in thread
From: Fabrice Gautier @ 2000-12-07 10:30 UTC (permalink / raw)
  To: 'Grant Edwards'
  Cc: 'Jonathan Larmour', Ilko Iliev, ecos-discuss

> -----Original Message-----
> From: Grant Edwards [ mailto:grante@visi.com ]
> Subject: Re: [ECOS] printf
> 
> > 
> > The best way would be for eCos to use semihosting when using a
> > JTAG device... Does the soon(?)-coming ARM Integrator port plan
> > to suport that?
> 
> I don't see how you could do semihosting when using JTAG.  

Multi-ICE, AXD (the new ARM Debugger) and the ARM C library do it very well.
This is done using a software interrupt. Somehow the debugger or the
multi-ICE catch the call in the swi handler (a breakpoint) then I guess that
the Multi-ICE should detect the parameter passed to the software interrupt,
execute the function on the host set the result in the target and then
restart the target.
 
> AFAIK, user code on the ARM has no access at all to the ICE
> macrocell, so there's no way for application code to send or
> get data from something at the other end of the JTAG port.

In fact it's more like the host loading the information from the target than
the target sending the information throught the JTAG. The target just has to
write his parameters in a well defined set of register.

> The
> Angel Debugging Protocol used by some JTAG interfaces has
> support for semihosting, but I think it's only used if you're
> using the Angel monitor (or other user SW) to process ADP
> packets on the ARM.

I guess the Multi-ICE and other ARM product also use ADP. (even ARMulator
support semihosting )

In the ARM debugger you have some options to enable or disable semihosting,
so probably your gdb would have to handle the call. I think the ARM debugger
has some DLL to do that. The easiest way to handle that with eCos would
probably to have some kind of translator program that catch and handle the
semihosted calls

Regards,
-- 
Fabrice Gautier
fabrice_gautier@sdesigns.com 






^ permalink raw reply	[flat|nested] 13+ messages in thread
* [ECOS] printf
@ 2000-12-06  1:33 Ilko Iliev
  2000-12-06 11:25 ` Jonathan Larmour
  0 siblings, 1 reply; 13+ messages in thread
From: Ilko Iliev @ 2000-12-06  1:33 UTC (permalink / raw)
  To: ecos-discuss

Hi all!

I have successful compiled hello.c from eCOS examples.
I start the program with arm-elf-gdb (with simulator and JTAG wiggler).
It hangs by printf().

How work printf()? Where is the printf() output?


best regards
Ilko

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

end of thread, other threads:[~2006-05-10 10:54 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-12-06 14:08 [ECOS] printf Fabrice Gautier
2000-12-06 14:45 ` Grant Edwards
  -- strict thread matches above, loose matches on Subject: below --
2006-05-10 10:30 Emmanuel Viollet
2006-05-10 10:54 ` Andrew Lunn
2001-08-30  0:02 Joerg Rapka
2001-09-05  7:38 ` Jonathan Larmour
2000-12-07 10:30 Fabrice Gautier
2000-12-07 11:03 ` Grant Edwards
2000-12-07 12:57 ` Dave Airlie
2000-12-07 11:12   ` Grant Edwards
2000-12-07 19:18   ` Jonathan Larmour
2000-12-06  1:33 Ilko Iliev
2000-12-06 11:25 ` Jonathan Larmour

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).