>From 0d0f13077e02cf6b54f2a22eb2e5f7d97ac7ee97 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miguel Rodr=C3=ADguez P=C3=A9rez? <miguel@xxxxxxxxxxxxx> Date: Tue, 14 Jul 2020 18:02:10 -0400 Subject: [PATCH 1/4] cdc_ether: use dev->intf to get interface information usbnet_cdc_update_filter was getting the interface number from the usb_interface struct in cdc_state->control. However, cdc_ncm does not initialize that structure in its bind function, but uses cdc_ncm_cts instead. Getting intf directly from struct usbnet solves the problem. Signed-off-by: Miguel Rodríguez Pérez <miguel@xxxxxxxxxxxxx> Signed-off-by: Wxcafé <wxcafe@xxxxxxxxxx> --- drivers/net/usb/cdc_ether.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/net/usb/cdc_ether.c b/drivers/net/usb/cdc_ether.c index a657943c9f01..2afe258e3648 100644 --- a/drivers/net/usb/cdc_ether.c +++ b/drivers/net/usb/cdc_ether.c @@ -65,8 +65,6 @@ static const u8 mbm_guid[16] = { static void usbnet_cdc_update_filter(struct usbnet *dev) { - struct cdc_state *info = (void *) &dev->data; - struct usb_interface *intf = info->control; struct net_device *net = dev->net; u16 cdc_filter = USB_CDC_PACKET_TYPE_DIRECTED @@ -86,7 +84,7 @@ static void usbnet_cdc_update_filter(struct usbnet *dev) USB_CDC_SET_ETHERNET_PACKET_FILTER, USB_TYPE_CLASS | USB_RECIP_INTERFACE, cdc_filter, - intf->cur_altsetting->desc.bInterfaceNumber, + dev->intf->cur_altsetting->desc.bInterfaceNumber, NULL, 0, USB_CTRL_SET_TIMEOUT -- 2.27.0 -- Wxcafé <wxcafe@xxxxxxxxxx>