disp: msm: add property to handle fence error in driver

Add a new property CRTC_PROP_HANDLE_FENCE_ERROR for userspace
to enable or disable fence error handling.

Change-Id: I72370f405c5299c603b0d673720c28a68c00807a
Signed-off-by: GG Hou <quic_renjhou@quicinc.com>
This commit is contained in:
GG Hou
2023-03-27 14:39:37 +08:00
committad av Gerrit - the friendly Code Review server
förälder 26ef97e2a5
incheckning 97b1afdda8
3 ändrade filer med 21 tillägg och 0 borttagningar

Visa fil

@@ -198,6 +198,7 @@ enum msm_mdp_crtc_property {
CRTC_PROP_VM_REQ_STATE,
CRTC_PROP_NOISE_LAYER_V1,
CRTC_PROP_FRAME_DATA_BUF,
CRTC_PROP_HANDLE_FENCE_ERROR,
/* total # of properties */
CRTC_PROP_COUNT

Visa fil

@@ -6594,6 +6594,11 @@ static void sde_crtc_install_properties(struct drm_crtc *crtc,
{SDE_DRM_SEC_ONLY, "sec_only"},
};
static const struct drm_prop_enum_list e_fence_error_handle_flag[] = {
{FENCE_ERROR_HANDLE_DISABLE, "fence_error_handle_disable"},
{FENCE_ERROR_HANDLE_ENABLE, "fence_error_handle_enable"},
};
static const struct drm_prop_enum_list e_cwb_data_points[] = {
{CAPTURE_MIXER_OUT, "capture_mixer_out"},
{CAPTURE_DSPP_OUT, "capture_pp_out"},
@@ -6682,6 +6687,11 @@ static void sde_crtc_install_properties(struct drm_crtc *crtc,
ARRAY_SIZE(e_cwb_data_points), 0,
CRTC_PROP_CAPTURE_OUTPUT);
msm_property_install_enum(&sde_crtc->property_info,
"fence_error_handle_flag", 0, 0, e_fence_error_handle_flag,
ARRAY_SIZE(e_fence_error_handle_flag), 0,
CRTC_PROP_HANDLE_FENCE_ERROR);
msm_property_install_volatile_range(&sde_crtc->property_info,
"sde_drm_roi_v1", 0x0, 0, ~0, 0, CRTC_PROP_ROI_V1);

Visa fil

@@ -64,6 +64,16 @@ enum sde_crtc_output_capture_point {
CAPTURE_DEMURA_OUT
};
/**
* enum fence_error_handle_flag: the flag to enable/disable fence error handling in kernel
* @FENCE_ERROR_HANDLE_DISABLE : disable fence error handling in kernel
* @FENCE_ERROR_HANDLE_ENABLE : enable fence error handling in kernel
*/
enum fence_error_handle_flag {
FENCE_ERROR_HANDLE_DISABLE,
FENCE_ERROR_HANDLE_ENABLE,
};
/**
* enum sde_crtc_idle_pc_state: states of idle power collapse
* @IDLE_PC_NONE: no-op