コード例 #1
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;

	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;
}
コード例 #2
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;
}