diff options
author | Imre Deak <imre.deak@intel.com> | 2023-11-17 18:09:29 +0300 |
---|---|---|
committer | Imre Deak <imre.deak@intel.com> | 2023-11-21 17:32:44 +0300 |
commit | 9069b77545ca5afc222effa994c65a64ac5e6462 (patch) | |
tree | 19baa0019e4930f94e2351b84654a7c4ca27eb81 /drivers/gpu/drm/i915/i915_gpu_error.c | |
parent | e86fb4dcfb3c4e9da8855312ada0f22629423b00 (diff) | |
download | linux-9069b77545ca5afc222effa994c65a64ac5e6462.tar.xz |
drm/i915/dp_mst: Fix PBN / MTP_TU size calculation for UHBR rates
Atm the allocated MST PBN value is calculated from the TU size (number
of allocated MTP slots) as
PBN = TU * pbn_div
pbn_div being the link BW for each MTP slot. For DP 1.4 link rates this
worked, as pbn_div there is guraranteed to be an integer number, however
on UHBR this isn't the case. To get a PBN, TU pair where TU is a
properly rounded-up value covering all the BW corresponding to PBN,
calculate first PBN and from PBN the TU value.
Calculate PBN directly from the effective pixel data rate, instead of
calculating it indirectly from the corresponding TU and pbn_div values
(which are in turn derived from the pixel data rate and BW overhead).
Add a helper function to calculate the effective data rate, also adding
a note that callers of intel_dp_link_required() may also need to check
the effective data rate (vs. the data rate w/o the BW overhead).
While at it add a note to check if WA#14013163432 is applicable.
v2:
- Fix PBN calculation, deriving it from the effective data rate directly
instead of using the indirect TU and pbn_div values for this.
- Add a note about WA#14013163432. (Arun)
v3:
- Fix rounding up quotient while calculating remote_tu. (Ville)
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Reviewed-by: Arun R Murthy <arun.r.murthy@intel.com> (v1)
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20231117150929.1767227-3-imre.deak@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/i915_gpu_error.c')
0 files changed, 0 insertions, 0 deletions