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