From d44a970b966cecd637a2b4286795a07ab53fb473 Mon Sep 17 00:00:00 2001 From: Mark Zhang Date: Mon, 2 Jul 2012 13:05:25 +0800 Subject: video: tegra: dc: vblank worker Freeze vblank worker while suspending by adding the work into system freezewq. This eliminates a kernel panic caused by nvsd reading brightness valuesfrom display while clock gated. Bug 1006180 Bug 1003969 Bug 1003730 Change-Id: Ice9bfb18e5c826ae063c2b901421b1047ff9d2f0 Signed-off-by: Mark Zhang Reviewed-on: http://git-master/r/112880 Reviewed-by: Varun Colbert Tested-by: Varun Colbert --- drivers/video/tegra/dc/dc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/video/tegra/dc/dc.c b/drivers/video/tegra/dc/dc.c index 583ea4e64a66..e0c4027656f9 100644 --- a/drivers/video/tegra/dc/dc.c +++ b/drivers/video/tegra/dc/dc.c @@ -983,7 +983,7 @@ static void tegra_dc_one_shot_irq(struct tegra_dc *dc, unsigned long status) tegra_dc_trigger_windows(dc); /* Schedule any additional bottom-half vblank actvities. */ - schedule_work(&dc->vblank_work); + queue_work(system_freezable_wq, &dc->vblank_work); } if (status & FRAME_END_INT) { @@ -997,7 +997,7 @@ static void tegra_dc_continuous_irq(struct tegra_dc *dc, unsigned long status) { /* Schedule any additional bottom-half vblank actvities. */ if (status & V_BLANK_INT) - schedule_work(&dc->vblank_work); + queue_work(system_freezable_wq, &dc->vblank_work); if (status & FRAME_END_INT) { /* Mark the frame_end as complete. */ -- cgit v1.2.3