• Home
  • Raw
  • Download

Lines Matching refs:intf

228 static const struct usb_device_id *usb_match_dynamic_id(struct usb_interface *intf,  in usb_match_dynamic_id()  argument
235 if (usb_match_one_id(intf, &dynid->id)) { in usb_match_dynamic_id()
283 struct usb_interface *intf = to_usb_interface(dev); in usb_probe_interface() local
284 struct usb_device *udev = interface_to_usbdev(intf); in usb_probe_interface()
291 intf->needs_binding = 0; in usb_probe_interface()
297 dev_err(&intf->dev, "Device is not authorized for usage\n"); in usb_probe_interface()
299 } else if (intf->authorized == 0) { in usb_probe_interface()
300 dev_err(&intf->dev, "Interface %d is not authorized for usage\n", in usb_probe_interface()
301 intf->altsetting->desc.bInterfaceNumber); in usb_probe_interface()
305 id = usb_match_dynamic_id(intf, driver); in usb_probe_interface()
307 id = usb_match_id(intf, driver->id_table); in usb_probe_interface()
317 intf->condition = USB_INTERFACE_BINDING; in usb_probe_interface()
342 dev_err(&intf->dev, "%s Failed to disable LPM for driver %s\n.", in usb_probe_interface()
350 if (intf->needs_altsetting0) { in usb_probe_interface()
351 error = usb_set_interface(udev, intf->altsetting[0]. in usb_probe_interface()
355 intf->needs_altsetting0 = 0; in usb_probe_interface()
358 error = driver->probe(intf, id); in usb_probe_interface()
362 intf->condition = USB_INTERFACE_BOUND; in usb_probe_interface()
372 usb_set_intfdata(intf, NULL); in usb_probe_interface()
373 intf->needs_remote_wakeup = 0; in usb_probe_interface()
374 intf->condition = USB_INTERFACE_UNBOUND; in usb_probe_interface()
393 struct usb_interface *intf = to_usb_interface(dev); in usb_unbind_interface() local
399 intf->condition = USB_INTERFACE_UNBINDING; in usb_unbind_interface()
402 udev = interface_to_usbdev(intf); in usb_unbind_interface()
418 usb_disable_interface(udev, intf, false); in usb_unbind_interface()
420 driver->disconnect(intf); in usb_unbind_interface()
423 for (i = 0, j = 0; i < intf->cur_altsetting->desc.bNumEndpoints; i++) { in usb_unbind_interface()
424 ep = &intf->cur_altsetting->endpoint[i]; in usb_unbind_interface()
436 usb_free_streams(intf, eps, j, GFP_KERNEL); in usb_unbind_interface()
446 if (intf->cur_altsetting->desc.bAlternateSetting == 0) { in usb_unbind_interface()
450 usb_enable_interface(udev, intf, false); in usb_unbind_interface()
451 } else if (!error && !intf->dev.power.is_prepared) { in usb_unbind_interface()
452 r = usb_set_interface(udev, intf->altsetting[0]. in usb_unbind_interface()
455 intf->needs_altsetting0 = 1; in usb_unbind_interface()
457 intf->needs_altsetting0 = 1; in usb_unbind_interface()
459 usb_set_intfdata(intf, NULL); in usb_unbind_interface()
461 intf->condition = USB_INTERFACE_UNBOUND; in usb_unbind_interface()
462 intf->needs_remote_wakeup = 0; in usb_unbind_interface()
474 for (r = atomic_read(&intf->pm_usage_cnt); r > 0; --r) in usb_unbind_interface()
475 usb_autopm_put_interface_no_suspend(intf); in usb_unbind_interface()
476 atomic_set(&intf->pm_usage_cnt, 0); in usb_unbind_interface()
649 struct usb_host_interface *intf, in usb_match_one_id_intf() argument
664 (id->bInterfaceClass != intf->desc.bInterfaceClass)) in usb_match_one_id_intf()
668 (id->bInterfaceSubClass != intf->desc.bInterfaceSubClass)) in usb_match_one_id_intf()
672 (id->bInterfaceProtocol != intf->desc.bInterfaceProtocol)) in usb_match_one_id_intf()
676 (id->bInterfaceNumber != intf->desc.bInterfaceNumber)) in usb_match_one_id_intf()
686 struct usb_host_interface *intf; in usb_match_one_id() local
693 intf = interface->cur_altsetting; in usb_match_one_id()
699 return usb_match_one_id_intf(dev, intf, id); in usb_match_one_id()
811 struct usb_interface *intf; in usb_device_match() local
819 intf = to_usb_interface(dev); in usb_device_match()
822 id = usb_match_id(intf, usb_drv->id_table); in usb_device_match()
826 id = usb_match_dynamic_id(intf, usb_drv); in usb_device_match()
841 struct usb_interface *intf = to_usb_interface(dev); in usb_uevent() local
843 usb_dev = interface_to_usbdev(intf); in usb_uevent()
1017 void usb_forced_unbind_intf(struct usb_interface *intf) in usb_forced_unbind_intf() argument
1019 struct usb_driver *driver = to_usb_driver(intf->dev.driver); in usb_forced_unbind_intf()
1021 dev_dbg(&intf->dev, "forced unbind\n"); in usb_forced_unbind_intf()
1022 usb_driver_release_interface(driver, intf); in usb_forced_unbind_intf()
1025 intf->needs_binding = 1; in usb_forced_unbind_intf()
1038 struct usb_interface *intf; in unbind_marked_interfaces() local
1043 intf = config->interface[i]; in unbind_marked_interfaces()
1044 if (intf->dev.driver && intf->needs_binding) in unbind_marked_interfaces()
1045 usb_forced_unbind_intf(intf); in unbind_marked_interfaces()
1058 static void usb_rebind_intf(struct usb_interface *intf) in usb_rebind_intf() argument
1063 if (intf->dev.driver) in usb_rebind_intf()
1064 usb_forced_unbind_intf(intf); in usb_rebind_intf()
1067 if (!intf->dev.power.is_prepared) { in usb_rebind_intf()
1068 intf->needs_binding = 0; in usb_rebind_intf()
1069 rc = device_attach(&intf->dev); in usb_rebind_intf()
1071 dev_warn(&intf->dev, "rebind failed: %d\n", rc); in usb_rebind_intf()
1085 struct usb_interface *intf; in rebind_marked_interfaces() local
1090 intf = config->interface[i]; in rebind_marked_interfaces()
1091 if (intf->needs_binding) in rebind_marked_interfaces()
1092 usb_rebind_intf(intf); in rebind_marked_interfaces()
1122 struct usb_interface *intf; in unbind_no_pm_drivers_interfaces() local
1128 intf = config->interface[i]; in unbind_no_pm_drivers_interfaces()
1130 if (intf->dev.driver) { in unbind_no_pm_drivers_interfaces()
1131 drv = to_usb_driver(intf->dev.driver); in unbind_no_pm_drivers_interfaces()
1133 usb_forced_unbind_intf(intf); in unbind_no_pm_drivers_interfaces()
1195 struct usb_interface *intf, pm_message_t msg) in usb_suspend_interface() argument
1201 intf->condition == USB_INTERFACE_UNBOUND) in usb_suspend_interface()
1203 driver = to_usb_driver(intf->dev.driver); in usb_suspend_interface()
1206 status = driver->suspend(intf, msg); in usb_suspend_interface()
1208 dev_err(&intf->dev, "suspend error %d\n", status); in usb_suspend_interface()
1211 dev_vdbg(&intf->dev, "%s: status %d\n", __func__, status); in usb_suspend_interface()
1216 struct usb_interface *intf, pm_message_t msg, int reset_resume) in usb_resume_interface() argument
1225 if (intf->condition == USB_INTERFACE_UNBINDING) in usb_resume_interface()
1229 if (intf->condition == USB_INTERFACE_UNBOUND) { in usb_resume_interface()
1232 if (intf->needs_altsetting0 && !intf->dev.power.is_prepared) { in usb_resume_interface()
1233 usb_set_interface(udev, intf->altsetting[0]. in usb_resume_interface()
1235 intf->needs_altsetting0 = 0; in usb_resume_interface()
1241 if (intf->needs_binding) in usb_resume_interface()
1243 driver = to_usb_driver(intf->dev.driver); in usb_resume_interface()
1247 status = driver->reset_resume(intf); in usb_resume_interface()
1249 dev_err(&intf->dev, "%s error %d\n", in usb_resume_interface()
1252 intf->needs_binding = 1; in usb_resume_interface()
1253 dev_dbg(&intf->dev, "no reset_resume for driver %s?\n", in usb_resume_interface()
1257 status = driver->resume(intf); in usb_resume_interface()
1259 dev_err(&intf->dev, "resume error %d\n", status); in usb_resume_interface()
1263 dev_vdbg(&intf->dev, "%s: status %d\n", __func__, status); in usb_resume_interface()
1300 struct usb_interface *intf; in usb_suspend_both() local
1310 intf = udev->actconfig->interface[i]; in usb_suspend_both()
1311 status = usb_suspend_interface(udev, intf, msg); in usb_suspend_both()
1356 intf = udev->actconfig->interface[i]; in usb_suspend_both()
1357 usb_resume_interface(udev, intf, msg, 0); in usb_suspend_both()
1401 struct usb_interface *intf; in usb_resume_both() local
1416 intf = udev->actconfig->interface[i]; in usb_resume_both()
1417 usb_resume_interface(udev, intf, msg, in usb_resume_both()
1622 void usb_autopm_put_interface(struct usb_interface *intf) in usb_autopm_put_interface() argument
1624 struct usb_device *udev = interface_to_usbdev(intf); in usb_autopm_put_interface()
1628 atomic_dec(&intf->pm_usage_cnt); in usb_autopm_put_interface()
1629 status = pm_runtime_put_sync(&intf->dev); in usb_autopm_put_interface()
1630 dev_vdbg(&intf->dev, "%s: cnt %d -> %d\n", in usb_autopm_put_interface()
1631 __func__, atomic_read(&intf->dev.power.usage_count), in usb_autopm_put_interface()
1651 void usb_autopm_put_interface_async(struct usb_interface *intf) in usb_autopm_put_interface_async() argument
1653 struct usb_device *udev = interface_to_usbdev(intf); in usb_autopm_put_interface_async()
1657 atomic_dec(&intf->pm_usage_cnt); in usb_autopm_put_interface_async()
1658 status = pm_runtime_put(&intf->dev); in usb_autopm_put_interface_async()
1659 dev_vdbg(&intf->dev, "%s: cnt %d -> %d\n", in usb_autopm_put_interface_async()
1660 __func__, atomic_read(&intf->dev.power.usage_count), in usb_autopm_put_interface_async()
1674 void usb_autopm_put_interface_no_suspend(struct usb_interface *intf) in usb_autopm_put_interface_no_suspend() argument
1676 struct usb_device *udev = interface_to_usbdev(intf); in usb_autopm_put_interface_no_suspend()
1679 atomic_dec(&intf->pm_usage_cnt); in usb_autopm_put_interface_no_suspend()
1680 pm_runtime_put_noidle(&intf->dev); in usb_autopm_put_interface_no_suspend()
1703 int usb_autopm_get_interface(struct usb_interface *intf) in usb_autopm_get_interface() argument
1707 status = pm_runtime_get_sync(&intf->dev); in usb_autopm_get_interface()
1709 pm_runtime_put_sync(&intf->dev); in usb_autopm_get_interface()
1711 atomic_inc(&intf->pm_usage_cnt); in usb_autopm_get_interface()
1712 dev_vdbg(&intf->dev, "%s: cnt %d -> %d\n", in usb_autopm_get_interface()
1713 __func__, atomic_read(&intf->dev.power.usage_count), in usb_autopm_get_interface()
1738 int usb_autopm_get_interface_async(struct usb_interface *intf) in usb_autopm_get_interface_async() argument
1742 status = pm_runtime_get(&intf->dev); in usb_autopm_get_interface_async()
1744 pm_runtime_put_noidle(&intf->dev); in usb_autopm_get_interface_async()
1746 atomic_inc(&intf->pm_usage_cnt); in usb_autopm_get_interface_async()
1747 dev_vdbg(&intf->dev, "%s: cnt %d -> %d\n", in usb_autopm_get_interface_async()
1748 __func__, atomic_read(&intf->dev.power.usage_count), in usb_autopm_get_interface_async()
1765 void usb_autopm_get_interface_no_resume(struct usb_interface *intf) in usb_autopm_get_interface_no_resume() argument
1767 struct usb_device *udev = interface_to_usbdev(intf); in usb_autopm_get_interface_no_resume()
1770 atomic_inc(&intf->pm_usage_cnt); in usb_autopm_get_interface_no_resume()
1771 pm_runtime_get_noresume(&intf->dev); in usb_autopm_get_interface_no_resume()
1779 struct usb_interface *intf; in autosuspend_check() local
1790 intf = udev->actconfig->interface[i]; in autosuspend_check()
1797 if (intf->dev.power.disable_depth) in autosuspend_check()
1799 if (atomic_read(&intf->dev.power.usage_count) > 0) in autosuspend_check()
1801 w |= intf->needs_remote_wakeup; in autosuspend_check()
1810 driver = to_usb_driver(intf->dev.driver); in autosuspend_check()
1812 intf->needs_remote_wakeup) in autosuspend_check()