public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
* [ECOS] What is RedBoot_INIT_TAB,
@ 2001-05-31  8:35 Narayana, Venkat A.
  2001-05-31  8:54 ` Gary Thomas
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Narayana, Venkat A. @ 2001-05-31  8:35 UTC (permalink / raw)
  To: 'ecos-discuss@sources.redhat.com'

Hi,
I am trying to make a ROM startup for my XScale based board
and i am getting an error, while single-stepping this code, which is in
main.c/cyg_start fucn:

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

I found that RedBoot_INIT_TAB is defined, in CYG_HAL_TABLE_BEGIN macro,
but by the time i reach the above point, i.e cyg_start function, i haven't
seen anything
which is poulating this Table. So the question is, if no one is putting some
data(actual a 
function pointer), the why is it that we are calling init_entry->fun,
function?
Is there something i didn't understood or missed?
Could i choose to call this guy, only when the board is ' warm_reset'?

Your help is greatly appreciated.

Thanks in Advance,
Venkat N.

^ permalink raw reply	[flat|nested] 10+ messages in thread
* RE: [ECOS] What is RedBoot_INIT_TAB,
@ 2001-06-21  8:51 Narayana, Venkat A.
  2001-06-21  8:59 ` Gary Thomas
  2001-06-21 12:02 ` Jonathan Larmour
  0 siblings, 2 replies; 10+ messages in thread
From: Narayana, Venkat A. @ 2001-06-21  8:51 UTC (permalink / raw)
  To: 'Gary Thomas'; +Cc: 'ecos-discuss@sources.redhat.com'

Hi Gary,

> > 
> > for (init_entry = __RedBoot_INIT_TAB__; init_entry !=
> > &__RedBoot_INIT_TAB_END__;  init_entry++) {
> >         (*init_entry->fun)();
> >     }
> > 
> > I found that RedBoot_INIT_TAB is defined, in 
> 
> This table is filled in using the RedBoot_init() macro.  E.g. 
> this is used
> by the network initialization code in the file 
> "redboot/current/src/net/net_io.c"
> 
> Depending on your configuration, you may or not have any 
> entries in the table.

RedBoot_init macro, defines 'struct init_tab_entry' variable in
'ecos.table' section. Pls correct me here...my understanding is that
RedBoot_init(net_init, RedBoot_INIT_LAST) expands into
  "struct init_tab_entry _init_tab_9999net_init", where this struct
   has 1 member, which is a function ptr.
I am going thru the redboot/src/net files, but i am unable to find
any place, from where _init_tab_9999net_init->net_init is called.
i.e, who calls net_init and from where?

Thanks and Regards
Venkat N

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2001-06-21 12:02 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-05-31  8:35 [ECOS] What is RedBoot_INIT_TAB, Narayana, Venkat A.
2001-05-31  8:54 ` Gary Thomas
2001-05-31  9:03 ` Jonathan Larmour
2001-05-31 10:02 ` [ECOS] Executable Size Carlos Camargo
2001-05-31 10:15   ` Jonathan Larmour
2001-05-31 10:45     ` Carlos Camargo
2001-05-31 11:26       ` Jonathan Larmour
2001-06-21  8:51 [ECOS] What is RedBoot_INIT_TAB, Narayana, Venkat A.
2001-06-21  8:59 ` Gary Thomas
2001-06-21 12:02 ` Jonathan Larmour

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).