/* * 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 LOG_MODULE_REGISTER(LOG_MODULE_NAME); #include #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);