mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-02-04 23:35:27 +07:00
drm/i915/icl: use ranges for voltage level lookup
Spec shows voltage level 0 as 307.2, 312, or lower and suggests to use range checks. Prepare for having other frequencies in these ranges by not comparing the exact frequency. v2: invert checks by comparing biggest cdclk first (suggested by Ville) Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20190610214819.9703-1-lucas.demarchi@intel.com
This commit is contained in:
parent
09a32cb7b4
commit
4f338ac0b2
@ -1865,21 +1865,12 @@ static void icl_set_cdclk(struct drm_i915_private *dev_priv,
|
||||
|
||||
static u8 icl_calc_voltage_level(int cdclk)
|
||||
{
|
||||
switch (cdclk) {
|
||||
case 50000:
|
||||
case 307200:
|
||||
case 312000:
|
||||
return 0;
|
||||
case 556800:
|
||||
case 552000:
|
||||
return 1;
|
||||
default:
|
||||
MISSING_CASE(cdclk);
|
||||
/* fall through */
|
||||
case 652800:
|
||||
case 648000:
|
||||
if (cdclk > 556800)
|
||||
return 2;
|
||||
}
|
||||
else if (cdclk > 312000)
|
||||
return 1;
|
||||
else
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void icl_get_cdclk(struct drm_i915_private *dev_priv,
|
||||
|
Loading…
Reference in New Issue
Block a user