This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: RedBoot_INIT_TAB
On Wed, 2002-06-05 at 10:06, Carles Perello wrote:
> On Wed, 2002-06-05 at 17:07, Gary Thomas wrote:
>
> > I'm confused. Your previous message shows what RedBoot is about
> > to execute, vs an objdump of the same data. How did you get this RedBoot
> > image into memory (RAM/ROM/??)? Things don't seem to be matching?
>
> I download a ROM image of redboot using JTAG. The objdump is from the
> elf image equivalent of the binary I download.
>
>
> > You might try this change:
> > diag_dump_buf(__RedBoot_INIT_TAB__, &__RedBoot_INIT_TAB_END__);
> > for (init_entry = __RedBoot_INIT_TAB__; init_entry != &__RedBoot_INIT_TAB_END__; init_entry++) {
> > (*init_entry->fun)();
> > }
>
> Now is me who is confused, if I do this (keeping the printf, but
> comenting out the actual call) the output looks:
>
> +00008688: 80 1B 00 50 E4 06 00 50 |...P...P |
> CALLING 0x000086a8/0x50001b80
> BACK
> CALLING 0x000086ac/0x500006e4
> BACK
>
> if I remove the diag_dump_buf, then the output is:
>
> +CALLING 0x000086a8/0x50001b00
> BACK
> CALLING 0x000086ac/0x500006e4
> BACK
>
> the values given by diag_dump_buf are correct..however the system still
> dies..I'll be digging that way...
This is really scary!
Try turning off the CACHES (there are CDL options which say whether or
not to enable the caches at boot time)
CYGSEM_HAL_ENABLE_DCACHE_ON_STARTUP
CYGSEM_HAL_ENABLE_ICACHE_ON_STARTUP
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss