test app

Sascha Hauer s.hauer at pengutronix.de
Tue Mar 8 06:43:19 EST 2011


On Tue, Mar 08, 2011 at 11:09:57AM +0100, Vanalme Filip wrote:
> > -----Original Message-----
> > From: barebox-bounces at lists.infradead.org [mailto:barebox-
> > bounces at lists.infradead.org] On Behalf Of Vanalme Filip
> > Sent: dinsdag 8 maart 2011 9:13
> > To: Baruch Siach
> > Cc: barebox at lists.infradead.org
> > Subject: RE: test app
> > 
> > Thank you Baruch ! Good starting point for my test app.
> > 
> > > -----Original Message-----
> > > From: Baruch Siach [mailto:baruch at tkos.co.il]
> > > Sent: dinsdag 8 maart 2011 6:40
> > > To: Vanalme Filip
> > > Cc: barebox at lists.infradead.org
> > > Subject: Re: test app
> > >
> > > Hi Vanalme,
> > >
> > > On Mon, Mar 07, 2011 at 02:05:32PM +0100, Vanalme Filip wrote:
> > > > We would like to have a kind of small test application, that can be
> > > > started from the barebox prompt, to do some basic tests on some hardware
> > > components.
> > > > What's the best way to do that ? E.g. can I add that test application
> > > > to the environment and would this be good practice ? Or do I better
> > > > extend the barebox commands with my own command to start the tests ?
> > > > Maybe there's an example on how to do it ?
> > >
> > > I'm using the attached program to do a simple RAM read/write test on i.MX25.
> > > This program runs on bare hardware from the internal chip SRAM, and doesn't
> > rely
> > > on the Barebox run-time code.  I only use Barebox to start this program.
> > >
> > > The program is built with the following Makefile rules:
> > >
> > > all: ramtest.bin
> > >
> > > %.bin: %.elf
> > >     ${OBJCOPY} -O binary $^ $@
> > >
> > > ramtest.elf: ramtest.c
> > >     ${CC} -Wall -Os -nostdlib $^ -o $@ -Wl,-Ttext=0x78000000
> > >
> > > Running this program from the Barebox prompt:
> > >
> > > cp ramtest.bin /dev/sram0
> > > go /dev/sram0
> > >
> > > I hope this helps.
> > >
> > > baruch
> > >
> 
> [Filip] 
> 
> As a start, I just took over your Makefile and a minimal source file :
> 
> __asm__ (".text\n"
>         ".globl _start\n"
>         "_start:\n"
>         "ldr    sp, =0xA7E00000\n"
>         "bl     main\n"
>         "stop:\n"
>         "b      stop\n"
>         );
> 
> int main (int argc, char *argv[])
> {
> 	return 0;
> }
> 
> I think I might still miss something because the assembler part gives me errors e.g. 
> 	" Error: no such instruction: 'ldr sp,=0xA7E00000' "
> 	" Error: no such instruction: 'bl main' "
> 	" Error: no such instruction: 'b stop' "

Just a guess, did you set $CC to your cross compiler?

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the barebox mailing list