1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2026-01-01 01:41:18 +01:00

sys: auto_init: introduce new auto initialization scheme for network interfaces

This commit is contained in:
Kaspar Schleiser 2015-05-08 15:47:11 +02:00
parent 12df25fb67
commit e655137d72
6 changed files with 7 additions and 36 deletions

View File

@ -1,6 +1,3 @@
ifneq (,$(filter auto_init,$(USEMODULE)))
include $(RIOTBASE)/sys/auto_init/Makefile.include
endif
ifneq (,$(filter nomac,$(USEMODULE)))
USEMODULE_INCLUDES += $(RIOTBASE)/sys/net/include
endif

View File

@ -8,4 +8,8 @@ endif
DIRS += $(AUTO_INIT_MODULES)
ifneq (,$(filter auto_init_ng_netif,$(USEMODULE)))
DIRS += netif
endif
include $(RIOTBASE)/Makefile.base

View File

@ -1,13 +0,0 @@
# try to find the ng_netif auto init implementation in the application or in
# the board, respectively. If it is not found, nothing is called.
ifneq (,$(filter ng_netif,$(USEMODULE)))
ifneq (,$(wildcard $(APPDIR)/auto_init_ng_netif/*))
export AUTO_INIT_MODULES += $(APPDIR)/auto_init_ng_netif
export USEMODULE += auto_init_ng_netif
else
ifneq (,$(wildcard $(RIOTBOARD)/$(BOARD)/auto_init_ng_netif/*))
export AUTO_INIT_MODULES += $(RIOTBOARD)/$(BOARD)/auto_init_ng_netif
export USEMODULE += auto_init_ng_netif
endif
endif
endif

View File

@ -306,8 +306,4 @@ void auto_init(void)
DEBUG("Auto init UDP module.\n");
ng_udp_init();
#endif
#ifdef MODULE_AUTO_INIT_NG_NETIF
DEBUG("Auto init network interfaces.\n");
auto_init_ng_netif();
#endif
}

View File

@ -0,0 +1,3 @@
MODULE = auto_init_ng_netif
include $(RIOTBASE)/Makefile.base

View File

@ -49,22 +49,6 @@ extern "C" {
*/
void auto_init(void);
/**
* @brief Initialize network interfaces and register them with ng_netif
*
* This function must be implemented in the board or in the application,
* in a subfolder that must be named auto_init_ng_netif
* This function is called under two conditions:
* 1. the ng_netif module is used (USEMODULE contains ng_netif)
* 2. the board or the application contains a subfolder called
* auto_init_ng_netif
* If the board and the application both contain the mentioned subfolder,
* the contents from the applications subfolder have a higher priority
* and will be compiled and linked, while the board's subfolder is then
* ignored.
*/
void auto_init_ng_netif(void);
#ifdef __cplusplus
}
#endif