[PATCH] drm/i915/cdclk: Check cdclk value before division
Ville Syrjälä
ville.syrjala at linux.intel.com
Wed Oct 9 09:01:50 UTC 2024
On Wed, Oct 09, 2024 at 02:16:34PM +0530, Suraj Kandpal wrote:
> Check cdclk value to avoid a divide by zero error. Since
> bxt_cdclk_init_hw has cdclk can end up being 0 and then
> we have a call to bxt_set_cdclk where we may end up dividing
> this value by 0.
Not possible unless someone completely screwed the
cdclk tables and/or refclk readout, in which case
oops seems like a perfectly reasonable outcome to me.
>
> Signed-off-by: Suraj Kandpal <suraj.kandpal at intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_cdclk.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/display/intel_cdclk.c
> index fa1c2012b10c..a5acc70fb87c 100644
> --- a/drivers/gpu/drm/i915/display/intel_cdclk.c
> +++ b/drivers/gpu/drm/i915/display/intel_cdclk.c
> @@ -1921,7 +1921,7 @@ static u32 xe2lpd_mdclk_source_sel(struct intel_display *display)
> int intel_mdclk_cdclk_ratio(struct intel_display *display,
> const struct intel_cdclk_config *cdclk_config)
> {
> - if (mdclk_source_is_cdclk_pll(display))
> + if (mdclk_source_is_cdclk_pll(display) && cdclk_config->cdclk)
> return DIV_ROUND_UP(cdclk_config->vco, cdclk_config->cdclk);
>
> /* Otherwise, source for MDCLK is CD2XCLK. */
> --
> 2.43.2
--
Ville Syrjälä
Intel
More information about the Intel-gfx
mailing list