linux/drivers/gpu/drm
Uma Shankar 8b9bc7786a drm/i915/dram: Interpret 0xF populated-channel count as 16
Wa_16030862157:
Interpret 0xF populated-channel count as 16
The register MEM_SS_INFO_GLOBAL [Number of populated channels] field
definition is updated with an encoding for 16 channels.

For 16-channel configuration, program 1111b. A programmed value of 1111b
must be interpreted as 16 channels for memory bandwidth calculations.

The MEM_SS_INFO_GLOBAL populated-channel field is only 4 bits and cannot
encode 16, so on Xe3p the BIOS programs the saturated field value (0xf)
to indicate the fully-populated 16-channel config (4 memory controllers
x 4 channels). Interpret it as 16 and let the bandwidth math handle the
larger channel count.

v2: Limit the WA only till NVL (Suraj)
    Logical separation of WA (Vinod)

WA: 16030862157, 16030875223
Bspec: 69131, 79482

Assisted-by: Claude:claude-opus-4-8
Signed-off-by: Uma Shankar <uma.shankar@intel.com>
Reviewed-by: Suraj Kandpal <suraj.kandpal@intel.com>
Reviewed-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
Link: https://patch.msgid.link/20260715143243.4141208-2-uma.shankar@intel.com
2026-07-21 13:44:39 +05:30
..
adp
amd drm next fixes for 7.2-rc1 2026-06-26 16:41:30 -07:00
arm
armada
aspeed
ast
atmel-hlcdc
bridge workqueue: Changes for v7.2 2026-06-17 11:57:44 +01:00
ci Merge tag 'drm-msm-next-2026-05-30' of https://gitlab.freedesktop.org/drm/msm into drm-next 2026-06-04 06:41:22 +10:00
clients
display drm/dp_tunnel: Add UHBR tunneling support 2026-07-20 15:46:08 +03:00
etnaviv drm-next for 7.2-rc1 2026-06-17 10:21:00 +01:00
exynos
fsl-dcu
gma500 drm-next for 7.2-rc1 2026-06-17 10:21:00 +01:00
gud
hisilicon
hyperv drm-next for 7.2-rc1 2026-06-17 10:21:00 +01:00
i915 drm/i915/dram: Interpret 0xF populated-channel count as 16 2026-07-21 13:44:39 +05:30
imagination
imx drm-next for 7.2-rc1 2026-06-17 10:21:00 +01:00
ingenic
kmb
lima
logicvc
loongson
mcde
mediatek
meson
mgag200
msm drm-next for 7.2-rc1 2026-06-17 10:21:00 +01:00
mxsfb
nouveau drm fixes for 7.2-rc1 2026-06-26 17:03:48 -07:00
nova
omapdrm
panel
panfrost
panthor drm-next for 7.2-rc1 2026-06-17 10:21:00 +01:00
pl111
qxl
radeon drm/radeon: fix r100_copy_blit for large BOs 2026-06-17 18:19:00 -04:00
renesas [GIT PULL for v7.2] media updates 2026-06-18 17:21:54 -07:00
rockchip
scheduler
sitronix
solomon
sprd
sti
stm
sun4i
sysfb drm fixes for 7.2-rc1 2026-06-26 17:03:48 -07:00
tegra soc: drivers for 7.2 2026-06-17 11:21:40 -07:00
tests drm-next for 7.2-rc1 2026-06-17 10:21:00 +01:00
tidss
tilcdc
tiny
ttm
tve200
tyr
udl
v3d drm-next for 7.2-rc1 2026-06-17 10:21:00 +01:00
vboxvideo
vc4 drm-next for 7.2-rc1 2026-06-17 10:21:00 +01:00
verisilicon
vgem
virtio drm-next for 7.2-rc1 2026-06-17 10:21:00 +01:00
vkms
vmwgfx
xe drm/xe/display: Do not allocate into stolen for new framebuffers. 2026-07-14 15:40:26 +02:00
xen
xlnx
drm_atomic_helper.c
drm_atomic_state_helper.c
drm_atomic_uapi.c drm-next for 7.2-rc1 2026-06-17 10:21:00 +01:00
drm_atomic.c drm-next for 7.2-rc1 2026-06-17 10:21:00 +01:00
drm_auth.c
drm_blend.c
drm_bridge_helper.c
drm_bridge.c
drm_buddy.c
drm_cache.c
drm_client_event.c
drm_client_modeset.c
drm_client_sysrq.c
drm_client.c
drm_color_mgmt.c mm.git review status for mm-hotfixes-stable..mm-nonmm-stable 2026-06-21 13:20:19 -07:00
drm_colorop.c drm-next for 7.2-rc1 2026-06-17 10:21:00 +01:00
drm_connector.c drm fixes for 7.2-rc1 2026-06-26 17:03:48 -07:00
drm_crtc_helper_internal.h
drm_crtc_helper.c
drm_crtc_internal.h
drm_crtc.c
drm_damage_helper.c
drm_debugfs_crc.c
drm_debugfs.c
drm_displayid_internal.h drm/displayid: fix Tiled Display Topology ID size 2026-06-15 13:50:42 +03:00
drm_displayid.c
drm_draw_internal.h
drm_draw.c
drm_drv.c
drm_dumb_buffers.c
drm_edid_load.c
drm_edid.c drm/edid: fix OOB read in drm_parse_tiled_block() 2026-06-22 11:13:27 +03:00
drm_eld.c
drm_encoder.c
drm_exec.c
drm_fb_dma_helper.c
drm_fb_helper.c
drm_fbdev_dma.c
drm_fbdev_shmem.c
drm_fbdev_ttm.c
drm_file.c
drm_flip_work.c
drm_format_helper.c
drm_format_internal.h
drm_fourcc.c
drm_framebuffer.c
drm_gem_atomic_helper.c
drm_gem_dma_helper.c
drm_gem_framebuffer_helper.c
drm_gem_shmem_helper.c
drm_gem_ttm_helper.c
drm_gem_vram_helper.c
drm_gem.c drm-next for 7.2-rc1 2026-06-17 10:21:00 +01:00
drm_gpusvm.c
drm_gpuvm.c DRM Rust changes for v7.2-rc1 2026-06-05 09:13:12 +10:00
drm_internal.h
drm_ioc32.c
drm_ioctl.c drm/gem: Try to fix change_handle ioctl, attempt 4 2026-06-06 08:54:55 +10:00
drm_kms_helper_common.c
drm_lease.c
drm_managed.c
drm_mipi_dbi.c
drm_mipi_dsi.c
drm_mm.c
drm_mode_config.c
drm_mode_object.c
drm_modes.c drm/modes: Add DRM_MODE_MATCH_TIMINGS_VRR 2026-06-24 18:54:10 +03:00
drm_modeset_helper.c
drm_modeset_lock.c
drm_of.c
drm_pagemap_util.c
drm_pagemap.c
drm_panel_backlight_quirks.c
drm_panel_orientation_quirks.c
drm_panel.c
drm_panic_qr.rs
drm_panic.c
drm_pci.c
drm_plane_helper.c
drm_plane.c
drm_prime.c
drm_print.c
drm_privacy_screen_x86.c
drm_privacy_screen.c
drm_probe_helper.c
drm_property.c
drm_ras_genl_family.c
drm_ras_nl.c
drm_ras_nl.h
drm_ras.c
drm_rect.c
drm_self_refresh_helper.c
drm_simple_kms_helper.c
drm_suballoc.c
drm_syncobj.c
drm_sysfs.c
drm_trace_points.c
drm_trace.h
drm_vblank_helper.c
drm_vblank_work.c
drm_vblank.c
drm_vma_manager.c
drm_writeback.c
Kconfig
Kconfig.debug
Makefile