/* Call the "noirq" resume handlers for all devices marked as DPM_OFF_IRQ and enable device drivers to receive interrupts.  */
void dpm_resume_noirq(pm_message_t state)
/* Call the "noirq" resume handlers for all devices marked as DPM_OFF_IRQ and enable device drivers to receive interrupts.  */
void dpm_resume_noirq(pm_message_t state)
{
	struct device *dev;
	ktime_t starttime = ktime_get();
	mutex_lock(&dpm_list_mtx);
	transition_started = false;
	list_for_each_entry(dev, &dpm_list, power.entry)
		if (dev->power.status > DPM_OFF) {
			int error;
			dev->power.status = DPM_OFF;
			error = device_resume_noirq(dev, state);
			if (error)
				pm_dev_err(dev, state, " early", error);
		}
	mutex_unlock(&dpm_list_mtx);
	dpm_show_time(starttime, state, "early");
	resume_device_irqs();
}