Skip to content
Snippets Groups Projects
Commit 4d9f9651 authored by Oleg Hahm's avatar Oleg Hahm
Browse files

auto_init: initialize ng_netdev_eth

parent 2e691cf5
No related branches found
No related tags found
No related merge requests found
......@@ -335,6 +335,11 @@ void auto_init(void)
auto_init_kw2xrf();
#endif
#ifdef MODULE_NG_NETDEV_ETH
extern void auto_init_ng_netdev_eth(void);
auto_init_ng_netdev_eth();
#endif
#endif /* MODULE_AUTO_INIT_NG_NETIF */
#ifdef MODULE_NG_IPV6_NETIF
......
/*
* Copyright (C) 2015 Kaspar Schleiser <kaspar@schleiser.de>
*
* This file is subject to the terms and conditions of the GNU Lesser
* General Public License v2.1. See the file LICENSE in the top level
* directory for more details.
*
*/
/*
* @ingroup auto_init_ng_netif
* @{
*
* @file
* @brief Auto initialization for netdev Ethernet network interfaces
*
* @author Kaspar Schleiser <kaspar@schleiser.de>
* @author Oliver Hahm <oliver.hahm@inria.fr>
*/
#ifdef MODULE_NG_NETDEV_ETH
#include "board.h"
#include "net/ng_nomac.h"
#include "net/ng_netbase.h"
#include "net/ng_netdev_eth.h"
#include "net/dev_eth.h"
#include "dev_eth_tap.h"
#define ENABLE_DEBUG (0)
#include "debug.h"
/**
* @brief Define stack parameters for the MAC layer thread
* @{
*/
#define NETDEV_ETH_MAC_STACKSIZE (THREAD_STACKSIZE_DEFAULT)
#define NETDEV_ETH_MAC_PRIO (THREAD_PRIORITY_MAIN - 3)
static char _nomac_stack[NETDEV_ETH_MAC_STACKSIZE];
void auto_init_ng_netdev_eth(void)
{
DEBUG("Initializing NETDEV_ETH device\n");
int res = ng_netdev_eth_init(&ng_netdev_eth, (dev_eth_t*)&dev_eth_tap);
if (res < 0) {
DEBUG("Error initializing NETDEV_ETH device!");
}
else {
ng_nomac_init(_nomac_stack, NETDEV_ETH_MAC_STACKSIZE, NETDEV_ETH_MAC_PRIO,
"tapnet", (ng_netdev_t *)&ng_netdev_eth);
}
}
#else
typedef int dont_be_pedantic;
#endif /* MODULE_NG_NETDEV_ETH */
/** @} */
......@@ -8,6 +8,7 @@ USEMODULE += ng_netbase
USEMODULE += ng_nomac
USEMODULE += ng_pktdump
USEMODULE += ng_netdev_eth
USEMODULE += auto_init_ng_netif
USEMODULE += shell
USEMODULE += shell_commands
......
......@@ -38,11 +38,6 @@
*/
#define SHELL_BUFSIZE (64U)
/**
* @brief Stack for the nomac thread
*/
static char nomac_stack[THREAD_STACKSIZE_DEFAULT];
/**
* @brief Read chars from STDIO
*/
......@@ -64,15 +59,11 @@ void shell_put(int c)
*/
int main(void)
{
int res;
shell_t shell;
ng_netreg_entry_t dump;
puts("netdev ethernet device driver test");
/* initialize network module(s) */
ng_netif_init();
/* initialize and register pktdump */
dump.pid = ng_pktdump_init();
dump.demux_ctx = NG_NETREG_DEMUX_CTX_ALL;
......@@ -84,18 +75,6 @@ int main(void)
ng_netreg_register(NG_NETTYPE_UNDEF, &dump);
/* initialize netdev_eth layer */
ng_netdev_eth_init(&ng_netdev_eth, (dev_eth_t*)&dev_eth_tap);
/* start MAC layer */
res = ng_nomac_init(nomac_stack, sizeof(nomac_stack), THREAD_PRIORITY_MAIN - 3,
"tapnet_l2", (ng_netdev_t *)&ng_netdev_eth);
if (res < 0) {
printf("Error starting nomac thread. res=%i\n", res);
return -1;
}
/* start the shell */
shell_init(&shell, NULL, SHELL_BUFSIZE, shell_read, shell_put);
shell_run(&shell);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment