From: Tony Qi <[email protected]>

This reverts commit 6624a33b3807 ("Request DMUB HW cursor offload).

[WHY]
This commit causes the following failures on DCN42:

igt@kms_plane_cursor@viewport
igt@kms_plane_cursor@overlay

Reviewed-by: Alex Hung <[email protected]>
Signed-off-by: Tony Qi <[email protected]>
Signed-off-by: George Zhang <[email protected]>
---
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 10 ----------
 drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c      |  9 +--------
 2 files changed, 1 insertion(+), 18 deletions(-)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
index ca795cda8084..623ef81a0231 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
@@ -606,13 +606,6 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
 
        init_data.flags.enable_mipi_converter_optimization = true;
 
-       /*
-        * Request HW cursor offload so DMUB programs the cursor; cursor
-        * updates then avoid the DMUB inbox0 HW lock during mclk switches.
-        * dc_dmub_srv_cursor_offload_init() self-gates on FW capability.
-        */
-       init_data.flags.enable_cursor_offload = true;
-
        init_data.dcn_reg_offsets = adev->reg_offset[DCE_HWIP][0];
        init_data.nbio_reg_offsets = adev->reg_offset[NBIO_HWIP][0];
        init_data.clk_reg_offsets = adev->reg_offset[CLK_HWIP][0];
@@ -730,9 +723,6 @@ static int amdgpu_dm_init(struct amdgpu_device *adev)
 
        dc_hardware_init(adev->dm.dc);
 
-       /* Enable cursor offload if the DMUB firmware supports it. */
-       dc_dmub_srv_cursor_offload_init(adev->dm.dc);
-
        /* GOP/vBIOS may leave an OPTC enabled for a display present at power-on
         * but no longer driven (e.g. an external DP unplugged at boot). Such a
         * dangling pipe keeps DCN out of idle and blocks s0i3. Power it down
diff --git a/drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c 
b/drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c
index 37248ecc3c08..d9af53f720f7 100644
--- a/drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c
+++ b/drivers/gpu/drm/amd/display/dc/dc_dmub_srv.c
@@ -1250,16 +1250,9 @@ void dc_dmub_srv_subvp_save_surf_addr(const struct 
dc_dmub_srv *dc_dmub_srv, con
 void dc_dmub_srv_cursor_offload_init(struct dc *dc)
 {
        struct dmub_rb_cmd_cursor_offload_init *init;
-       struct dc_dmub_srv *dc_dmub_srv;
+       struct dc_dmub_srv *dc_dmub_srv = dc->ctx->dmub_srv;
        union dmub_rb_cmd cmd;
 
-       if (!dc || !dc->ctx)
-               return;
-
-       dc_dmub_srv = dc->ctx->dmub_srv;
-       if (!dc_dmub_srv || !dc_dmub_srv->dmub)
-               return;
-
        if (!dc->config.enable_cursor_offload)
                return;
 
-- 
2.55.0

Reply via email to