static int mipi_samsung_disp_on(struct platform_device *pdev) { struct msm_fb_data_type *mfd; struct mipi_panel_info *mipi; static int first_boot_on; mfd = platform_get_drvdata(pdev); if (unlikely(!mfd)) return -ENODEV; if (unlikely(mfd->key != MFD_KEY)) return -EINVAL; mipi = &mfd->panel_info.mipi; if (!first_boot_on) { execute_panel_init(mfd); first_boot_on = 1; } if (get_auto_brightness() >= 6) msd.mpd->first_bl_hbm_psre = 1; sec_debug_mdp_reset_value(); pr_info("[%s]\n", __func__); return 0; }
static int mipi_samsung_disp_on(struct platform_device *pdev) { struct msm_fb_data_type *mfd; struct mipi_panel_info *mipi; static int first_boot_on; u32 tmp; mfd = platform_get_drvdata(pdev); if (unlikely(!mfd)) return -ENODEV; if (unlikely(mfd->key != MFD_KEY)) return -EINVAL; mipi = &mfd->panel_info.mipi; if (!first_boot_on) { execute_panel_init(mfd); first_boot_on = 1; } if (get_ldi_chip() == LDI_MAGNA) { mipi_set_tx_power_mode(LP_TX_MODE); mipi_samsung_disp_send_cmd(mfd, PANEL_READY_TO_ON, false); mipi_set_tx_power_mode(HS_TX_MODE); /* force dsi_clk alway on * Magan nees clk lane LP mode before sending 0xF0 & 0xFC & 0xD2 cmds */ tmp = MIPI_INP(MIPI_DSI_BASE + 0xA8); tmp |= (1<<28); MIPI_OUTP(MIPI_DSI_BASE + 0xA8, tmp); wmb(); } if (get_auto_brightness() >= 6) msd.mpd->first_bl_hbm_psre = 1; sec_debug_mdp_reset_value(); pr_info("[%s]\n", __func__); return 0; }