On Tue, 16 Jun 2026, Vinod Govindapillai <[email protected]> wrote:
> Bspec has been updated for xe2_lpd+ platforms on how to handle
> the bw buddy prgramming in case no matching memory configuration
> is found w.r.t the current page mask table. The recommendation
> is to keep the default settings for the related registers as it
> is without explicitly disabling the bw buddy.
>
> v2: removed extra explanation
>
> Bspec: 68871
> Suggested-by: Ville Syrjala <[email protected]>
> Signed-off-by: Vinod Govindapillai <[email protected]>
> ---
> drivers/gpu/drm/i915/display/intel_display_power.c | 9 ++++++---
> 1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display_power.c
> b/drivers/gpu/drm/i915/display/intel_display_power.c
> index 2e51dfcd5dce..3d348c5decee 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_power.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_power.c
> @@ -1634,9 +1634,12 @@ static void tgl_bw_buddy_init(struct intel_display
> *display)
> if (table[config].page_mask == 0) {
> drm_dbg_kms(display->drm,
> "Unknown memory configuration; disabling address
> buddy logic.\n");
The debug logging becomes misleading for display >= 20.
BR,
Jani.
> - for_each_set_bit(i, &abox_mask, BITS_PER_TYPE(abox_mask))
> - intel_de_write(display, BW_BUDDY_CTL(i),
> - BW_BUDDY_DISABLE);
> +
> + if (DISPLAY_VER(display) < 20) {
> + for_each_set_bit(i, &abox_mask,
> BITS_PER_TYPE(abox_mask))
> + intel_de_write(display, BW_BUDDY_CTL(i),
> + BW_BUDDY_DISABLE);
> + }
> } else {
> for_each_set_bit(i, &abox_mask, BITS_PER_TYPE(abox_mask)) {
> intel_de_write(display, BW_BUDDY_PAGE_MASK(i),
--
Jani Nikula, Intel