void __init msm_fb_add_devices(void) { int rc = 0; msm7x27a_set_display_params(prim_panel_name); if (machine_is_msm7627a_qrd1()) platform_add_devices(qrd_fb_devices, ARRAY_SIZE(qrd_fb_devices)); else if (machine_is_msm7627a_evb() || machine_is_msm8625_evb() || machine_is_msm8625_evt()) { mipi_NT35510_pdata.bl_lock = 1; mipi_NT35516_pdata.bl_lock = 1; if (disable_splash) mdp_pdata.cont_splash_enabled = 0x0; platform_add_devices(evb_fb_devices, ARRAY_SIZE(evb_fb_devices)); } else if (machine_is_msm7627a_qrd3() || machine_is_msm8625_qrd7()) { sku3_lcdc_lcd_camera_power_init(); mdp_pdata.cont_splash_enabled = 0x0; platform_add_devices(qrd3_fb_devices, ARRAY_SIZE(qrd3_fb_devices)); } else { mdp_pdata.cont_splash_enabled = 0x0; platform_add_devices(msm_fb_devices, ARRAY_SIZE(msm_fb_devices)); } msm_fb_register_device("mdp", &mdp_pdata); if (machine_is_msm7625a_surf() || machine_is_msm7x27a_surf() || machine_is_msm8625_surf() || machine_is_msm7627a_qrd3() || machine_is_msm8625_qrd7()) msm_fb_register_device("lcdc", &lcdc_pdata); #ifdef CONFIG_FB_MSM_MIPI_DSI msm_fb_register_device("mipi_dsi", &mipi_dsi_pdata); #endif if (machine_is_msm7627a_evb() || machine_is_msm8625_evb() || machine_is_msm8625_evt()) { gpio_reg_2p85v = regulator_get(&mipi_dsi_device.dev, "lcd_vdd"); if (IS_ERR(gpio_reg_2p85v)) pr_err("%s:ext_2p85v regulator get failed", __func__); gpio_reg_1p8v = regulator_get(&mipi_dsi_device.dev, "lcd_vddi"); if (IS_ERR(gpio_reg_1p8v)) pr_err("%s:ext_1p8v regulator get failed", __func__); if (mdp_pdata.cont_splash_enabled) { /*Enable EXT_2.85 and 1.8 regulators*/ rc = regulator_enable(gpio_reg_2p85v); if (rc < 0) pr_err("%s: reg enable failed\n", __func__); rc = regulator_enable(gpio_reg_1p8v); if (rc < 0) pr_err("%s: reg enable failed\n", __func__); } } }
void __init msm_fb_add_devices(void) { int rc = 0; #if 1 // #suwg. printk("xxx %s \n",__func__); printk("machine_is_msm7627a_qrd1 %d\n",machine_is_msm7627a_qrd1()); printk("machine_is_msm8625q_skud %d\n",machine_is_msm8625q_skud()); printk("machine_is_msm7x27a_qrd5a %d\n",machine_is_msm7x27a_qrd5a()); printk("machine_is_msm8625_qrd5 %d\n",machine_is_msm8625_qrd5()); printk("disable_splash %d\n",disable_splash); msm7x27a_set_display_params(prim_panel_name); if (disable_splash) mdp_pdata.cont_splash_enabled = 0x0; platform_add_devices(odmm_fb_devices, ARRAY_SIZE(odmm_fb_devices)); msm_fb_register_device("mdp", &mdp_pdata); //#ifdef CONFIG_FB_MSM_MIPI_DSI msm_fb_register_device("mipi_dsi", &mipi_dsi_pdata); //#endif return; #endif msm7x27a_set_display_params(prim_panel_name); if (machine_is_msm7627a_qrd1()) platform_add_devices(qrd_fb_devices, ARRAY_SIZE(qrd_fb_devices)); else if (machine_is_msm7627a_evb() || machine_is_msm8625_evb() || machine_is_msm8625_qrd5() || machine_is_msm7x27a_qrd5a()) { mipi_NT35510_pdata.bl_lock = 1; mipi_NT35516_pdata.bl_lock = 1; if (disable_splash) mdp_pdata.cont_splash_enabled = 0x0; platform_add_devices(evb_fb_devices, ARRAY_SIZE(evb_fb_devices)); } else if (machine_is_msm7627a_qrd3() || machine_is_msm8625_qrd7()) { sku3_lcdc_lcd_camera_power_init(); mdp_pdata.cont_splash_enabled = 0x0; platform_add_devices(qrd3_fb_devices, ARRAY_SIZE(qrd3_fb_devices)); } else if (machine_is_msm8625q_skud() || machine_is_msm8625q_evbd()) { if (disable_splash) mdp_pdata.cont_splash_enabled = 0x0; /* SKUD and SKUD' use different lane connection */ if (cpu_is_msm8625q()){ if(!strncmp((char *)prim_panel_name, "mipi_video_hx8392a_720p", 23)) mipi_dsi_pdata.dlane_swap = 3; else mipi_dsi_pdata.dlane_swap = 0; pr_info("[DISP] The prim panel name is %s, Swap lane is %d\n", prim_panel_name,mipi_dsi_pdata.dlane_swap); } platform_add_devices(skud_fb_devices, ARRAY_SIZE(skud_fb_devices)); } else if (machine_is_msm8625q_skue()) { if (disable_splash) mdp_pdata.cont_splash_enabled = 0x0; /* SKUE and SKUE' use different lane connection */ if (cpu_is_msm8625q()) mipi_dsi_pdata.dlane_swap = 0; platform_add_devices(skue_fb_devices, ARRAY_SIZE(skue_fb_devices)); } else { mdp_pdata.cont_splash_enabled = 0x0; platform_add_devices(msm_fb_devices, ARRAY_SIZE(msm_fb_devices)); } msm_fb_register_device("mdp", &mdp_pdata); if (machine_is_msm7625a_surf() || machine_is_msm7x27a_surf() || machine_is_msm8625_surf() || machine_is_msm7627a_qrd3() || machine_is_msm8625_qrd7()) msm_fb_register_device("lcdc", &lcdc_pdata); #ifdef CONFIG_FB_MSM_MIPI_DSI msm_fb_register_device("mipi_dsi", &mipi_dsi_pdata); #endif if (machine_is_msm7627a_evb() || machine_is_msm8625_evb() || machine_is_msm8625_qrd5() || machine_is_msm7x27a_qrd5a() || machine_is_msm8625q_evbd()) { gpio_reg_2p85v = regulator_get(&mipi_dsi_device.dev, "lcd_vdd"); if (IS_ERR(gpio_reg_2p85v)) pr_err("%s:ext_2p85v regulator get failed", __func__); gpio_reg_1p8v = regulator_get(&mipi_dsi_device.dev, "lcd_vddi"); if (IS_ERR(gpio_reg_1p8v)) pr_err("%s:ext_1p8v regulator get failed", __func__); if (mdp_pdata.cont_splash_enabled) { /*Enable EXT_2.85 and 1.8 regulators*/ rc = regulator_enable(gpio_reg_2p85v); if (rc < 0) pr_err("%s: reg enable failed\n", __func__); rc = regulator_enable(gpio_reg_1p8v); if (rc < 0) pr_err("%s: reg enable failed\n", __func__); } } }