
VxWorks
BSP Developer’s Guide, 6.0
20
responsible for any board initialization not completed in sysHwInit( ), such as the
connection of interrupt sources using intConnect( ).
Next, the usrRoot( ) routine continues the clock initialization. It sets the default
clock rate to the value of the macro
SYS_CLK_RATE, typically 60 Hz. usrRoot( )
then enables the system clock with a call to sysClkEnable( ).
Once the clock is initialized and running, several kernel modules, such as
selectLib, the I/O subsystem, and the console, are initialized. For details, see the
source code in usrConfig.c as well as the macros defined in configAll.h and
config.h.
If
INCLUDE_WDB is defined, wdbConfig( ) in target/src/config/usrWdb.c is
called. This routine initializes the agent’s communication interface, and then starts
the debug agent. For information on configuring the agent and the agent’s
initialization sequence, see your Wind River tools documentation. The debug
agent is the portion of VxWorks that connects to and serves the IDE tools such as
the shell and the debugger.
If the
INCLUDE_USR_APPL macro is defined, the default usrRoot( ) code executes
the
USER_APPL_INIT macro. This macro allows you to start your application
automatically at boot time. The BSP assumes that the
USER_APPL_INIT macro is a
valid C statement. For more information on
USER_APPL_INIT, see the appropriate
VxWorks programmer’s guide.
2.3 Components of a BSP
The BSP directory contains source files, header files, a makefile (Makefile), one or
more documentation files (target.nr or target.ref), and possibly other files such as
object modules distributed in object format only. The directory also includes
derived files based on the directory contents, such as object modules,
documentation files in a more readable format (HTML), and so forth.
From the BSP directory, other derivative files may be generated; for example, there
may be files generated for a project. Some derived files are not put into the BSP
directory itself. These include the WPJ project file, additional source and header
NOTE: The system clock can be dynamically changed from the shell or from an
application. However, facilities that take a “snapshot” of the clock rate (for
example, spyLib) can be broken by an unexpected rate change.
Comentarios a estos manuales