mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-09 04:10:18 +09:00
hdmi: rk616
release work queue and disable irq in rk616_hdmi_shutdown to avid panic when shutdown
This commit is contained in:
@@ -355,9 +355,19 @@ static void rk616_hdmi_shutdown(struct platform_device *pdev)
|
||||
if(hdmi) {
|
||||
#ifdef CONFIG_HAS_EARLYSUSPEND
|
||||
unregister_early_suspend(&hdmi->early_suspend);
|
||||
#endif
|
||||
}
|
||||
printk(KERN_INFO "rk616 hdmi shut down.\n");
|
||||
#endif
|
||||
flush_delayed_work(&hdmi->delay_work);
|
||||
mutex_lock(&hdmi->enable_mutex);
|
||||
hdmi->suspend = 1;
|
||||
if(!hdmi->enable) {
|
||||
mutex_unlock(&hdmi->enable_mutex);
|
||||
return;
|
||||
}
|
||||
if (hdmi->irq)
|
||||
disable_irq(hdmi->irq);
|
||||
mutex_unlock(&hdmi->enable_mutex);
|
||||
}
|
||||
printk(KERN_INFO "rk616 hdmi shut down.\n");
|
||||
}
|
||||
|
||||
static struct platform_driver rk616_hdmi_driver = {
|
||||
|
||||
@@ -439,7 +439,7 @@ void rk616_hdmi_work(void)
|
||||
if(hdmi->pwr_mode == LOWER_PWR)
|
||||
rk616_hdmi_set_pwr_mode(NORMAL);
|
||||
|
||||
queue_delayed_work(hdmi->workqueue, &hdmi->delay_work, msecs_to_jiffies(10));
|
||||
queue_delayed_work(hdmi->workqueue, &hdmi->delay_work, msecs_to_jiffies(40));
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user