DF-3622 / fix.diff
--- a/sys/dev/drm/amd/amdgpu/ci_dpm.c +++ b/sys/dev/drm/amd/amdgpu/ci_dpm.c @@ -2966,8 +2966,14 @@ static int ci_calculate_mclk_params(stru if (pi->caps_mclk_ss_support) { struct amdgpu_atom_ss ss; u32 freq_nom; u32 tmp; u32 reference_clock = adev->clock.mpll.reference_freq; + if (reference_clock == 0) { + dev_err(adev->dev, "mclk ss with zero mpll reference clock\n"); + return -EINVAL; + } if (mpll_param.qdr == 1) freq_nom = memory_clock * 4 * (1 << mpll_param.post_div); else freq_nom = memory_clock * 2 * (1 << mpll_param.post_div); |