This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: redboot init entry


Gary Thomas wrote:

On Wed, 2005-03-30 at 19:55 +0400, Nickolay wrote:


Hallo Guys!

I discovered, that my IXDP425 is hanged in this section code:

#if defined(CYGPRI_REDBOOT_ZLIB_FLASH) && defined(CYGOPT_REDBOOT_FIS_ZLIB_COMMON_BUFFER)
fis_zlib_common_buffer =
workspace_end -= CYGNUM_REDBOOT_FIS_ZLIB_COMMON_BUFFER_SIZE;
#endif


#ifdef CYGFUN_REDBOOT_BOOT_SCRIPT
   script_timeout = CYGNUM_REDBOOT_BOOT_SCRIPT_DEFAULT_TIMEOUT;
#endif

for (init_entry = __RedBoot_INIT_TAB__; init_entry != &__RedBoot_INIT_TAB_END__; init_entry++) {
(*init_entry->fun)();
}



What does it mean?
What is the init_entry ?



It's a pointer (from a table) to initialization functions for the various pieces of RedBoot. Try changing the lines to be:

 for (init_entry = __RedBoot_INIT_TAB__; init_entry != &__RedBoot_INIT_TAB_END__;  init_entry++) {
     diag_printf("Calling init: %p\n", init_entry->fun);
     (*init_entry->fun)();
     diag_printf("... back from: %p\n", init_entry->fun);
 }

This should then print out a number of lines with addresses.
Then use 'nm' or 'gdb' to figure out which function was called
last and you can carry on from there.



I do that, but doesn't see anything from RS port.
How i can debug RS port ?


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]