sh: add a parameter to LCDC driver's .display_on() callback
HDMI support for the sh_mobile_lcdc framebuffer driver will require a 'struct fb_info *' pointer for its .display_on() callback. While at it fix kfr2r09 framebuffer modular build. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
This commit is contained in:
Родитель
b90884c886
Коммит
c243939817
|
@ -154,7 +154,7 @@ static struct platform_device nand_flash_device = {
|
|||
#define PORT_DRVCRA 0xA405018A
|
||||
#define PORT_DRVCRB 0xA405018C
|
||||
|
||||
static void ap320_wvga_power_on(void *board_data)
|
||||
static void ap320_wvga_power_on(void *board_data, struct fb_info *info)
|
||||
{
|
||||
msleep(100);
|
||||
|
||||
|
|
|
@ -1,2 +1,4 @@
|
|||
obj-y := setup.o sdram.o
|
||||
obj-$(CONFIG_FB_SH_MOBILE_LCDC) += lcd_wqvga.o
|
||||
obj-y := setup.o sdram.o
|
||||
ifneq ($(CONFIG_FB_SH_MOBILE_LCDC),)
|
||||
obj-y += lcd_wqvga.o
|
||||
endif
|
||||
|
|
|
@ -327,7 +327,7 @@ static int kfr2r09_lcd_backlight(int on)
|
|||
return 0;
|
||||
}
|
||||
|
||||
void kfr2r09_lcd_on(void *board_data)
|
||||
void kfr2r09_lcd_on(void *board_data, struct fb_info *info)
|
||||
{
|
||||
kfr2r09_lcd_backlight(1);
|
||||
}
|
||||
|
|
|
@ -3,23 +3,23 @@
|
|||
|
||||
#include <video/sh_mobile_lcdc.h>
|
||||
|
||||
#ifdef CONFIG_FB_SH_MOBILE_LCDC
|
||||
void kfr2r09_lcd_on(void *board_data);
|
||||
#if defined(CONFIG_FB_SH_MOBILE_LCDC) || defined(CONFIG_FB_SH_MOBILE_LCDC_MODULE)
|
||||
void kfr2r09_lcd_on(void *board_data, struct fb_info *info);
|
||||
void kfr2r09_lcd_off(void *board_data);
|
||||
int kfr2r09_lcd_setup(void *board_data, void *sys_ops_handle,
|
||||
struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
|
||||
void kfr2r09_lcd_start(void *board_data, void *sys_ops_handle,
|
||||
struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
|
||||
#else
|
||||
static inline void kfr2r09_lcd_on(void *board_data) {}
|
||||
static inline void kfr2r09_lcd_off(void *board_data) {}
|
||||
static inline int kfr2r09_lcd_setup(void *board_data, void *sys_ops_handle,
|
||||
struct sh_mobile_lcdc_sys_bus_ops *sys_ops)
|
||||
static void kfr2r09_lcd_on(void *board_data) {}
|
||||
static void kfr2r09_lcd_off(void *board_data) {}
|
||||
static int kfr2r09_lcd_setup(void *board_data, void *sys_ops_handle,
|
||||
struct sh_mobile_lcdc_sys_bus_ops *sys_ops)
|
||||
{
|
||||
return -ENODEV;
|
||||
}
|
||||
static inline void kfr2r09_lcd_start(void *board_data, void *sys_ops_handle,
|
||||
struct sh_mobile_lcdc_sys_bus_ops *sys_ops)
|
||||
static void kfr2r09_lcd_start(void *board_data, void *sys_ops_handle,
|
||||
struct sh_mobile_lcdc_sys_bus_ops *sys_ops)
|
||||
{
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -100,7 +100,7 @@ static void sh_mipi_shutdown(struct platform_device *pdev)
|
|||
sh_mipi_dsi_enable(mipi, false);
|
||||
}
|
||||
|
||||
static void mipi_display_on(void *arg)
|
||||
static void mipi_display_on(void *arg, struct fb_info *info)
|
||||
{
|
||||
struct sh_mipi *mipi = arg;
|
||||
|
||||
|
|
|
@ -577,7 +577,7 @@ static int sh_mobile_lcdc_start(struct sh_mobile_lcdc_priv *priv)
|
|||
|
||||
board_cfg = &ch->cfg.board_cfg;
|
||||
if (board_cfg->display_on)
|
||||
board_cfg->display_on(board_cfg->board_data);
|
||||
board_cfg->display_on(board_cfg->board_data, ch->info);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
|
|
@ -55,7 +55,7 @@ struct sh_mobile_lcdc_board_cfg {
|
|||
struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
|
||||
void (*start_transfer)(void *board_data, void *sys_ops_handle,
|
||||
struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
|
||||
void (*display_on)(void *board_data);
|
||||
void (*display_on)(void *board_data, struct fb_info *info);
|
||||
void (*display_off)(void *board_data);
|
||||
};
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче