[Intel-gfx] [PATCH] drm/i915/dmc: Do not try loading wrong DMC version
Matt Roper
matthew.d.roper at intel.com
Wed Feb 23 21:15:48 UTC 2022
On Wed, Feb 23, 2022 at 01:09:33PM -0800, Lucas De Marchi wrote:
> Checking by >= DISPLAY_VER(12) made sense when the support for Tiger
> Lake was added. However now it only leads to wrong behavior when adding
> more platforms since it's expected they either don't have DMC to load
> or they have their own blob.
>
> Logs from DG2 loading on a CFL host, without having a DMC firmware
> defined:
>
> <6>[ 0.000000] DMI: Intel Corporation CoffeeLake Client Platform/CoffeeLake S UDIMM RVP, BIOS CNLSFWR1.R00.X220.B00.2103302221 03/30/2021
> ...
> <6>[ 2.706607] pci 0000:03:00.0: [8086:56a0] type 00 class 0x030000
> ...
> <7>[ 6.340397] i915 0000:03:00.0: [drm:intel_dmc_ucode_init [i915]] Loading i915/tgl_dmc_ver2_12.bin
> <7>[ 6.341841] i915 0000:03:00.0: [drm:intel_fbc_init [i915]] Sanitized enable_fbc value: 1
> <3>[ 6.342432] genirq: Flags mismatch irq 0. 00000080 (i915) vs. 00015a00 (timer)
> <6>[ 6.346283] i915 0000:03:00.0: [drm] Finished loading DMC firmware i915/tgl_dmc_ver2_12.bin (v2.12)
> <3>[ 6.385756] i915 0000:03:00.0: Device initialization failed (-16)
> <5>[ 6.385778] i915 0000:03:00.0: Please file a bug on drm/i915; see https://gitlab.freedesktop.org/drm/intel/-/wikis/How-to-file-i915-bugs for details.
> <4>[ 6.385782] i915: probe of 0000:03:00.0 failed with error -16
>
> TGL is the only platform left with DISPLAY_VER() == 12 that is not
> handled already in the if/else ladder, so handle it specifically.
>
> Signed-off-by: Lucas De Marchi <lucas.demarchi at intel.com>
Reviewed-by: Matt Roper <matthew.d.roper at intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_dmc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_dmc.c b/drivers/gpu/drm/i915/display/intel_dmc.c
> index 7616a3906b9e..133476be6d28 100644
> --- a/drivers/gpu/drm/i915/display/intel_dmc.c
> +++ b/drivers/gpu/drm/i915/display/intel_dmc.c
> @@ -697,7 +697,7 @@ void intel_dmc_ucode_init(struct drm_i915_private *dev_priv)
> dmc->fw_path = RKL_DMC_PATH;
> dmc->required_version = RKL_DMC_VERSION_REQUIRED;
> dmc->max_fw_size = DISPLAY_VER12_DMC_MAX_FW_SIZE;
> - } else if (DISPLAY_VER(dev_priv) >= 12) {
> + } else if (IS_TIGERLAKE(dev_priv)) {
> dmc->fw_path = TGL_DMC_PATH;
> dmc->required_version = TGL_DMC_VERSION_REQUIRED;
> dmc->max_fw_size = DISPLAY_VER12_DMC_MAX_FW_SIZE;
> --
> 2.35.1
>
--
Matt Roper
Graphics Software Engineer
VTT-OSGC Platform Enablement
Intel Corporation
(916) 356-2795
More information about the Intel-gfx
mailing list