//extern void s3cfb_set_display_path(void); void __init mipi_fb_init(void) { struct s5p_platform_dsim *dsim_pd = NULL; struct mipi_ddi_platform_data *mipi_ddi_pd = NULL; /* gpio pad configuration */ lcd_cfg_gpio(); s3cfb_set_display_path(); /* set platform data */ dsim_pd = s5p_device_dsim.dev.platform_data; dsim_pd->platform_rev = 1; dsim_pd->mipi_power = s5p_dsim_mipi_power_control; dsim_pd->dsim_lcd_info = &watch_lcd_info; dsim_pd->dsim_info->e_no_data_lane = DSIM_NO_DATA_LANE; dsim_pd->dsim_info->p = DPHY_PLL_P; dsim_pd->dsim_info->m = DPHY_PLL_M; dsim_pd->dsim_info->s = DPHY_PLL_S; mipi_ddi_pd = &watch_mipi_ddi_pd; mipi_ddi_pd->lcd_power_on = lcd_power_on; #if defined(CONFIG_FB_S5P_I80_LCD) lcd_panel_pdata_s6e63j003.te_irq = gpio_to_irq(GPIO_LCD_VSYNC); #endif platform_device_register(&s5p_device_dsim); s3cfb_set_platdata(&watch_fb_data); }
void __init mipi_fb_init(void) { struct s5p_platform_dsim *dsim_pd = NULL; struct mipi_ddi_platform_data *mipi_ddi_pd = NULL; struct dsim_lcd_config *dsim_lcd_info = NULL; /* set platform data */ /* gpio pad configuration for rgb and spi interface. */ lcd_cfg_gpio(); /* * register lcd panel data. */ printk(KERN_INFO "%s :: fb_platform_data.hw_ver = 0x%x\n", __func__, fb_platform_data.hw_ver); dsim_pd = (struct s5p_platform_dsim *) s5p_device_dsim.dev.platform_data; dsim_pd->platform_rev = 1; dsim_pd->mipi_power = s5p_dsim_mipi_power_control; dsim_lcd_info = dsim_pd->dsim_lcd_info; #if defined(CONFIG_FB_S5P_S6E8AA0) dsim_lcd_info->lcd_panel_info = (void *)&s6e8aa0; #endif #if defined(CONFIG_FB_S5P_S6D6AA1) dsim_lcd_info->lcd_panel_info = (void *)&s6d6aa1; #endif #ifdef CONFIG_FB_S5P_S6E63M0 dsim_lcd_info->lcd_panel_info = (void *)&s6e63m0; dsim_pd->dsim_info->e_no_data_lane = DSIM_DATA_LANE_2; /* 320Mbps */ dsim_pd->dsim_info->p = 3; dsim_pd->dsim_info->m = 80; dsim_pd->dsim_info->s = 1; #else /* 500Mbps */ dsim_pd->dsim_info->p = 3; dsim_pd->dsim_info->m = 125; dsim_pd->dsim_info->s = 1; #endif mipi_ddi_pd = (struct mipi_ddi_platform_data *) dsim_lcd_info->mipi_ddi_pd; mipi_ddi_pd->lcd_reset = reset_lcd; mipi_ddi_pd->lcd_power_on = lcd_power_on; #if defined(CONFIG_S5P_DSIM_SWITCHABLE_DUAL_LCD) mipi_ddi_pd->lcd_sel_pin = GPIO_LCD_SEL; #endif /* CONFIG_S5P_DSIM_SWITCHABLE_DUAL_LCD */ platform_device_register(&s5p_device_dsim); /*s3cfb_set_platdata(&fb_platform_data);*/ }
void __init ld9040_fb_init(void) { struct ld9040_panel_data *pdata; strcpy(spi_board_info[0].modalias, "ld9040"); spi_board_info[0].platform_data = (void *)&ld9040_platform_data; pdata = ld9040_platform_data.pdata; pdata->ops = &ops; spi_register_board_info(spi_board_info, ARRAY_SIZE(spi_board_info)); if (!ld9040_platform_data.lcd_enabled) lcd_cfg_gpio(); /*s3cfb_set_platdata(&fb_platform_data);*/ }
void __init mipi_fb_init(void) { struct s5p_platform_dsim *dsim_pd = NULL; struct mipi_ddi_platform_data *mipi_ddi_pd = NULL; struct dsim_lcd_config *dsim_lcd_info = NULL; /* gpio pad configuration */ lcd_cfg_gpio(); /* set platform data */ dsim_pd = s5p_device_dsim.dev.platform_data; dsim_pd->platform_rev = 1; dsim_pd->mipi_power = s5p_dsim_mipi_power_control; dsim_lcd_info = dsim_pd->dsim_lcd_info; dsim_lcd_info->lcd_panel_info = (void *)&lcd_panel_pdata; #if defined(CONFIG_MACH_T0) || defined(CONFIG_MACH_IPCAM) if (!gpio_get_value(GPIO_OLED_ID)) /* for EA8061 DDI */ memcpy(&lcd_panel_pdata, &ea8061, sizeof(struct s3cfb_lcd)); #endif dsim_pd->dsim_info->e_no_data_lane = DSIM_NO_DATA_LANE; dsim_pd->dsim_info->p = DPHY_PLL_P; dsim_pd->dsim_info->m = DPHY_PLL_M; dsim_pd->dsim_info->s = DPHY_PLL_S; mipi_ddi_pd = dsim_lcd_info->mipi_ddi_pd; mipi_ddi_pd->lcd_reset = reset_lcd; mipi_ddi_pd->lcd_power_on = lcd_power_on; platform_device_register(&s5p_device_dsim); s3cfb_set_platdata(&mipi_fb_data); #ifdef CONFIG_BACKLIGHT_LP855X lcd_bl_init(); #endif }
void __init mipi_fb_init(void) { struct s5p_platform_dsim *dsim_pd = NULL; struct mipi_ddi_platform_data *mipi_ddi_pd = NULL; struct dsim_lcd_config *dsim_lcd_info = NULL; /* set platform data */ /* gpio pad configuration for rgb and spi interface. */ lcd_cfg_gpio(); /* * register lcd panel data. */ printk(KERN_INFO "%s :: fb_platform_data.hw_ver = 0x%x\n", __func__, fb_platform_data.hw_ver); dsim_pd = (struct s5p_platform_dsim *) s5p_device_dsim.dev.platform_data; dsim_pd->platform_rev = 1; dsim_pd->mipi_power = s5p_dsim_mipi_power_control; dsim_lcd_info = dsim_pd->dsim_lcd_info; #if defined(CONFIG_FB_S5P_S6E8AA0) dsim_lcd_info->lcd_panel_info = (void *)&s6e8aa0; #endif #if defined(CONFIG_FB_S5P_EA8061) dsim_lcd_info->lcd_panel_info = (void *)&ea8061; #endif #if defined(CONFIG_FB_S5P_S6EVR02) dsim_lcd_info->lcd_panel_info = (void *)&s6evr02; #endif #if defined(CONFIG_FB_S5P_S6D6AA1) dsim_lcd_info->lcd_panel_info = (void *)&s6d6aa1; #endif #if defined(CONFIG_MACH_T0) && defined(CONFIG_FB_S5P_S6EVR02) && defined(GPIO_OLED_ID) if (!gpio_get_value(GPIO_OLED_ID)) { /* for EA8061 DDI */ dsim_lcd_info->lcd_panel_info = (void *)&ea8061; fb_platform_data.lcd = (void *)&ea8061; } #endif #ifdef CONFIG_FB_S5P_S6E63M0 dsim_lcd_info->lcd_panel_info = (void *)&s6e63m0; dsim_pd->dsim_info->e_no_data_lane = DSIM_DATA_LANE_2; /* 320Mbps */ dsim_pd->dsim_info->p = 3; dsim_pd->dsim_info->m = 80; dsim_pd->dsim_info->s = 1; #elif defined(CONFIG_FB_S5P_LMS501XX) dsim_lcd_info->lcd_panel_info = (void *)&lms501xx; dsim_pd->dsim_info->e_no_data_lane = DSIM_DATA_LANE_2; /* 440Mbps */ dsim_pd->dsim_info->p = 3; dsim_pd->dsim_info->m = 110; dsim_pd->dsim_info->s = 1; #else /* 500Mbps */ dsim_pd->dsim_info->p = 3; dsim_pd->dsim_info->m = 125; dsim_pd->dsim_info->s = 1; #endif mipi_ddi_pd = (struct mipi_ddi_platform_data *) dsim_lcd_info->mipi_ddi_pd; mipi_ddi_pd->lcd_reset = reset_lcd; mipi_ddi_pd->lcd_power_on = lcd_power_on; platform_device_register(&s5p_device_dsim); /*s3cfb_set_platdata(&fb_platform_data);*/ }