diff --git a/drivers/include/net/netdev.h b/drivers/include/net/netdev.h index 9cc2d7bead..cc4048baf1 100644 --- a/drivers/include/net/netdev.h +++ b/drivers/include/net/netdev.h @@ -331,6 +331,7 @@ typedef enum { NETDEV_KW2XRF, NETDEV_ESP_ETH, NETDEV_ESP_WIFI, + NETDEV_CDC_ECM, /* add more if needed */ } netdev_type_t; /** @} */ diff --git a/sys/usb/usbus/cdc/ecm/cdc_ecm_netdev.c b/sys/usb/usbus/cdc/ecm/cdc_ecm_netdev.c index 587da8d4b6..b7a8d81535 100644 --- a/sys/usb/usbus/cdc/ecm/cdc_ecm_netdev.c +++ b/sys/usb/usbus/cdc/ecm/cdc_ecm_netdev.c @@ -22,10 +22,9 @@ #include "kernel_defines.h" #include "iolist.h" -#include "luid.h" #include "mutex.h" #include "net/ethernet.h" -#include "net/eui48.h" +#include "net/eui_provider.h" #include "net/netdev.h" #include "net/netdev/eth.h" #include "usb/usbus/cdc/ecm.h" @@ -53,6 +52,7 @@ static usbus_cdcecm_device_t *_netdev_to_cdcecm(netdev_t *netdev) void cdcecm_netdev_setup(usbus_cdcecm_device_t *cdcecm) { cdcecm->netdev.driver = &netdev_driver_cdcecm; + netdev_register(&cdcecm->netdev, NETDEV_CDC_ECM, 0); } static int _send(netdev_t *netdev, const iolist_t *iolist) @@ -153,7 +153,8 @@ static int _init(netdev_t *netdev) { usbus_cdcecm_device_t *cdcecm = _netdev_to_cdcecm(netdev); - luid_get_eui48((eui48_t*)cdcecm->mac_netdev); + netdev_eui48_get(netdev, (eui48_t*)&cdcecm->mac_netdev); + return 0; }