Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 22 additions & 3 deletions drivers/ethernet/eth_slip_tap.c
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
*/

#define LOG_MODULE_NAME eth_slip_tap
#define LOG_LEVEL CONFIG_ETHERNET_LOG_LEVEL
#define LOG_LEVEL CONFIG_ETHERNET_LOG_LEVEL

#include <zephyr/logging/log.h>
LOG_MODULE_REGISTER(LOG_MODULE_NAME);
Expand All @@ -22,19 +22,38 @@ static enum ethernet_hw_caps eth_capabilities(const struct device *dev)

return ETHERNET_HW_VLAN
#if defined(CONFIG_NET_LLDP)
| ETHERNET_LLDP
| ETHERNET_LLDP
#endif
#if defined(CONFIG_NET_PROMISCUOUS_MODE)
| ETHERNET_PROMISC_MODE
#endif
;
}

static int eth_slip_tap_set_config(const struct device *dev, enum ethernet_config_type type,
const struct ethernet_config *config)
{
switch (type) {
#if defined(CONFIG_NET_PROMISCUOUS_MODE)
case ETHERNET_CONFIG_TYPE_PROMISC_MODE:
return 0;
#endif /* CONFIG_NET_PROMISCUOUS_MODE */
default:
break;
}

return -ENOTSUP;
}

static const struct ethernet_api slip_if_api = {
.iface_api.init = slip_iface_init,

.get_capabilities = eth_capabilities,
.send = slip_send,
.set_config = eth_slip_tap_set_config,
};

#define _SLIP_L2_LAYER ETHERNET_L2
#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,
Expand Down