disp: msm: sde: add xin client clock status for wb2

CWB may trigger frame missed message if interrupts
are disabled on specific CPU. WB2 will only find single
interrupt status for two posted start triggered frame.
SDE driver will start checking the xin client clock
status for wb2 timeout case to trigger the valid
frame done status.

Change-Id: I16a99667116732002e6dec8a18330f8b45199387
Signed-off-by: Dhaval Patel <pdhaval@codeaurora.org>
此提交包含在:
Dhaval Patel
2020-06-17 16:45:00 -07:00
父節點 743dc695c4
當前提交 31d4bb10a6
共有 7 個檔案被更改,包括 146 行新增2 行删除

查看文件

@@ -44,6 +44,18 @@ struct sde_vbif_set_xin_halt_params {
bool enable;
};
/**
* struct sde_vbif_get_xin_status_params - xin halt parameters
* @vbif_idx: vbif identifier
* @xin_id: client interface identifier
* @clk_ctrl: clock control identifier of the xin
*/
struct sde_vbif_get_xin_status_params {
u32 vbif_idx;
u32 xin_id;
u32 clk_ctrl;
};
/**
* struct sde_vbif_set_qos_params - QoS remapper parameter
* @vbif_idx: vbif identifier
@@ -78,6 +90,16 @@ void sde_vbif_set_ot_limit(struct sde_kms *sde_kms,
bool sde_vbif_set_xin_halt(struct sde_kms *sde_kms,
struct sde_vbif_set_xin_halt_params *params);
/**
* sde_vbif_get_xin_status - halt one of the xin ports
* This function isn't thread safe.
* @sde_kms: SDE handler
* @params: Pointer to xin status parameters
* Returns: true if xin client is idle, false otherwise
*/
bool sde_vbif_get_xin_status(struct sde_kms *sde_kms,
struct sde_vbif_get_xin_status_params *params);
/**
* sde_vbif_set_qos_remap - set QoS priority level remap
* @sde_kms: SDE handler