[U-Boot-Users] data abort
Anders Larsen
alarsen at rea.de
Wed Sep 17 10:57:52 CEST 2003
Glenson Muthedan <glenson at gmx.de> schreibt:
>Thank you guys for your kind help. My SDRAM initialization was not
>correct. Now, having done some changes, everything seems to work
>smoothly except one line in devices_init() in the file common/devices.c
>
>The execution stops at the line
>gd->flags |= GD_FLG_DEVINIT; /* device initialization done */
>
>Then, sometimes a "prefetch abort" occurs, sometimes it just hangs.
Hi Glenson,
does it happen immediately at that line, or did you add any debug
output?
As soon as GD_FLG_DEVINIT is set, the output functions (puts, printf,
...) will search for the output device in a lookup table, which
unfortunately has not yet been initialized at that point (the lookup
table is initialized in console_init_r() which is called *after*
devices_init() has completed).
Perhaps the line "gd->flags |= GD_FLG_DEVINIT;" should better be
moved to console_init_r() ?
Cheers
Anders
More information about the U-Boot
mailing list