diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-05-25 11:42:37 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-05-25 11:42:37 -0400 |
commit | 0f1493a60167cf6333626456d3fc8aff4e6fa237 (patch) | |
tree | 3b46a263bbab4fd396f01f35f0ceca7f3b063163 /drivers/video/sh_mobile_hdmi.c | |
parent | 023bc8e75f8cf9e4da8411154be22a4f809d3314 (diff) | |
parent | 087faf77a57b06f9a8ce37781c68e3f02468322b (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-2.6: (126 commits)
sh_mobile_meram: Safely disable MERAM operation when not initialized
video: mb862xxfb: add support for L1 displaying
video: mb862xx: add support for controller's I2C bus adapter
video: mb862xxfb: relocate register space to get contiguous vram
video: mb862xxfb: use pre-initialized configuration for PCI GDCs
video: mb862xxfb: correct fix.smem_len field initialization
video: s3c-fb: correct transparency checking in 32bpp
video: s3c-fb: add gpio setup function to resume function
fbdev/amifb: Remove superfluous alignment of frame buffer memory
fbdev/amifb: Do not call panic() if there's not enough Chip RAM
fbdev/amifb: Correct check for video memory size
video: mb862xxfb: Require either FB_MB862XX_PCI_GDC or FB_MB862XX_LIME
video: s3c-fb: add window variant information for S5P
video: s3c-fb: add additional validate bpps
video: s3c-fb: correct window osd size offset values
udlfb: include prefetch.h explicitly
drivers/video/s3c2410fb.c: Convert release_resource to release_mem_region
drivers/video/sm501fb.c: Convert release_resource to release_mem_region
drivers/video: Convert release_resource to release_mem_region
video, udlfb: Fix two build warnings about 'ignoring return value'
...
Diffstat (limited to 'drivers/video/sh_mobile_hdmi.c')
-rw-r--r-- | drivers/video/sh_mobile_hdmi.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/video/sh_mobile_hdmi.c b/drivers/video/sh_mobile_hdmi.c index 2b9e56a6bde4..6ae40b630dc9 100644 --- a/drivers/video/sh_mobile_hdmi.c +++ b/drivers/video/sh_mobile_hdmi.c | |||
@@ -1131,15 +1131,19 @@ static void sh_hdmi_edid_work_fn(struct work_struct *work) | |||
1131 | pm_runtime_get_sync(hdmi->dev); | 1131 | pm_runtime_get_sync(hdmi->dev); |
1132 | 1132 | ||
1133 | ret = sh_hdmi_read_edid(hdmi, &hdmi_rate, &parent_rate); | 1133 | ret = sh_hdmi_read_edid(hdmi, &hdmi_rate, &parent_rate); |
1134 | if (ret < 0) | 1134 | if (ret < 0) { |
1135 | pm_runtime_put(hdmi->dev); | ||
1135 | goto out; | 1136 | goto out; |
1137 | } | ||
1136 | 1138 | ||
1137 | hdmi->hp_state = HDMI_HOTPLUG_EDID_DONE; | 1139 | hdmi->hp_state = HDMI_HOTPLUG_EDID_DONE; |
1138 | 1140 | ||
1139 | /* Reconfigure the clock */ | 1141 | /* Reconfigure the clock */ |
1140 | ret = sh_hdmi_clk_configure(hdmi, hdmi_rate, parent_rate); | 1142 | ret = sh_hdmi_clk_configure(hdmi, hdmi_rate, parent_rate); |
1141 | if (ret < 0) | 1143 | if (ret < 0) { |
1144 | pm_runtime_put(hdmi->dev); | ||
1142 | goto out; | 1145 | goto out; |
1146 | } | ||
1143 | 1147 | ||
1144 | msleep(10); | 1148 | msleep(10); |
1145 | sh_hdmi_configure(hdmi); | 1149 | sh_hdmi_configure(hdmi); |
@@ -1336,6 +1340,7 @@ static int __init sh_hdmi_probe(struct platform_device *pdev) | |||
1336 | ecodec: | 1340 | ecodec: |
1337 | free_irq(irq, hdmi); | 1341 | free_irq(irq, hdmi); |
1338 | ereqirq: | 1342 | ereqirq: |
1343 | pm_runtime_suspend(&pdev->dev); | ||
1339 | pm_runtime_disable(&pdev->dev); | 1344 | pm_runtime_disable(&pdev->dev); |
1340 | iounmap(hdmi->base); | 1345 | iounmap(hdmi->base); |
1341 | emap: | 1346 | emap: |
@@ -1372,6 +1377,7 @@ static int __exit sh_hdmi_remove(struct platform_device *pdev) | |||
1372 | free_irq(irq, hdmi); | 1377 | free_irq(irq, hdmi); |
1373 | /* Wait for already scheduled work */ | 1378 | /* Wait for already scheduled work */ |
1374 | cancel_delayed_work_sync(&hdmi->edid_work); | 1379 | cancel_delayed_work_sync(&hdmi->edid_work); |
1380 | pm_runtime_suspend(&pdev->dev); | ||
1375 | pm_runtime_disable(&pdev->dev); | 1381 | pm_runtime_disable(&pdev->dev); |
1376 | clk_disable(hdmi->hdmi_clk); | 1382 | clk_disable(hdmi->hdmi_clk); |
1377 | clk_put(hdmi->hdmi_clk); | 1383 | clk_put(hdmi->hdmi_clk); |