From 884c974933012fcc14104cc555727ac4a85d1bf6 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen Date: Thu, 24 Mar 2011 14:01:49 +0200 Subject: [PATCH] --- yaml --- r: 251046 b: refs/heads/master c: 1663d2f70a9404b822fb0e8fbc40d42fdfeed0bd h: refs/heads/master v: v3 --- [refs] | 2 +- .../drivers/video/omap2/displays/panel-taal.c | 36 ++++++++++++------- 2 files changed, 24 insertions(+), 14 deletions(-) diff --git a/[refs] b/[refs] index 1a35b192e927..6c76620a2266 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 33a410be6f4b760f0abe3ec05ac808f1c391bd41 +refs/heads/master: 1663d2f70a9404b822fb0e8fbc40d42fdfeed0bd diff --git a/trunk/drivers/video/omap2/displays/panel-taal.c b/trunk/drivers/video/omap2/displays/panel-taal.c index 788104c9998a..bbfd5feed33f 100644 --- a/trunk/drivers/video/omap2/displays/panel-taal.c +++ b/trunk/drivers/video/omap2/displays/panel-taal.c @@ -420,6 +420,22 @@ static int taal_set_update_window(struct taal_data *td, return r; } +static void taal_queue_esd_work(struct omap_dss_device *dssdev) +{ + struct taal_data *td = dev_get_drvdata(&dssdev->dev); + + if (td->esd_interval > 0) + queue_delayed_work(td->esd_wq, &td->esd_work, + msecs_to_jiffies(td->esd_interval)); +} + +static void taal_cancel_esd_work(struct omap_dss_device *dssdev) +{ + struct taal_data *td = dev_get_drvdata(&dssdev->dev); + + cancel_delayed_work(&td->esd_work); +} + static int taal_bl_update_status(struct backlight_device *dev) { struct omap_dss_device *dssdev = dev_get_drvdata(&dev->dev); @@ -841,7 +857,7 @@ static void __exit taal_remove(struct omap_dss_device *dssdev) taal_bl_update_status(bldev); backlight_device_unregister(bldev); - cancel_delayed_work(&td->esd_work); + taal_cancel_esd_work(dssdev); destroy_workqueue(td->esd_wq); /* reset, to be sure that the panel is in a valid state */ @@ -983,9 +999,7 @@ static int taal_enable(struct omap_dss_device *dssdev) if (r) goto err; - if (td->esd_interval > 0) - queue_delayed_work(td->esd_wq, &td->esd_work, - msecs_to_jiffies(td->esd_interval)); + taal_queue_esd_work(dssdev); dssdev->state = OMAP_DSS_DISPLAY_ACTIVE; @@ -1006,7 +1020,7 @@ static void taal_disable(struct omap_dss_device *dssdev) mutex_lock(&td->lock); - cancel_delayed_work(&td->esd_work); + taal_cancel_esd_work(dssdev); dsi_bus_lock(); @@ -1034,7 +1048,7 @@ static int taal_suspend(struct omap_dss_device *dssdev) goto err; } - cancel_delayed_work(&td->esd_work); + taal_cancel_esd_work(dssdev); dsi_bus_lock(); @@ -1076,9 +1090,7 @@ static int taal_resume(struct omap_dss_device *dssdev) dssdev->state = OMAP_DSS_DISPLAY_DISABLED; } else { dssdev->state = OMAP_DSS_DISPLAY_ACTIVE; - if (td->esd_interval > 0) - queue_delayed_work(td->esd_wq, &td->esd_work, - msecs_to_jiffies(td->esd_interval)); + taal_queue_esd_work(dssdev); } mutex_unlock(&td->lock); @@ -1521,8 +1533,7 @@ static void taal_esd_work(struct work_struct *work) dsi_bus_unlock(); - queue_delayed_work(td->esd_wq, &td->esd_work, - msecs_to_jiffies(td->esd_interval)); + taal_queue_esd_work(dssdev); mutex_unlock(&td->lock); return; @@ -1535,8 +1546,7 @@ static void taal_esd_work(struct work_struct *work) dsi_bus_unlock(); - queue_delayed_work(td->esd_wq, &td->esd_work, - msecs_to_jiffies(td->esd_interval)); + taal_queue_esd_work(dssdev); mutex_unlock(&td->lock); }