disp: msm: sde: install retire fence offset property
Add changes to install retire fence offset property and this configurable offset property can be used to create speculative retire fences. Change-Id: I0b5bf9bab5bfb811ddbc7a3e8813a3e801272d41 Signed-off-by: Jayaprakash Madisetty <jmadiset@codeaurora.org>
这个提交包含在:
@@ -202,6 +202,7 @@ enum msm_mdp_conn_property {
|
||||
/* range properties */
|
||||
CONNECTOR_PROP_OUT_FB = CONNECTOR_PROP_BLOBCOUNT,
|
||||
CONNECTOR_PROP_RETIRE_FENCE,
|
||||
CONN_PROP_RETIRE_FENCE_OFFSET,
|
||||
CONNECTOR_PROP_DST_X,
|
||||
CONNECTOR_PROP_DST_Y,
|
||||
CONNECTOR_PROP_DST_W,
|
||||
|
@@ -1501,12 +1501,17 @@ static int sde_connector_atomic_set_property(struct drm_connector *connector,
|
||||
* requesting for the retire fence
|
||||
*/
|
||||
if (prev_user_fd == -1) {
|
||||
uint32_t offset;
|
||||
|
||||
offset = sde_connector_get_property(state,
|
||||
CONN_PROP_RETIRE_FENCE_OFFSET);
|
||||
/*
|
||||
* update the offset to a timeline for
|
||||
* commit completion
|
||||
*/
|
||||
offset++;
|
||||
rc = sde_fence_create(c_conn->retire_fence,
|
||||
&fence_user_fd, 1);
|
||||
&fence_user_fd, offset);
|
||||
if (rc) {
|
||||
SDE_ERROR("fence create failed rc:%d\n", rc);
|
||||
goto end;
|
||||
@@ -2797,6 +2802,10 @@ static int _sde_connector_install_properties(struct drm_device *dev,
|
||||
msm_property_install_volatile_range(&c_conn->property_info,
|
||||
"RETIRE_FENCE", 0x0, 0, ~0, 0, CONNECTOR_PROP_RETIRE_FENCE);
|
||||
|
||||
msm_property_install_volatile_range(&c_conn->property_info,
|
||||
"RETIRE_FENCE_OFFSET", 0x0, 0, ~0, 0,
|
||||
CONN_PROP_RETIRE_FENCE_OFFSET);
|
||||
|
||||
msm_property_install_range(&c_conn->property_info, "autorefresh",
|
||||
0x0, 0, AUTOREFRESH_MAX_FRAME_CNT, 0,
|
||||
CONNECTOR_PROP_AUTOREFRESH);
|
||||
|
在新工单中引用
屏蔽一个用户