mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2025-01-19 04:14:49 +08:00
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:
parent
b90884c886
commit
c243939817
@ -154,7 +154,7 @@ static struct platform_device nand_flash_device = {
|
|||||||
#define PORT_DRVCRA 0xA405018A
|
#define PORT_DRVCRA 0xA405018A
|
||||||
#define PORT_DRVCRB 0xA405018C
|
#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);
|
msleep(100);
|
||||||
|
|
||||||
|
@ -1,2 +1,4 @@
|
|||||||
obj-y := setup.o sdram.o
|
obj-y := setup.o sdram.o
|
||||||
obj-$(CONFIG_FB_SH_MOBILE_LCDC) += lcd_wqvga.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;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void kfr2r09_lcd_on(void *board_data)
|
void kfr2r09_lcd_on(void *board_data, struct fb_info *info)
|
||||||
{
|
{
|
||||||
kfr2r09_lcd_backlight(1);
|
kfr2r09_lcd_backlight(1);
|
||||||
}
|
}
|
||||||
|
@ -3,23 +3,23 @@
|
|||||||
|
|
||||||
#include <video/sh_mobile_lcdc.h>
|
#include <video/sh_mobile_lcdc.h>
|
||||||
|
|
||||||
#ifdef CONFIG_FB_SH_MOBILE_LCDC
|
#if defined(CONFIG_FB_SH_MOBILE_LCDC) || defined(CONFIG_FB_SH_MOBILE_LCDC_MODULE)
|
||||||
void kfr2r09_lcd_on(void *board_data);
|
void kfr2r09_lcd_on(void *board_data, struct fb_info *info);
|
||||||
void kfr2r09_lcd_off(void *board_data);
|
void kfr2r09_lcd_off(void *board_data);
|
||||||
int kfr2r09_lcd_setup(void *board_data, void *sys_ops_handle,
|
int kfr2r09_lcd_setup(void *board_data, void *sys_ops_handle,
|
||||||
struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
|
struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
|
||||||
void kfr2r09_lcd_start(void *board_data, void *sys_ops_handle,
|
void kfr2r09_lcd_start(void *board_data, void *sys_ops_handle,
|
||||||
struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
|
struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
|
||||||
#else
|
#else
|
||||||
static inline void kfr2r09_lcd_on(void *board_data) {}
|
static void kfr2r09_lcd_on(void *board_data) {}
|
||||||
static inline void kfr2r09_lcd_off(void *board_data) {}
|
static void kfr2r09_lcd_off(void *board_data) {}
|
||||||
static inline int kfr2r09_lcd_setup(void *board_data, void *sys_ops_handle,
|
static int kfr2r09_lcd_setup(void *board_data, void *sys_ops_handle,
|
||||||
struct sh_mobile_lcdc_sys_bus_ops *sys_ops)
|
struct sh_mobile_lcdc_sys_bus_ops *sys_ops)
|
||||||
{
|
{
|
||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
}
|
}
|
||||||
static inline void kfr2r09_lcd_start(void *board_data, void *sys_ops_handle,
|
static void kfr2r09_lcd_start(void *board_data, void *sys_ops_handle,
|
||||||
struct sh_mobile_lcdc_sys_bus_ops *sys_ops)
|
struct sh_mobile_lcdc_sys_bus_ops *sys_ops)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -100,7 +100,7 @@ static void sh_mipi_shutdown(struct platform_device *pdev)
|
|||||||
sh_mipi_dsi_enable(mipi, false);
|
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;
|
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;
|
board_cfg = &ch->cfg.board_cfg;
|
||||||
if (board_cfg->display_on)
|
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;
|
return 0;
|
||||||
|
@ -55,7 +55,7 @@ struct sh_mobile_lcdc_board_cfg {
|
|||||||
struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
|
struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
|
||||||
void (*start_transfer)(void *board_data, void *sys_ops_handle,
|
void (*start_transfer)(void *board_data, void *sys_ops_handle,
|
||||||
struct sh_mobile_lcdc_sys_bus_ops *sys_ops);
|
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);
|
void (*display_off)(void *board_data);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user