Hi Linus,

The weekly drm fixes. This is mostly msm fixes across the functions,
with amdgpu and i915. It also has a core rust fix and changes in
nova-core to take advantage of it, and otherwise just has some minor
driver fixes, and marks loongsoon as orphaned.

Let me know if there are any issues,

Regards,
Dave.

drm-fixes-2026-03-14:
drm-fixes for 7.0-rc4

rust:
- Fix safety issue in dma_read! and dma_write!.

nova-core:
- Fix UB in DmaGspMem pointer accessors.
- Fix stack overflow in GSP memory allocation.

loongsoon:
- mark drm driver as unmaintained

msm:
- Core:
  - Adjusted msm_iommu_pagetable_prealloc_allocate() allocation type
- DPU:
  - Fixed blue screens on Hamoa laptops by reverting the LM reservation
  - Fixed the size of the LM block on several platforms
  - Dropped usage of %pK (again)
  - Fixed smatch warning on SSPP v13+ code
  - Fixed INTF_6 interrupts on Lemans
- DSI:
  - Fixed DSI PHY revision on Kaanapali
  - Fixed pixel clock calculation for the bonded DSI mode panels with
    compression enabled
- DT bindings:
  - Fixed DisplayPort description on Glymur
  - Fixed model name in SM8750 MDSS schema
- GPU:
  - Added MODULE_DEVICE_TABLE to the GPU driver
  - Fix bogus protect error on X2-85
  - Fix dma_free_attrs() buffer size
  - Gen8 UBWC fix for Glymur

i915:
- Avoid hang when configuring VRR [icl]
- Fix sg_table overflow with >4GB folios
- Fix PSR Selective Update handling
- Fix eDP ALPM read-out sequence

amdgpu:
- SMU13 fix
- SMU14 fix
- Fixes for bringup hw testing
- Kerneldoc fix
- GC12 idle power fix for compute workloads
- DCCG fixes

amdkfd:
- Fix missing BO unreserve in an error path

ivpu:
- drop unnecessary bootparams register setting

amdxdna:
- fix runtime/suspend resume deadlock

bridge:
- ti-sn65dsi83: fix DSI rounding and dual LVDS

gud:
- fix NULL crtc dereference on display disable
The following changes since commit 1f318b96cc84d7c2ab792fcc0bfd42a7ca890681:

  Linux 7.0-rc3 (2026-03-08 16:56:54 -0700)

are available in the Git repository at:

  https://gitlab.freedesktop.org/drm/kernel.git tags/drm-fixes-2026-03-14

for you to fetch changes up to b28913e897edfeedc4e33b03b28068b27d002e6c:

  Merge tag 'drm-rust-fixes-2026-03-12' of
https://gitlab.freedesktop.org/drm/rust/kernel into drm-fixes
(2026-03-13 10:40:17 +1000)

----------------------------------------------------------------
drm-fixes for 7.0-rc4

rust:
- Fix safety issue in dma_read! and dma_write!.

nova-core:
- Fix UB in DmaGspMem pointer accessors.
- Fix stack overflow in GSP memory allocation.

loongsoon:
- mark drm driver as unmaintained

msm:
- Core:
  - Adjusted msm_iommu_pagetable_prealloc_allocate() allocation type
- DPU:
  - Fixed blue screens on Hamoa laptops by reverting the LM reservation
  - Fixed the size of the LM block on several platforms
  - Dropped usage of %pK (again)
  - Fixed smatch warning on SSPP v13+ code
  - Fixed INTF_6 interrupts on Lemans
- DSI:
  - Fixed DSI PHY revision on Kaanapali
  - Fixed pixel clock calculation for the bonded DSI mode panels with
    compression enabled
- DT bindings:
  - Fixed DisplayPort description on Glymur
  - Fixed model name in SM8750 MDSS schema
- GPU:
  - Added MODULE_DEVICE_TABLE to the GPU driver
  - Fix bogus protect error on X2-85
  - Fix dma_free_attrs() buffer size
  - Gen8 UBWC fix for Glymur

i915:
- Avoid hang when configuring VRR [icl]
- Fix sg_table overflow with >4GB folios
- Fix PSR Selective Update handling
- Fix eDP ALPM read-out sequence

amdgpu:
- SMU13 fix
- SMU14 fix
- Fixes for bringup hw testing
- Kerneldoc fix
- GC12 idle power fix for compute workloads
- DCCG fixes

amdkfd:
- Fix missing BO unreserve in an error path

ivpu:
- drop unnecessary bootparams register setting

amdxdna:
- fix runtime/suspend resume deadlock

bridge:
- ti-sn65dsi83: fix DSI rounding and dual LVDS

gud:
- fix NULL crtc dereference on display disable

----------------------------------------------------------------
Abel Vesa (1):
      dt-bindings: display: msm: Fix reg ranges and clocks on Glymur

