void auto_init_netdev2_tap(void)
{
    gnrc_netdev2_eth_init(&_gnrc_netdev2_tap, (netdev2_t*)&netdev2_tap);

    gnrc_netdev2_init(_netdev2_eth_stack, TAP_MAC_STACKSIZE,
            TAP_MAC_PRIO, "gnrc_netdev2_tap", &_gnrc_netdev2_tap);
}
Beispiel #2
0
int main(void)
{
    /* initialization */
    gnrc_pktbuf_init();
    msg_init_queue(_main_msg_queue, _MAIN_MSG_QUEUE_SIZE);
    netdev2_test_setup(&_dev, NULL);
    netdev2_test_set_isr_cb(&_dev, _dev_isr);
    netdev2_test_set_recv_cb(&_dev, _dev_recv);
    netdev2_test_set_send_cb(&_dev, _dev_send);
    netdev2_test_set_get_cb(&_dev, NETOPT_ADDRESS, _dev_get_addr);
    netdev2_test_set_set_cb(&_dev, NETOPT_ADDRESS, _dev_set_addr);
    gnrc_netdev2_eth_init(&_gnrc_dev, (netdev2_t *)(&_dev));
    _mac_pid = gnrc_netdev2_init(_mac_stack, _MAC_STACKSIZE, _MAC_PRIO,
                                 "gnrc_netdev_eth_test", &_gnrc_dev);
    if (_mac_pid <= KERNEL_PID_UNDEF) {
        puts("Could not start MAC thread\n");
        return 1;
    }

    /* test execution */
    EXECUTE(test_get_addr);
    EXECUTE(test_send);
    EXECUTE(test_receive);
    EXECUTE(test_set_addr);
    puts("ALL TESTS SUCCESSFUL");

    return 0;
}
Beispiel #3
0
void auto_init_enc28j60(void)
{
    for (int i = 0; i < ENC28J60_NUM; i++) {
        DEBUG("auto_init_enc28j60(): initializing device [%i]...\n", i);
        /* setup netdev2 device */
        enc28j60_setup(&dev[i], &enc28j60_params[i]);
        /* initialize netdev2 <-> gnrc adapter state */
        gnrc_netdev2_eth_init(&gnrc_adpt[i], (netdev2_t *)&dev[i]);
        /* start gnrc netdev2 thread */
        gnrc_netdev2_init(stack[i], ENC28J60_MAC_STACKSIZE, ENC28J60_MAC_PRIO,
                          "gnrc_enc28j60", &gnrc_adpt[i]);
    }
}