[Description]
- Have option to exit idle opt on cursor updates
for debug and optimizations purposes
Reviewed-by: Samson Tam <Samson.Tam@amd.com>
Acked-by: Hamza Mahfooz <hamza.mahfooz@amd.com>
Signed-off-by: Alvin Lee <Alvin.Lee2@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
        struct dc_stream_state *stream,
        const struct dc_cursor_position *position)
 {
-       struct dc  *dc;
+       struct dc  *dc = stream->ctx->dc;
        bool reset_idle_optimizations = false;
 
        if (NULL == stream) {
        dc_z10_restore(dc);
 
        /* disable idle optimizations if enabling cursor */
-       if (dc->idle_optimizations_allowed && !stream->cursor_position.enable && position->enable) {
+       if (dc->idle_optimizations_allowed && (!stream->cursor_position.enable || dc->debug.exit_idle_opt_for_cursor_updates)
+                       && position->enable) {
                dc_allow_idle_optimizations(dc, false);
                reset_idle_optimizations = true;
        }
 
        uint8_t psr_power_use_phy_fsm;
        enum dml_hostvm_override_opts dml_hostvm_override;
        bool use_legacy_soc_bb_mechanism;
+       bool exit_idle_opt_for_cursor_updates;
 };
 
 struct gpu_info_soc_bounding_box_v1_0;