From: Aurabindo Pillai <aurabindo.pil...@amd.com>

[WHY & HOW]
Check whether get_subvp_en() callback exists before calling it.

Cc: Mario Limonciello <mario.limoncie...@amd.com>
Cc: Alex Deucher <alexander.deuc...@amd.com>
Cc: sta...@vger.kernel.org
Reviewed-by: Alex Hung <alex.h...@amd.com>
Acked-by: Alex Hung <alex.h...@amd.com>
Signed-off-by: Aurabindo Pillai <aurabindo.pil...@amd.com>
---
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c 
b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c
index 13a177d34376..45c972f2630d 100644
--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c
+++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_debugfs.c
@@ -3647,12 +3647,16 @@ static int capabilities_show(struct seq_file *m, void 
*unused)
        bool mall_supported = dc->caps.mall_size_total;
        bool subvp_supported = dc->caps.subvp_fw_processing_delay_us;
        unsigned int mall_in_use = false;
-       unsigned int subvp_in_use = dc->cap_funcs.get_subvp_en(dc, 
dc->current_state);
+       unsigned int subvp_in_use = false;
+
        struct hubbub *hubbub = dc->res_pool->hubbub;
 
        if (hubbub->funcs->get_mall_en)
                hubbub->funcs->get_mall_en(hubbub, &mall_in_use);
 
+       if (dc->cap_funcs.get_subvp_en)
+               subvp_in_use = dc->cap_funcs.get_subvp_en(dc, 
dc->current_state);
+
        seq_printf(m, "mall supported: %s, enabled: %s\n",
                           mall_supported ? "yes" : "no", mall_in_use ? "yes" : 
"no");
        seq_printf(m, "sub-viewport supported: %s, enabled: %s\n",
-- 
2.42.0

Reply via email to