Loading drivers/video/msm/mdss/mdss_fb.c +13 −5 Original line number Diff line number Diff line Loading @@ -3491,16 +3491,24 @@ static int mdss_fb_check_var(struct fb_var_screeninfo *var, if (mode == NULL) return -EINVAL; } else if (mfd->panel_info && !(var->activate & FB_ACTIVATE_TEST)) { struct mdss_panel_info *panel_info; int rc; panel_info = kzalloc(sizeof(struct mdss_panel_info), GFP_KERNEL); if (!panel_info) return -ENOMEM; memcpy(&mfd->reconfig_panel_info, mfd->panel_info, sizeof(mfd->reconfig_panel_info)); mdss_fb_var_to_panelinfo(var, &mfd->reconfig_panel_info); memcpy(panel_info, mfd->panel_info, sizeof(struct mdss_panel_info)); mdss_fb_var_to_panelinfo(var, panel_info); rc = mdss_fb_send_panel_event(mfd, MDSS_EVENT_CHECK_PARAMS, &mfd->reconfig_panel_info); if (IS_ERR_VALUE(rc)) panel_info); if (IS_ERR_VALUE(rc)) { kfree(panel_info); return rc; } mfd->panel_reconfig = rc; kfree(panel_info); } return 0; Loading Loading
drivers/video/msm/mdss/mdss_fb.c +13 −5 Original line number Diff line number Diff line Loading @@ -3491,16 +3491,24 @@ static int mdss_fb_check_var(struct fb_var_screeninfo *var, if (mode == NULL) return -EINVAL; } else if (mfd->panel_info && !(var->activate & FB_ACTIVATE_TEST)) { struct mdss_panel_info *panel_info; int rc; panel_info = kzalloc(sizeof(struct mdss_panel_info), GFP_KERNEL); if (!panel_info) return -ENOMEM; memcpy(&mfd->reconfig_panel_info, mfd->panel_info, sizeof(mfd->reconfig_panel_info)); mdss_fb_var_to_panelinfo(var, &mfd->reconfig_panel_info); memcpy(panel_info, mfd->panel_info, sizeof(struct mdss_panel_info)); mdss_fb_var_to_panelinfo(var, panel_info); rc = mdss_fb_send_panel_event(mfd, MDSS_EVENT_CHECK_PARAMS, &mfd->reconfig_panel_info); if (IS_ERR_VALUE(rc)) panel_info); if (IS_ERR_VALUE(rc)) { kfree(panel_info); return rc; } mfd->panel_reconfig = rc; kfree(panel_info); } return 0; Loading