Abhinav Kumar (1):
      drm/msm/dpu: Correct the SA8775P intr_underrun/intr_underrun index

Akhil P Oommen (3):
      drm/msm/adreno: Add GPU to MODULE_DEVICE_TABLE
      drm/msm/a6xx: Fix the bogus protect error on X2-85
      drm/msm/a8xx: Fix ubwc config related to swizzling

Andrzej Kacprowski (1):
      accel/ivpu: Remove boot params address setting via MMIO register

Arun R Murthy (1):
      drm/i915/dp: Read ALPM caps after DPCD init

Cristian Ciocaltea (1):
      drm/amdgpu: Fix kernel-doc comments for some LUT properties

Danilo Krummrich (1):
      gpu: nova-core: gsp: fix UB in DmaGspMem pointer accessors

Dave Airlie (5):
      Merge tag 'drm-msm-fixes-2026-03-06' of
https://gitlab.freedesktop.org/drm/msm into drm-fixes
      Merge tag 'drm-misc-fixes-2026-03-12' of
https://gitlab.freedesktop.org/drm/misc/kernel into drm-fixes
      Merge tag 'drm-intel-fixes-2026-03-12' of
https://gitlab.freedesktop.org/drm/i915/kernel into drm-fixes
      Merge tag 'amd-drm-fixes-7.0-2026-03-12' of
https://gitlab.freedesktop.org/agd5f/linux into drm-fixes
      Merge tag 'drm-rust-fixes-2026-03-12' of
https://gitlab.freedesktop.org/drm/rust/kernel into drm-fixes

David Lechner (1):
      drm/sitronix/st7586: fix bad pixel data due to byte swap

Dmitry Baryshkov (1):
      Revert "drm/msm/dpu: try reserving the DSPP-less LM first"

Gary Guo (3):
      rust: ptr: add `KnownSize` trait to support DST size info extraction
      rust: ptr: add projection infrastructure
      rust: dma: use pointer projection infra for `dma_{read,write}` macro

Ivan Lipski (2):
      drm/amd/display: Add missing DCCG register entries for DCN20-DCN316
      drm/amd/display: Check for S0i3 to be done before DCCG init on DCN21

Janusz Krzysztofik (1):
      drm/i915: Fix potential overflow of shmem scatterlist length

Jouni Högander (4):
      drm/i915/psr: Repeat Selective Update area alignment
      drm/i915/dsc: Add Selective Update register definitions
      drm/i915/dsc: Add helper for writing DSC Selective Update ET parameters
      drm/i915/psr: Write DSC parameters on Selective Update in ET mode

Kees Cook (1):
      drm/msm: Adjust msm_iommu_pagetable_prealloc_allocate() allocation type

Konrad Dybcio (1):
      drm/msm/dpu: Fix LM size on a number of platforms

Krzysztof Kozlowski (1):
      dt-bindings: display/msm: qcom,sm8750-mdss: Fix model typo

Lizhi Hou (1):
      accel/amdxdna: Fix runtime suspend deadlock when there is pending job

Luca Ceresoli (2):
      drm/bridge: ti-sn65dsi83: fix CHA_DSI_CLK_RANGE rounding
      drm/bridge: ti-sn65dsi83: halve horizontal syncs for dual LVDS output

Mario Limonciello (3):
      drm/amd: Fix NULL pointer dereference in device cleanup
      drm/amd: Fix a few more NULL pointer dereference in device cleanup
      drm/amd: Set num IP blocks to 0 if discovery fails

Pengyu Luo (3):
      drm/msm/dsi: fix hdisplay calculation when programming dsi registers
      drm/msm/dsi/phy: fix hardware revision
      drm/msm/dsi: fix pclk rate calculation for bonded dsi

Philip Yang (1):
      drm/amdkfd: Unreserve bo if queue update failed

Shenghao Yang (1):
      drm/gud: fix NULL crtc dereference on display disable

Thomas Fourier (1):
      drm/msm: Fix dma_free_attrs() buffer size

Thomas Weißschuh (1):
      drm/msm/dpu: Don't use %pK through printk (again)

Thomas Zimmermann (1):
      drm/loongson: Mark driver as orphaned

Tim Kovalenko (1):
      gpu: nova-core: fix stack overflow in GSP memory allocation

Ville Syrjälä (1):
      drm/i915/vrr: Configure VRR timings after enabling TRANS_DDI_FUNC_CTL

Yang Wang (3):
      drm/amd/pm: add missing od setting PP_OD_FEATURE_ZERO_FAN_BIT for smu v13
      drm/amd/pm: add missing od setting PP_OD_FEATURE_ZERO_FAN_BIT for smu v14
      drm/amdgpu: fix gpu idle power consumption issue for gfx v12

