summaryrefslogtreecommitdiffstats
path: root/cpukit/libdrvmgr/drvmgr.c
diff options
context:
space:
mode:
Diffstat (limited to 'cpukit/libdrvmgr/drvmgr.c')
-rw-r--r--cpukit/libdrvmgr/drvmgr.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/cpukit/libdrvmgr/drvmgr.c b/cpukit/libdrvmgr/drvmgr.c
index 7c37afd808..66d6cfa0e7 100644
--- a/cpukit/libdrvmgr/drvmgr.c
+++ b/cpukit/libdrvmgr/drvmgr.c
@@ -68,14 +68,15 @@ void _DRV_Manager_init_level(int level)
{
struct drvmgr *mgr = &drvmgr;
- if (mgr->level >= level)
- return;
+ if (mgr->level < level) {
+ /* Set new Level */
+ mgr->level = level;
- /* Set new Level */
- mgr->level = level;
+ /* Initialize buses and devices into this new level */
+ drvmgr_init_update();
+ }
- /* Initialize buses and devices into this new level */
- drvmgr_init_update();
+ bsp_driver_level_hook(level);
}
/* Initialize Data structures of the driver manager and call driver