diff --git a/arch/rgmp/src/nuttx.c b/arch/rgmp/src/nuttx.c index ba5ffdd9bc5..b81fc98dd7e 100644 --- a/arch/rgmp/src/nuttx.c +++ b/arch/rgmp/src/nuttx.c @@ -85,6 +85,7 @@ void up_initialize(void) extern pidhash_t g_pidhash[]; extern void up_register_bridges(void); extern void vnet_initialize(void); + extern void e1000_mod_init(void); // intialize the current_task to g_idletcb current_task = g_pidhash[PIDHASH(0)].tcb; @@ -92,12 +93,19 @@ void up_initialize(void) // setup console up_register_bridges(); - // setup net device +#ifdef CONFIG_NET_VNET + // setup vnet device vnet_initialize(); +#endif // setup COM device up_serialinit(); +#ifdef CONFIG_NET_E1000 + // setup e1000 + e1000_mod_init(); +#endif + // enable interrupt sti(); } diff --git a/arch/rgmp/src/rgmp.c b/arch/rgmp/src/rgmp.c index 904729d51fe..6cc7aceb4a1 100644 --- a/arch/rgmp/src/rgmp.c +++ b/arch/rgmp/src/rgmp.c @@ -154,4 +154,19 @@ int rtos_sem_down(void *sem) return sem_wait(sem); } +void rtos_stop_running(void) +{ + extern void e1000_mod_exit(void); + + cli(); + +#ifdef CONFIG_NET_E1000 + e1000_mod_exit(); +#endif + + while(1) { + asm volatile("hlt"); + } +} +