예제 #1
0
static int mipi_s6d6aa0_lcd_on(struct platform_device *pdev)
{
	int ret;
	struct msm_fb_data_type *mfd;
	struct mipi_dsi_data *dsi_data;

	mfd = platform_get_drvdata(pdev);
	if (!mfd)
		return -ENODEV;
	if (mfd->key != MFD_KEY)
		return -EINVAL;

	mutex_lock(&esd_lock);
	mipi_dsi_panel_mfd = mfd;

	dsi_data = platform_get_drvdata(mfd->panel_pdev);
	if (dsi_data->panel && dsi_data->panel->plncfg)
		mipi_dsi_update_lane_cfg(dsi_data->panel->plncfg);
	ret = mipi_s6d6aa0_disp_on(mfd);
	if (ret) {
		dev_err(&pdev->dev, "%s: Display on failed\n", __func__);
	} else if (dsi_data->panel->esd_failed_check) {
		dsi_data->esd_check_enable = true;
		panel_esd_start_check(dsi_data);
	}
	mutex_unlock(&esd_lock);
	return ret;
}
예제 #2
0
static int mipi_nt35565_ic_on_lcd_on(struct platform_device *pdev)
{
	int ret;
	struct msm_fb_data_type *mfd;
	struct mipi_dsi_data *dsi_data;

	mfd = platform_get_drvdata(pdev);
	if (!mfd)
		return -ENODEV;
	if (mfd->key != MFD_KEY)
		return -EINVAL;

	dsi_data = platform_get_drvdata(mfd->panel_pdev);
	if (dsi_data->panel && dsi_data->panel->plncfg)
		mipi_dsi_update_lane_cfg(dsi_data->panel->plncfg);
	ret = mipi_nt35565_ic_on_disp_on(mfd);
	if (ret)
		dev_err(&pdev->dev, "%s: Display on failed\n", __func__);

	return ret;
}