On Wed, Oct 15, 2025 at 12:15:17AM -0300, Gustavo Sousa wrote:
> Load the DMC firmware for Xe3p_LPD.
>
Reviewed-by: Matt Atwood <[email protected]>
> Signed-off-by: Gustavo Sousa <[email protected]>
> ---
> drivers/gpu/drm/i915/display/intel_dmc.c | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_dmc.c
> b/drivers/gpu/drm/i915/display/intel_dmc.c
> index 517bebb0b4aa..c496e7a5c003 100644
> --- a/drivers/gpu/drm/i915/display/intel_dmc.c
> +++ b/drivers/gpu/drm/i915/display/intel_dmc.c
> @@ -127,6 +127,9 @@ static bool dmc_firmware_param_disabled(struct
> intel_display *display)
> #define DISPLAY_VER13_DMC_MAX_FW_SIZE 0x20000
> #define DISPLAY_VER12_DMC_MAX_FW_SIZE ICL_DMC_MAX_FW_SIZE
>
> +#define XE3P_LPD_DMC_PATH DMC_PATH(xe3p_lpd)
> +MODULE_FIRMWARE(XE3P_LPD_DMC_PATH);
> +
> #define XE3LPD_DMC_PATH DMC_PATH(xe3lpd)
> MODULE_FIRMWARE(XE3LPD_DMC_PATH);
>
> @@ -184,7 +187,10 @@ static const char *dmc_firmware_default(struct
> intel_display *display, u32 *size
> const char *fw_path = NULL;
> u32 max_fw_size = 0;
>
> - if (DISPLAY_VERx100(display) == 3002 ||
> + if (DISPLAY_VERx100(display) == 3500) {
> + fw_path = XE3P_LPD_DMC_PATH;
> + max_fw_size = XE2LPD_DMC_MAX_FW_SIZE;
> + } else if (DISPLAY_VERx100(display) == 3002 ||
> DISPLAY_VERx100(display) == 3000) {
> fw_path = XE3LPD_DMC_PATH;
> max_fw_size = XE2LPD_DMC_MAX_FW_SIZE;
>
> --
> 2.51.0
>