sunliming (1):
      drm/msm/dpu: Fix smatch warnings about variable dereferenced before check

 .../bindings/display/msm/dp-controller.yaml        |  21 +-
 .../bindings/display/msm/qcom,glymur-mdss.yaml     |  16 +-
 .../bindings/display/msm/qcom,sm8750-mdss.yaml     |   2 +-
 MAINTAINERS                                        |   3 +-
 drivers/accel/amdxdna/aie2_ctx.c                   |  14 +-
 drivers/accel/amdxdna/amdxdna_ctx.c                |  10 +
 drivers/accel/ivpu/ivpu_hw_40xx_reg.h              |   6 -
 drivers/accel/ivpu/ivpu_hw_ip.c                    |   1 -
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c         |  14 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c            |   2 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_mode.h           |  16 +-
 drivers/gpu/drm/amd/amdgpu/mes_v12_0.c             |   5 +-
 .../gpu/drm/amd/amdkfd/kfd_process_queue_manager.c |   1 +
 .../gpu/drm/amd/display/dc/dccg/dcn20/dcn20_dccg.h |   6 +-
 .../gpu/drm/amd/display/dc/dccg/dcn21/dcn21_dccg.c |  21 +-
 .../drm/amd/display/dc/dccg/dcn301/dcn301_dccg.h   |   8 +-
 .../gpu/drm/amd/display/dc/dccg/dcn31/dcn31_dccg.h |   5 +-
 .../drm/amd/display/dc/dccg/dcn314/dcn314_dccg.h   |   5 +-
 .../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_0_ppt.c   |   3 +-
 .../gpu/drm/amd/pm/swsmu/smu13/smu_v13_0_7_ppt.c   |   3 +-
 .../gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_2_ppt.c   |   3 +-
 drivers/gpu/drm/bridge/ti-sn65dsi83.c              |  13 +-
 drivers/gpu/drm/gud/gud_drv.c                      |   9 +-
 drivers/gpu/drm/gud/gud_internal.h                 |   4 +
 drivers/gpu/drm/gud/gud_pipe.c                     |  54 ++--
 drivers/gpu/drm/i915/display/intel_alpm.c          |   6 -
 drivers/gpu/drm/i915/display/intel_display.c       |   1 -
 drivers/gpu/drm/i915/display/intel_dp.c            |   7 +
 drivers/gpu/drm/i915/display/intel_psr.c           |  60 +++-
 drivers/gpu/drm/i915/display/intel_vdsc.c          |  23 ++
 drivers/gpu/drm/i915/display/intel_vdsc.h          |   3 +
 drivers/gpu/drm/i915/display/intel_vdsc_regs.h     |  12 +
 drivers/gpu/drm/i915/display/intel_vrr.c           |  14 +
 drivers/gpu/drm/i915/gem/i915_gem_shmem.c          |  12 +-
 drivers/gpu/drm/msm/adreno/a2xx_gpummu.c           |   2 +-
 drivers/gpu/drm/msm/adreno/a6xx_catalog.c          |   3 +-
 drivers/gpu/drm/msm/adreno/a8xx_gpu.c              |  14 +-
 drivers/gpu/drm/msm/adreno/adreno_device.c         |   1 +
 .../drm/msm/disp/dpu1/catalog/dpu_8_0_sc8280xp.h   |  12 +-
 .../gpu/drm/msm/disp/dpu1/catalog/dpu_8_1_sm8450.h |  12 +-
 .../drm/msm/disp/dpu1/catalog/dpu_8_4_sa8775p.h    |   4 +-
 .../gpu/drm/msm/disp/dpu1/catalog/dpu_9_0_sm8550.h |  12 +-
 .../drm/msm/disp/dpu1/catalog/dpu_9_1_sar2130p.h   |  12 +-
 .../drm/msm/disp/dpu1/catalog/dpu_9_2_x1e80100.h   |  12 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dspp.c        |   2 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp_v13.c    |   4 +-
 drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c             |  52 +---
 drivers/gpu/drm/msm/dsi/dsi_host.c                 |  43 ++-
 drivers/gpu/drm/msm/dsi/phy/dsi_phy_7nm.c          |  22 +-
 drivers/gpu/drm/sitronix/st7586.c                  |  15 +-
 drivers/gpu/nova-core/gsp.rs                       |  46 ++--
 drivers/gpu/nova-core/gsp/boot.rs                  |   2 +-
 drivers/gpu/nova-core/gsp/cmdq.rs                  |  93 +++----
 drivers/gpu/nova-core/gsp/fw.rs                    | 101 ++++---
 rust/kernel/dma.rs                                 | 114 ++++----
 rust/kernel/lib.rs                                 |   4 +
 rust/kernel/ptr.rs                                 |  30 +-
 rust/kernel/ptr/projection.rs                      | 305 +++++++++++++++++++++
 samples/rust/rust_dma.rs                           |  30 +-
 scripts/Makefile.build                             |   4 +-
 60 files changed, 935 insertions(+), 399 deletions(-)
 create mode 100644 rust/kernel/ptr/projection.rs

Reply via email to