Lines Matching refs:handler
96 int acpi_scan_add_handler(struct acpi_scan_handler *handler) in acpi_scan_add_handler() argument
98 if (!handler) in acpi_scan_add_handler()
101 list_add_tail(&handler->list_node, &acpi_scan_handlers_list); in acpi_scan_add_handler()
105 int acpi_scan_add_handler_with_hotplug(struct acpi_scan_handler *handler, in acpi_scan_add_handler_with_hotplug() argument
110 error = acpi_scan_add_handler(handler); in acpi_scan_add_handler_with_hotplug()
114 acpi_sysfs_add_hotplug_profile(&handler->hotplug, hotplug_profile_name); in acpi_scan_add_handler_with_hotplug()
153 if (device->handler && !device->handler->hotplug.enabled) { in acpi_bus_offline()
264 if (device->handler && device->handler->hotplug.demand_offline in acpi_scan_hot_remove()
329 if (adev->handler) { in acpi_scan_device_check()
338 if (!adev->handler) { in acpi_scan_device_check()
350 struct acpi_scan_handler *handler = adev->handler; in acpi_scan_bus_check() local
359 if (handler && handler->hotplug.scan_dependent) in acpi_scan_bus_check()
360 return handler->hotplug.scan_dependent(adev); in acpi_scan_bus_check()
384 if (adev->handler && !adev->handler->hotplug.enabled) { in acpi_generic_hotplug_event()
1496 static bool acpi_scan_handler_matching(struct acpi_scan_handler *handler, in acpi_scan_handler_matching() argument
1502 if (handler->match) in acpi_scan_handler_matching()
1503 return handler->match(idstr, matchid); in acpi_scan_handler_matching()
1505 for (devid = handler->ids; devid->id[0]; devid++) in acpi_scan_handler_matching()
1519 struct acpi_scan_handler *handler; in acpi_scan_match_handler() local
1521 list_for_each_entry(handler, &acpi_scan_handlers_list, list_node) in acpi_scan_match_handler()
1522 if (acpi_scan_handler_matching(handler, idstr, matchid)) in acpi_scan_match_handler()
1523 return handler; in acpi_scan_match_handler()
1549 struct acpi_scan_handler *handler; in acpi_scan_init_hotplug() local
1551 handler = acpi_scan_match_handler(hwid->id, NULL); in acpi_scan_init_hotplug()
1552 if (handler) { in acpi_scan_init_hotplug()
1712 struct acpi_scan_handler *handler; in acpi_scan_attach_handler() local
1714 handler = acpi_scan_match_handler(hwid->id, &devid); in acpi_scan_attach_handler()
1715 if (handler) { in acpi_scan_attach_handler()
1716 if (!handler->attach) { in acpi_scan_attach_handler()
1720 device->handler = handler; in acpi_scan_attach_handler()
1721 ret = handler->attach(device, devid); in acpi_scan_attach_handler()
1725 device->handler = NULL; in acpi_scan_attach_handler()
1750 if (device->handler) in acpi_bus_attach()
1781 if (device->handler && device->handler->hotplug.notify_online) in acpi_bus_attach()
1782 device->handler->hotplug.notify_online(device); in acpi_bus_attach()
1846 struct acpi_scan_handler *handler = adev->handler; in acpi_bus_trim() local
1853 if (handler) { in acpi_bus_trim()
1854 if (handler->detach) in acpi_bus_trim()
1855 handler->detach(adev); in acpi_bus_trim()
1857 adev->handler = NULL; in acpi_bus_trim()