]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/i915/xe3lpd: Update bandwidth parameters
authorGustavo Sousa <gustavo.sousa@intel.com>
Tue, 11 Mar 2025 17:04:52 +0000 (14:04 -0300)
committerGustavo Sousa <gustavo.sousa@intel.com>
Thu, 13 Mar 2025 14:24:02 +0000 (11:24 -0300)
Bandwidth parameters for Xe3_LPD have been updated with respect to
previous display releases. Encode them into xe3lpd_sa_info and use that
new struct.

Bspec: 68859
Reviewed-by: Matt Roper <matthew.d.roper@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20250311-xe3lpd-bandwidth-update-v5-3-a95a9d90ad71@intel.com
Signed-off-by: Gustavo Sousa <gustavo.sousa@intel.com>
drivers/gpu/drm/i915/display/intel_bw.c

index bda080d9ed4cfd1804fab818ac489dbe0bfaf640..dc7612658a9da9493ad9068f28126c76d187f2ea 100644 (file)
@@ -404,6 +404,13 @@ static const struct intel_sa_info xe2_hpd_sa_info = {
        /* Other values not used by simplified algorithm */
 };
 
+static const struct intel_sa_info xe3lpd_sa_info = {
+       .deburst = 32,
+       .deprogbwlimit = 65, /* GB/s */
+       .displayrtids = 256,
+       .derating = 10,
+};
+
 static int icl_get_bw_info(struct intel_display *display, const struct intel_sa_info *sa)
 {
        struct drm_i915_private *i915 = to_i915(display->drm);
@@ -752,7 +759,9 @@ void intel_bw_init_hw(struct intel_display *display)
        if (!HAS_DISPLAY(display))
                return;
 
-       if (DISPLAY_VERx100(display) >= 1401 && display->platform.dgfx)
+       if (DISPLAY_VER(display) >= 30)
+               tgl_get_bw_info(display, &xe3lpd_sa_info);
+       else if (DISPLAY_VERx100(display) >= 1401 && display->platform.dgfx)
                xe2_hpd_get_bw_info(display, &xe2_hpd_sa_info);
        else if (DISPLAY_VER(display) >= 14)
                tgl_get_bw_info(display, &mtl_sa_info);