|
@@ -576,9 +576,14 @@ static int cdc_ncm_bind(struct usbnet *dev, struct usb_interface *intf)
|
|
|
if ((intf->num_altsetting == 2) &&
|
|
|
!usb_set_interface(dev->udev,
|
|
|
intf->cur_altsetting->desc.bInterfaceNumber,
|
|
|
- CDC_NCM_COMM_ALTSETTING_MBIM) &&
|
|
|
- cdc_ncm_comm_intf_is_mbim(intf->cur_altsetting))
|
|
|
- return -ENODEV;
|
|
|
+ CDC_NCM_COMM_ALTSETTING_MBIM)) {
|
|
|
+ if (cdc_ncm_comm_intf_is_mbim(intf->cur_altsetting))
|
|
|
+ return -ENODEV;
|
|
|
+ else
|
|
|
+ usb_set_interface(dev->udev,
|
|
|
+ intf->cur_altsetting->desc.bInterfaceNumber,
|
|
|
+ CDC_NCM_COMM_ALTSETTING_NCM);
|
|
|
+ }
|
|
|
#endif
|
|
|
|
|
|
/* NCM data altsetting is always 1 */
|