disp: msm: sde: handle empty list of ROI in rounded corner
Currently, RC is assuming that partial update callback functions will not be called when there is a full frame update and that CP framework will return early instead. This assumption had to be changed to support full frame transition for CP features such as demura and SPR and now the responsibility is up to each feature to handle this corner case. This change is returning early in PU callback function if the payload buffer is 0. Change-Id: I478888fb036e642d5274a2cccc4d5378e62d6afa Signed-off-by: Amine Najahi <anajahi@codeaurora.org>
此提交包含在:

提交者
Gerrit - the friendly Code Review server

父節點
df2282649d
當前提交
154f37f92d
@@ -769,6 +769,12 @@ int sde_hw_rc_check_pu_roi(struct sde_hw_dspp *hw_dspp, void *cfg)
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
roi_list = hw_cfg->payload;
|
||||
if (!roi_list) {
|
||||
SDE_DEBUG("empty list of roi\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
rc_mask_cfg = RC_STATE(hw_dspp).last_rc_mask_cfg;
|
||||
mask_programmed = RC_STATE(hw_dspp).mask_programmed;
|
||||
|
||||
@@ -784,7 +790,6 @@ int sde_hw_rc_check_pu_roi(struct sde_hw_dspp *hw_dspp, void *cfg)
|
||||
return rc;
|
||||
}
|
||||
|
||||
roi_list = hw_cfg->payload;
|
||||
sde_kms_rect_merge_rectangles(roi_list, &merged_roi);
|
||||
rc = _sde_hw_rc_get_ajusted_roi(hw_cfg, &merged_roi, &rc_roi);
|
||||
if (rc) {
|
||||
@@ -825,6 +830,12 @@ int sde_hw_rc_setup_pu_roi(struct sde_hw_dspp *hw_dspp, void *cfg)
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
roi_list = hw_cfg->payload;
|
||||
if (!roi_list) {
|
||||
SDE_DEBUG("empty list of roi\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
rc_mask_cfg = RC_STATE(hw_dspp).last_rc_mask_cfg;
|
||||
mask_programmed = RC_STATE(hw_dspp).mask_programmed;
|
||||
|
||||
@@ -834,7 +845,6 @@ int sde_hw_rc_setup_pu_roi(struct sde_hw_dspp *hw_dspp, void *cfg)
|
||||
return SDE_HW_RC_PU_SKIP_OP;
|
||||
}
|
||||
|
||||
roi_list = hw_cfg->payload;
|
||||
sde_kms_rect_merge_rectangles(roi_list, &merged_roi);
|
||||
rc = _sde_hw_rc_get_ajusted_roi(hw_cfg, &merged_roi, &rc_roi);
|
||||
if (rc) {
|
||||
|
新增問題並參考
封鎖使用者