02.03.2014 Views

BSP Developer's Guide

BSP Developer's Guide

BSP Developer's Guide

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

VxWorks 5.5<br />

<strong>BSP</strong> Developer’s <strong>Guide</strong><br />

E.3.4 sysALib.s<br />

For downloaded images only, execution begins with sysInit( ), instead of<br />

romInit( ), romStart( ), and usrEntry( ). This routine should repeat all the<br />

processor and hardware initialization done by romInit( ), except for main memory.<br />

This routine terminates by calling usrInit( ) in prjConfig.c.<br />

E.3.5 prjConfig.c<br />

NOTE: Do not presume that future releases will preserve the names or nature of<br />

any initGroups included in Tornado 2.x, except usrInit and usrRoot.<br />

usrInit<br />

{// pre-multitasking init group<br />

INCLUDE_SYS_START<br />

INCLUDE_CACHE_SUPPORT<br />

INCLUDE_EXC_HANDLING<br />

INCLUDE_SYSHW_INIT<br />

INCLUDE_CACHE_ENABLE<br />

INCLUDE_WINDVIEW_CLASS<br />

INCLUDE_KERNEL // DO NOT REMOVE.<br />

} // end of usrInit<br />

The required element INCLUDE_KERNEL must always be the last component<br />

initialized in usrInit( ). It starts multitasking by creating the root task and<br />

scheduling it to execute the routine usrRoot( ).<br />

usrRoot<br />

{// post-multitasking init group<br />

usrKernelCoreInit<br />

{// kernel core features init group<br />

INCLUDE_SEM_BINARY<br />

INCLUDE_SEM_MUTEX<br />

INCLUDE_SEM_COUNTING<br />

INCLUDE_MSG_Q<br />

INCLUDE_WATCHDOGS<br />

INCLUDE_TASK_HOOKS<br />

} // end of usrKernelCoreInit<br />

INCLUDE_MEM_MGR_BASIC<br />

INCLUDE_MEM_MGR_FULL<br />

240

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!