mirror of
https://github.com/adulau/aha.git
synced 2024-12-27 19:26:25 +00:00
davinci: fb : add suspend/resume suuport for DA8xx/OMAP-L1xx fb driver
Suspend/resume support DA8xx/OMAP-L1xx frame buffer driver. This feature has been tested on DA850/OMAP-L138 EVM. For the purpose of testing, the patch series[1] which adds suspend support for DA850/OMAP-L138 SoC was applied. [1] http://patchwork.kernel.org/patch/60260/ Signed-off-by: Chaithrika U S <chaithrika@ti.com> Cc: Kevin Hilman <khilman@deeprootsystems.com> Cc: Krzysztof Helt <krzysztof.h1@poczta.fm> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
3611380490
commit
1d3c6c7b36
1 changed files with 27 additions and 2 deletions
|
@ -29,6 +29,7 @@
|
|||
#include <linux/interrupt.h>
|
||||
#include <linux/clk.h>
|
||||
#include <linux/cpufreq.h>
|
||||
#include <linux/console.h>
|
||||
#include <video/da8xx-fb.h>
|
||||
|
||||
#define DRIVER_NAME "da8xx_lcdc"
|
||||
|
@ -930,11 +931,35 @@ err_request_mem:
|
|||
#ifdef CONFIG_PM
|
||||
static int fb_suspend(struct platform_device *dev, pm_message_t state)
|
||||
{
|
||||
return -EBUSY;
|
||||
struct fb_info *info = platform_get_drvdata(dev);
|
||||
struct da8xx_fb_par *par = info->par;
|
||||
|
||||
acquire_console_sem();
|
||||
if (par->panel_power_ctrl)
|
||||
par->panel_power_ctrl(0);
|
||||
|
||||
fb_set_suspend(info, 1);
|
||||
lcd_disable_raster();
|
||||
clk_disable(par->lcdc_clk);
|
||||
release_console_sem();
|
||||
|
||||
return 0;
|
||||
}
|
||||
static int fb_resume(struct platform_device *dev)
|
||||
{
|
||||
return -EBUSY;
|
||||
struct fb_info *info = platform_get_drvdata(dev);
|
||||
struct da8xx_fb_par *par = info->par;
|
||||
|
||||
acquire_console_sem();
|
||||
if (par->panel_power_ctrl)
|
||||
par->panel_power_ctrl(1);
|
||||
|
||||
clk_enable(par->lcdc_clk);
|
||||
lcd_enable_raster();
|
||||
fb_set_suspend(info, 0);
|
||||
release_console_sem();
|
||||
|
||||
return 0;
|
||||
}
|
||||
#else
|
||||
#define fb_suspend NULL
|
||||
|
|
Loading…
Reference in a new issue