From: Charlene Liu <charlene....@amd.com>

[why]
the guard of is_apu not in sync, caused no watermark_c output.

Reviewed-by: Ovidiu Bunea <ovidiu.bu...@amd.com>
Signed-off-by: Charlene Liu <charlene....@amd.com>
Signed-off-by: Aurabindo Pillai <aurabindo.pil...@amd.com>
---
 drivers/gpu/drm/amd/display/dc/dml2/dml2_wrapper.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/display/dc/dml2/dml2_wrapper.c 
b/drivers/gpu/drm/amd/display/dc/dml2/dml2_wrapper.c
index 939ee0708bd2..359a0337d617 100644
--- a/drivers/gpu/drm/amd/display/dc/dml2/dml2_wrapper.c
+++ b/drivers/gpu/drm/amd/display/dc/dml2/dml2_wrapper.c
@@ -661,7 +661,10 @@ static bool dml2_validate_and_build_resource(const struct 
dc *in_dc, struct dc_s
                dml2_copy_clocks_to_dc_state(&out_clks, context);
                
dml2_extract_watermark_set(&context->bw_ctx.bw.dcn.watermarks.a, 
&dml2->v20.dml_core_ctx);
                
dml2_extract_watermark_set(&context->bw_ctx.bw.dcn.watermarks.b, 
&dml2->v20.dml_core_ctx);
-               memcpy(&context->bw_ctx.bw.dcn.watermarks.c, 
&dml2->v20.g6_temp_read_watermark_set, 
sizeof(context->bw_ctx.bw.dcn.watermarks.c));
+               if (context->streams[0]->sink->link->dc->caps.is_apu)
+                       
dml2_extract_watermark_set(&context->bw_ctx.bw.dcn.watermarks.c, 
&dml2->v20.dml_core_ctx);
+               else
+                       memcpy(&context->bw_ctx.bw.dcn.watermarks.c, 
&dml2->v20.g6_temp_read_watermark_set, 
sizeof(context->bw_ctx.bw.dcn.watermarks.c));
                
dml2_extract_watermark_set(&context->bw_ctx.bw.dcn.watermarks.d, 
&dml2->v20.dml_core_ctx);
                dml2_extract_writeback_wm(context, &dml2->v20.dml_core_ctx);
                //copy for deciding zstate use
-- 
2.49.0

Reply via email to