diff options
author | Alexandre Courbot <gnurou@gmail.com> | 2011-02-16 03:49:01 +0000 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2011-03-10 20:20:57 +0900 |
commit | 3b0fd9d75598584478d1d3f6551f8a8a9696c34e (patch) | |
tree | aec7b48dbbb6810b15885ea34cf8041798e534bb /include/video | |
parent | 35d34df711e8b44846e759d8cfddb4ec6877cccb (diff) |
fbdev: sh_mobile_lcdcfb: add backlight support
Support for backlight devices controlled through board-specific
routines. Backlights can be defined per-channel and follow fbdev
directives to switch off as the LCD blanks or is turned on/off.
Signed-off-by: Alexandre Courbot <gnurou@gmail.com>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'include/video')
-rw-r--r-- | include/video/sh_mobile_lcdc.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/include/video/sh_mobile_lcdc.h b/include/video/sh_mobile_lcdc.h index daabae5817c6..f2e6ab857fa8 100644 --- a/include/video/sh_mobile_lcdc.h +++ b/include/video/sh_mobile_lcdc.h @@ -59,6 +59,8 @@ struct sh_mobile_lcdc_board_cfg { struct sh_mobile_lcdc_sys_bus_ops *sys_ops); void (*display_on)(void *board_data, struct fb_info *info); void (*display_off)(void *board_data); + int (*set_brightness)(void *board_data, int brightness); + int (*get_brightness)(void *board_data); }; struct sh_mobile_lcdc_lcd_size_cfg { /* width and height of panel in mm */ @@ -66,6 +68,12 @@ struct sh_mobile_lcdc_lcd_size_cfg { /* width and height of panel in mm */ unsigned long height; }; +/* backlight info */ +struct sh_mobile_lcdc_bl_info { + const char *name; + int max_brightness; +}; + struct sh_mobile_lcdc_chan_cfg { int chan; int bpp; @@ -76,6 +84,7 @@ struct sh_mobile_lcdc_chan_cfg { int num_cfg; struct sh_mobile_lcdc_lcd_size_cfg lcd_size_cfg; struct sh_mobile_lcdc_board_cfg board_cfg; + struct sh_mobile_lcdc_bl_info bl_info; struct sh_mobile_lcdc_sys_bus_cfg sys_bus_cfg; /* only for SYSn I/F */ }; |