/* Some devices on the dock station need to have drivers called to perform hotplug operations after a dock event has occurred. Traverse the list of dock devices that have registered a hotplug handler, and call the handler.  */
static void hotplug_dock_devices(struct dock_station *ds, u32 event)
/* Some devices on the dock station need to have drivers called to perform hotplug operations after a dock event has occurred. Traverse the list of dock devices that have registered a hotplug handler, and call the handler.  */
static void hotplug_dock_devices(struct dock_station *ds, u32 event)
{
	struct dock_dependent_device *dd;
	mutex_lock(&ds->hp_lock);
	list_for_each_entry(dd, &ds->hotplug_devices, hotplug_list)
		if (dd->ops && dd->ops->handler)
			dd->ops->handler(dd->handle, event, dd->context);
	list_for_each_entry(dd, &ds->dependent_devices, list) {
		if (event == ACPI_NOTIFY_EJECT_REQUEST)
			dock_remove_acpi_device(dd->handle);
		else
			dock_create_acpi_device(dd->handle);
	}
	mutex_unlock(&ds->hp_lock);
}