[En-Nut-Discussion] Help Porting NutOS to the AT91SAM9XE512

Ole Reinhardt ole.reinhardt at embedded-it.de
Fri Sep 3 18:15:29 CEST 2010


Hi!

> Now,There is a new question in Porting NutOS to the AT91SAM9XE512,I hope to get help again.
>  
> Porting NutOS to the AT91SAM9XE512, I chose the Nutconfig files that include
> at91sam9xe512_ram.ld and crtat91sam9xe512_ram.S. I also use ethernut50c.conf as a starting point.
> Use those files to Compile NUT/OS can successfully,but NUT/OS is not working normally.
>  
> I have the following specific steps:
> (1).Compile NutOS for the ethernut50c.conf for a httpd example and run the httpd example
> (Compile tool is WinARM)
> (2)SAM-BA (RAM): Make sure load the binary to 0x20000000 and then type a "go 0x20000000".
> (3)I see some message is "ABCDEABCDE..."on the Debug UART, Never-ending. I find This putout
> debug information code is in the crtat91sam9xe512_ram.S.
> I do not know where is error and how to modify linker script / startup.

Sorry, it's quite some time ago that I tested NutOS on the Ethernut5, so
I did not noticed that... Indeed there seems to be some left-overs in
the crtat91sam7x512_rom.S startup code... 

The init code is run ok... ABCDE should be output.

Now, if I'm not completly wrong the User reset bit is enabled in line
282, which means that a low nrst signal will reset the cpu.

And this might be your problem, as you try the http deamon code, which
uses the ethernet mac. AFAIK NutRegisterDevice for the macb device set's
the nrst pin (reset signal output) which would lead to a full cpu reset,
if URSTEN bit is enabled.

That's what seems to happen.

To eliminate this case make your first steps with simpler examples like
the UART example or the simple thread example with does not use any
drivers beside the UART ode DBGUART driver.

> Second thing:
> In your reply,Your suggestion use at91sam9xe512_ram.ld and crtat91sam7x512_rom.S for linker
> script / startup code,I try to use it but not success.

Sorry if I wrote that combination. For shure you have to use the linker
script and the startup code both for the ram...

> Sure use crtat91sam7x512_rom.S?

No, crtat91sam7x512_ram.S

> I do not know how to modify the internal code, you can say more, please?

What do you mean with modifying the internal code? You mean the startup
assembler code? Yes I can modify it, but I first need to better know
what's going wrong on your board... By the way, what hardware / drivers
do you use / need?

Regards,

Ole Reinhardt

-- 

Thermotemp GmbH, Embedded-IT

Embedded Hard-/ Software and Open Source Development, 
Integration and Consulting

http://www.embedded-it.de

Geschäftsstelle Siegen - Steinstraße 67 - D-57072 Siegen - 
tel +49 (0)271 5513597, +49 (0)271-73681 - fax +49 (0)271 736 97

Hauptsitz - Hademarscher Weg 7 - 13503 Berlin
Tel +49 (0)30 4315205 - Fax +49 (0)30 43665002
Geschäftsführer: Jörg Friedrichs, Ole Reinhardt
Handelsregister Berlin Charlottenburg HRB 45978 UstID DE 156329280 




More information about the En-Nut-Discussion mailing list