You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
997 B
44 lines
997 B
/* |
|
* Copyright (c) 2016 Intel Corporation |
|
* Copyright (c) 2023 Nordic Semiconductor ASA |
|
* |
|
* SPDX-License-Identifier: Apache-2.0 |
|
*/ |
|
|
|
#define LOG_MODULE_NAME eth_slip_tap |
|
#define LOG_LEVEL CONFIG_ETHERNET_LOG_LEVEL |
|
|
|
#include <zephyr/logging/log.h> |
|
LOG_MODULE_REGISTER(LOG_MODULE_NAME); |
|
|
|
#include <zephyr/net/ethernet.h> |
|
#include "../net/slip.h" |
|
|
|
static struct slip_context slip_context_data; |
|
|
|
static enum ethernet_hw_caps eth_capabilities(const struct device *dev) |
|
{ |
|
ARG_UNUSED(dev); |
|
|
|
return ETHERNET_HW_VLAN |
|
#if defined(CONFIG_NET_LLDP) |
|
| ETHERNET_LLDP |
|
#endif |
|
; |
|
} |
|
|
|
static const struct ethernet_api slip_if_api = { |
|
.iface_api.init = slip_iface_init, |
|
|
|
.get_capabilities = eth_capabilities, |
|
.send = slip_send, |
|
}; |
|
|
|
#define _SLIP_L2_LAYER ETHERNET_L2 |
|
#define _SLIP_L2_CTX_TYPE NET_L2_GET_CTX_TYPE(ETHERNET_L2) |
|
|
|
ETH_NET_DEVICE_INIT(slip, CONFIG_SLIP_DRV_NAME, |
|
slip_init, NULL, |
|
&slip_context_data, NULL, |
|
CONFIG_KERNEL_INIT_PRIORITY_DEFAULT, |
|
&slip_if_api, _SLIP_MTU);
|
|
|