static int mdss_panel_revision(struct mdss_dsi_ctrl_pdata *ctrl) { struct samsung_display_driver_data *vdd = check_valid_ctrl(ctrl); if (IS_ERR_OR_NULL(vdd)) { pr_err("%s: Invalid data ctrl : 0x%zx vdd : 0x%zx", __func__, (size_t)ctrl, (size_t)vdd); return false; } if (vdd->manufacture_id_dsi[ctrl->ndx] == 0) mdss_panel_attach_set(ctrl, false); else mdss_panel_attach_set(ctrl, true); if (mdss_panel_id2_get(ctrl) == 0x13) vdd->panel_revision = 'D' - 'A'; else if (mdss_panel_id2_get(ctrl) == 0x14) vdd->panel_revision = 'E' - 'A'; else vdd->panel_revision = 'D' - 'A'; pr_info("%s : panel_revision = %c \n", __func__, (unsigned char)vdd->panel_revision); return true; }
static int mdss_panel_revision(struct mdss_dsi_ctrl_pdata *ctrl) { struct samsung_display_driver_data *vdd = check_valid_ctrl(ctrl); if (IS_ERR_OR_NULL(vdd)) { pr_err("%s: Invalid data ctrl : 0x%zx vdd : 0x%zx", __func__, (size_t)ctrl, (size_t)vdd); return false; } if (vdd->manufacture_id_dsi[ctrl->ndx] == 0) mdss_panel_attach_set(ctrl, false); else mdss_panel_attach_set(ctrl, true); /*temp_joann*/ if (mdss_panel_id2_get(ctrl) == 0x5) vdd->panel_revision = 'F'; else if (mdss_panel_id2_get(ctrl) == 0x6) vdd->panel_revision = 'G'; else if (mdss_panel_id2_get(ctrl) == 0x7) vdd->panel_revision = 'H'; else if (mdss_panel_id2_get(ctrl) == 0x8) // For use 0x08 Rev to 0x09 Rev vdd->panel_revision = 'J'; else if (mdss_panel_id2_get(ctrl) == 0x9) vdd->panel_revision = 'J'; else vdd->panel_revision = 'J'; vdd->panel_revision -= 'A'; pr_info("%s : panel_revision = %c %d \n", __func__, vdd->panel_revision + 'A', vdd->panel_revision); return true; }
static int mdss_panel_on_pre(struct mdss_dsi_ctrl_pdata *ctrl) { struct samsung_display_driver_data *vdd = check_valid_ctrl(ctrl); if (IS_ERR_OR_NULL(vdd)) { pr_err("%s: Invalid data ctrl : 0x%zx vdd : 0x%zx", __func__, (size_t)ctrl, (size_t)vdd); return false; } mdss_panel_attach_set(ctrl, true); return true; }
static void mdss_panel_init(struct samsung_display_driver_data *vdd) { pr_info("%s : %s", __func__, vdd->panel_name); vdd->support_panel_max = S6D7AA0_LSL080AL03_SUPPORT_PANEL_COUNT; vdd->manufacture_id_dsi[vdd->support_panel_max - 1] = get_lcd_attached("GET"); vdd->support_cabc = true; if(system_rev>=1) vdd->support_mdnie_lite = true; vdd->mdnie_tune_size1 = 17; vdd->mdnie_tune_size2 = 25; vdd->mdnie_tune_size3 = 25; vdd->mdnie_tune_size4 = 25; vdd->mdnie_tune_size5 = 19; vdd->mdnie_tune_size6 = 8; /* ON/OFF */ vdd->panel_func.samsung_panel_on_pre = mdss_panel_on_pre; vdd->panel_func.samsung_panel_on_post = NULL; vdd->panel_func.samsung_panel_off_pre = mdss_panel_off_pre; vdd->panel_func.samsung_panel_off_post = NULL; vdd->panel_func.samsung_backlight_late_on = backlight_tft_late_on; /* DDI RX */ vdd->panel_func.samsung_panel_revision = mdss_panel_revision; vdd->panel_func.samsung_manufacture_date_read = NULL; vdd->panel_func.samsung_ddi_id_read = NULL; vdd->panel_func.samsung_hbm_read = NULL; vdd->panel_func.samsung_mdnie_read = NULL; vdd->panel_func.samsung_smart_dimming_init = NULL; /* Brightness */ vdd->panel_func.samsung_brightness_tft_pwm_ldi = mdss_brightness_tft_pwm; vdd->panel_func.samsung_brightness_hbm_off = NULL; vdd->panel_func.samsung_brightness_aid = NULL; vdd->panel_func.samsung_brightness_acl_on = NULL; vdd->panel_func.samsung_brightness_acl_percent = NULL; vdd->panel_func.samsung_brightness_acl_off = NULL; vdd->panel_func.samsung_brightness_elvss = NULL; vdd->panel_func.samsung_brightness_elvss_temperature1 = NULL; vdd->panel_func.samsung_brightness_elvss_temperature2 = NULL; vdd->panel_func.samsung_brightness_vint = NULL; vdd->panel_func.samsung_brightness_gamma = NULL; vdd->brightness[0].brightness_packet_tx_cmds_dsi.link_state = DSI_HS_MODE; vdd->mdss_panel_tft_outdoormode_update=mdss_panel_tft_outdoormode_update; dsi_update_mdnie_data(); mdss_panel_attach_set(vdd->ctrl_dsi[DISPLAY_1], true); }
static int mdss_panel_on_pre(struct mdss_dsi_ctrl_pdata *ctrl) { struct samsung_display_driver_data *vdd = check_valid_ctrl(ctrl); printk("%s:%d --by sean\n",__func__,__LINE__); if (IS_ERR_OR_NULL(vdd)) { pr_err("%s: Invalid data ctrl : 0x%zx vdd : 0x%zx", __func__, (size_t)ctrl, (size_t)vdd); return false; } pr_info("%s %d\n", __func__, ctrl->ndx); mdss_panel_attach_set(ctrl, true); return true; }
static void mdss_panel_init(struct samsung_display_driver_data *vdd) { pr_info("%s : %s", __func__, vdd->panel_name); vdd->support_panel_max = HX8389C_GH9607501A_SUPPORT_PANEL_COUNT; vdd->support_mdnie_lite = true; vdd->mdnie_tune_size1 = 2; vdd->mdnie_tune_size2 = 0; vdd->manufacture_id_dsi[vdd->support_panel_max - 1] = get_lcd_attached("GET"); if (vdd->ctrl_dsi[DISPLAY_1]->bklt_ctrl == BL_DCS_CMD) vdd->support_cabc = true; /* ON/OFF */ vdd->panel_func.samsung_panel_on_pre = mdss_panel_on_pre; vdd->panel_func.samsung_panel_on_post = mdss_panel_on_post; vdd->panel_func.samsung_panel_off_pre = NULL; vdd->panel_func.samsung_panel_off_post = mdss_panel_off_post; vdd->panel_func.samsung_backlight_late_on = backlight_tft_late_on; /* DDI RX */ vdd->panel_func.samsung_panel_revision = mdss_panel_revision; vdd->panel_func.samsung_manufacture_date_read = NULL; vdd->panel_func.samsung_ddi_id_read = NULL; vdd->panel_func.samsung_hbm_read = NULL; vdd->panel_func.samsung_mdnie_read = NULL; vdd->panel_func.samsung_smart_dimming_init = NULL; /* Brightness */ vdd->panel_func.samsung_brightness_tft_pwm_ldi = mdss_brightness_tft_pwm; vdd->panel_func.samsung_brightness_tft_pwm = mdss_panel_tft_pwm_control; vdd->panel_func.samsung_brightness_hbm_off = NULL; vdd->panel_func.samsung_brightness_aid = NULL; vdd->panel_func.samsung_brightness_acl_on = NULL; vdd->panel_func.samsung_brightness_acl_percent = NULL; vdd->panel_func.samsung_brightness_acl_off = NULL; vdd->panel_func.samsung_brightness_elvss = NULL; vdd->panel_func.samsung_brightness_elvss_temperature1 = NULL; vdd->panel_func.samsung_brightness_elvss_temperature2 = NULL; vdd->panel_func.samsung_brightness_vint = NULL; vdd->panel_func.samsung_brightness_gamma = NULL; vdd->brightness[0].brightness_packet_tx_cmds_dsi.link_state = DSI_HS_MODE; dsi_update_mdnie_data(); mdss_panel_attach_set(vdd->ctrl_dsi[DISPLAY_1], true); }
static void mdss_panel_init(struct samsung_display_driver_data *vdd) { pr_info("%s : %s", __func__, vdd->panel_name); vdd->support_panel_max = NT71391_BP080WX7_SUPPORT_PANEL_COUNT; vdd->support_mdnie_lite = false; /* ON/OFF */ vdd->panel_func.samsung_panel_on_pre = mdss_panel_on_pre; vdd->panel_func.samsung_panel_on_post = NULL; vdd->panel_func.samsung_panel_off_pre = mdss_panel_off_pre; vdd->panel_func.samsung_panel_off_post = NULL; /* DDI RX */ vdd->panel_func.samsung_panel_revision = mdss_panel_revision; vdd->panel_func.samsung_manufacture_date_read = NULL; vdd->panel_func.samsung_ddi_id_read = NULL; vdd->panel_func.samsung_hbm_read = NULL; vdd->panel_func.samsung_mdnie_read = NULL; vdd->panel_func.samsung_smart_dimming_init = NULL; /* Brightness */ vdd->panel_func.samsung_brightness_tft_pwm_ldi = NULL; vdd->panel_func.samsung_brightness_hbm_off = NULL; vdd->panel_func.samsung_brightness_aid = NULL; vdd->panel_func.samsung_brightness_acl_on = NULL; vdd->panel_func.samsung_brightness_acl_percent = NULL; vdd->panel_func.samsung_brightness_acl_off = NULL; vdd->panel_func.samsung_brightness_elvss = NULL; vdd->panel_func.samsung_brightness_elvss_temperature1 = NULL; vdd->panel_func.samsung_brightness_elvss_temperature2 = NULL; vdd->panel_func.samsung_brightness_vint = NULL; vdd->panel_func.samsung_brightness_gamma = NULL; vdd->brightness[0].brightness_packet_tx_cmds_dsi.link_state = DSI_HS_MODE; vdd->panel_func.samsung_brightness_tft_pwm = mdss_panel_tft_pwm_control; mdss_panel_attach_set(vdd->ctrl_dsi[DISPLAY_1], true); }