forked from Imagelibrary/rtems
2009-07-03 Joel Sherrill <joel.sherrill@OARcorp.com>
* itron/src/task.c, posix/src/pthread.c, rtems/src/tasks.c, sapi/src/exinit.c, score/include/rtems/score/apiext.h, score/src/apiext.c: No APIs currently implemented use the predriver_hook so disable it until such time as it is used.
This commit is contained in:
@@ -1,3 +1,10 @@
|
||||
2009-07-03 Joel Sherrill <joel.sherrill@OARcorp.com>
|
||||
|
||||
* itron/src/task.c, posix/src/pthread.c, rtems/src/tasks.c,
|
||||
sapi/src/exinit.c, score/include/rtems/score/apiext.h,
|
||||
score/src/apiext.c: No APIs currently implemented use the
|
||||
predriver_hook so disable it until such time as it is used.
|
||||
|
||||
2009-07-03 Joel Sherrill <joel.sherrill@OARcorp.com>
|
||||
|
||||
* posix/src/sigtimedwait.c: Restructure to improve coverage. Improve
|
||||
|
||||
@@ -112,8 +112,10 @@ void _ITRON_Task_Initialize_user_tasks( void )
|
||||
|
||||
API_extensions_Control _ITRON_Task_API_extensions = {
|
||||
{ NULL, NULL },
|
||||
NULL, /* predriver */
|
||||
_ITRON_Task_Initialize_user_tasks, /* postdriver */
|
||||
#if defined(FUNCTIONALITY_NOT_CURRENTLY_USED_BY_ANY_API)
|
||||
NULL, /* predriver */
|
||||
#endif
|
||||
_ITRON_Task_Initialize_user_tasks, /* postdriver */
|
||||
NULL /* post switch */
|
||||
};
|
||||
|
||||
|
||||
@@ -289,7 +289,9 @@ void _POSIX_Threads_Initialize_user_threads( void )
|
||||
|
||||
API_extensions_Control _POSIX_Threads_API_extensions = {
|
||||
{ NULL, NULL },
|
||||
NULL, /* predriver */
|
||||
#if defined(FUNCTIONALITY_NOT_CURRENTLY_USED_BY_ANY_API)
|
||||
NULL, /* predriver */
|
||||
#endif
|
||||
_POSIX_Threads_Initialize_user_threads, /* postdriver */
|
||||
_POSIX_signals_Post_switch_extension, /* post switch */
|
||||
};
|
||||
|
||||
@@ -215,7 +215,9 @@ void _RTEMS_tasks_Post_switch_extension(
|
||||
|
||||
API_extensions_Control _RTEMS_tasks_API_extensions = {
|
||||
{ NULL, NULL },
|
||||
NULL, /* predriver */
|
||||
#if defined(FUNCTIONALITY_NOT_CURRENTLY_USED_BY_ANY_API)
|
||||
NULL, /* predriver */
|
||||
#endif
|
||||
_RTEMS_tasks_Initialize_user_tasks, /* postdriver */
|
||||
_RTEMS_tasks_Post_switch_extension /* post switch */
|
||||
};
|
||||
|
||||
@@ -179,12 +179,12 @@ void rtems_initialize_before_drivers(void)
|
||||
_MPCI_Create_server();
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Run the API and BSPs predriver hook.
|
||||
*/
|
||||
|
||||
_API_extensions_Run_predriver();
|
||||
|
||||
#if defined(FUNCTIONALITY_NOT_CURRENTLY_USED_BY_ANY_API)
|
||||
/*
|
||||
* Run the API and BSPs predriver hook.
|
||||
*/
|
||||
_API_extensions_Run_predriver();
|
||||
#endif
|
||||
}
|
||||
|
||||
void rtems_initialize_device_drivers(void)
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
*/
|
||||
|
||||
/*
|
||||
* COPYRIGHT (c) 1989-2006.
|
||||
* COPYRIGHT (c) 1989-2009.
|
||||
* On-Line Applications Research Corporation (OAR).
|
||||
*
|
||||
* The license and distribution terms for this file may be
|
||||
@@ -33,10 +33,12 @@
|
||||
#include <rtems/score/chain.h>
|
||||
#include <rtems/score/thread.h>
|
||||
|
||||
/**
|
||||
* This type defines the prototype of the Predriver Hook.
|
||||
*/
|
||||
typedef void (*API_extensions_Predriver_hook)(void);
|
||||
#if defined(FUNCTIONALITY_NOT_CURRENTLY_USED_BY_ANY_API)
|
||||
/**
|
||||
* This type defines the prototype of the Predriver Hook.
|
||||
*/
|
||||
typedef void (*API_extensions_Predriver_hook)(void);
|
||||
#endif
|
||||
|
||||
/**
|
||||
* This type defines the prototype of the Postdriver Hook.
|
||||
@@ -57,14 +59,16 @@ typedef void (*API_extensions_Postswitch_hook)(
|
||||
typedef struct {
|
||||
/** This field allows this structure to be used with the Chain Handler. */
|
||||
Chain_Node Node;
|
||||
/**
|
||||
* This field is the callout invoked during RTEMS initialization after
|
||||
* RTEMS data structures are initialized before device driver initialization
|
||||
* has occurred.
|
||||
*
|
||||
* @note If this field is NULL, no extension is invoked.
|
||||
*/
|
||||
API_extensions_Predriver_hook predriver_hook;
|
||||
#if defined(FUNCTIONALITY_NOT_CURRENTLY_USED_BY_ANY_API)
|
||||
/**
|
||||
* This field is the callout invoked during RTEMS initialization after
|
||||
* RTEMS data structures are initialized before device driver initialization
|
||||
* has occurred.
|
||||
*
|
||||
* @note If this field is NULL, no extension is invoked.
|
||||
*/
|
||||
API_extensions_Predriver_hook predriver_hook;
|
||||
#endif
|
||||
/**
|
||||
* This field is the callout invoked during RTEMS initialization after
|
||||
* RTEMS data structures and device driver initialization has occurred
|
||||
@@ -103,11 +107,13 @@ void _API_extensions_Add(
|
||||
API_extensions_Control *the_extension
|
||||
);
|
||||
|
||||
/** @brief Execute all Pre-Driver Extensions
|
||||
*
|
||||
* This routine executes all of the predriver callouts.
|
||||
*/
|
||||
void _API_extensions_Run_predriver( void );
|
||||
#if defined(FUNCTIONALITY_NOT_CURRENTLY_USED_BY_ANY_API)
|
||||
/** @brief Execute all Pre-Driver Extensions
|
||||
*
|
||||
* This routine executes all of the predriver callouts.
|
||||
*/
|
||||
void _API_extensions_Run_predriver( void );
|
||||
#endif
|
||||
|
||||
/** @brief Execute all Post-Driver Extensions
|
||||
*
|
||||
|
||||
@@ -41,26 +41,28 @@ void _API_extensions_Add(
|
||||
_Chain_Append( &_API_extensions_List, &the_extension->Node );
|
||||
}
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
* _API_extensions_Run_predriver
|
||||
*/
|
||||
#if defined(FUNCTIONALITY_NOT_CURRENTLY_USED_BY_ANY_API)
|
||||
/*PAGE
|
||||
*
|
||||
* _API_extensions_Run_predriver
|
||||
*/
|
||||
|
||||
void _API_extensions_Run_predriver( void )
|
||||
{
|
||||
Chain_Node *the_node;
|
||||
API_extensions_Control *the_extension;
|
||||
void _API_extensions_Run_predriver( void )
|
||||
{
|
||||
Chain_Node *the_node;
|
||||
API_extensions_Control *the_extension;
|
||||
|
||||
for ( the_node = _API_extensions_List.first ;
|
||||
!_Chain_Is_tail( &_API_extensions_List, the_node ) ;
|
||||
the_node = the_node->next ) {
|
||||
for ( the_node = _API_extensions_List.first ;
|
||||
!_Chain_Is_tail( &_API_extensions_List, the_node ) ;
|
||||
the_node = the_node->next ) {
|
||||
|
||||
the_extension = (API_extensions_Control *) the_node;
|
||||
the_extension = (API_extensions_Control *) the_node;
|
||||
|
||||
if ( the_extension->predriver_hook )
|
||||
(*the_extension->predriver_hook)();
|
||||
if ( the_extension->predriver_hook )
|
||||
(*the_extension->predriver_hook)();
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
/*PAGE
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user