Lines Matching refs:intf
156 dev_dbg(&dev->intf->dev, "%s() pmcount=%d, on=%d\n", __func__, in qmi_wwan_manage_power()
164 rv = usb_autopm_get_interface(dev->intf); in qmi_wwan_manage_power()
165 dev->intf->needs_remote_wakeup = on; in qmi_wwan_manage_power()
167 usb_autopm_put_interface(dev->intf); in qmi_wwan_manage_power()
172 static int qmi_wwan_cdc_wdm_manage_power(struct usb_interface *intf, int on) in qmi_wwan_cdc_wdm_manage_power() argument
174 struct usbnet *dev = usb_get_intfdata(intf); in qmi_wwan_cdc_wdm_manage_power()
226 static int qmi_wwan_bind(struct usbnet *dev, struct usb_interface *intf) in qmi_wwan_bind() argument
229 u8 *buf = intf->cur_altsetting->extra; in qmi_wwan_bind()
230 int len = intf->cur_altsetting->extralen; in qmi_wwan_bind()
231 struct usb_interface_descriptor *desc = &intf->cur_altsetting->desc; in qmi_wwan_bind()
234 struct usb_driver *driver = driver_of(intf); in qmi_wwan_bind()
242 info->control = intf; in qmi_wwan_bind()
243 info->data = intf; in qmi_wwan_bind()
246 cdc_parse_cdc_header(&hdr, intf, buf, len); in qmi_wwan_bind()
256 dev_err(&intf->dev, in qmi_wwan_bind()
301 static void qmi_wwan_unbind(struct usbnet *dev, struct usb_interface *intf) in qmi_wwan_unbind() argument
304 struct usb_driver *driver = driver_of(intf); in qmi_wwan_unbind()
311 if (intf == info->control) in qmi_wwan_unbind()
317 if (other && intf != other) { in qmi_wwan_unbind()
333 static int qmi_wwan_suspend(struct usb_interface *intf, pm_message_t message) in qmi_wwan_suspend() argument
335 struct usbnet *dev = usb_get_intfdata(intf); in qmi_wwan_suspend()
343 ret = usbnet_suspend(intf, message); in qmi_wwan_suspend()
347 if (intf == info->control && info->subdriver && in qmi_wwan_suspend()
349 ret = info->subdriver->suspend(intf, message); in qmi_wwan_suspend()
351 usbnet_resume(intf); in qmi_wwan_suspend()
356 static int qmi_wwan_resume(struct usb_interface *intf) in qmi_wwan_resume() argument
358 struct usbnet *dev = usb_get_intfdata(intf); in qmi_wwan_resume()
361 bool callsub = (intf == info->control && info->subdriver && in qmi_wwan_resume()
365 ret = info->subdriver->resume(intf); in qmi_wwan_resume()
368 ret = usbnet_resume(intf); in qmi_wwan_resume()
370 info->subdriver->suspend(intf, PMSG_SUSPEND); in qmi_wwan_resume()
812 static bool quectel_ec20_detected(struct usb_interface *intf) in quectel_ec20_detected() argument
814 struct usb_device *dev = interface_to_usbdev(intf); in quectel_ec20_detected()
825 static int qmi_wwan_probe(struct usb_interface *intf, in qmi_wwan_probe() argument
829 struct usb_interface_descriptor *desc = &intf->cur_altsetting->desc; in qmi_wwan_probe()
837 dev_dbg(&intf->dev, "setting defaults for dynamic device id\n"); in qmi_wwan_probe()
842 if (quectel_ec20_detected(intf) && desc->bInterfaceNumber == 0) { in qmi_wwan_probe()
843 dev_dbg(&intf->dev, "Quectel EC20 quirk, skipping interface 0\n"); in qmi_wwan_probe()
847 return usbnet_probe(intf, id); in qmi_wwan_probe()