Commit 4a5860ea authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'drm-fixes-2026-05-23' of https://gitlab.freedesktop.org/drm/kernel

Pull drm fixes from Dave Airlie:
 "Regular fixes pull, amdgpu/xe being the usual, with bonus msm content
  to bulk things out, otherwise it has the usual scattered changes, with
  amdxdna dropping a badly thought out userspace api.

  gem:
   - clean up LRU locking

  msm:
   - Core:
     - Fixed bindings for SM8650, SM8750 and Eliza
     - Don't use UTS_RELEASE directly
     - Fix typo in clock-names property
   - DPU:
      - Fixed CWB description on Kaanapali
      - Fixed scanline strides for YUV UBWC formats
      - Stopped DSI register dumping to access past the end of region
   - DSI:
      - Fix dumping unaligned regions
   - GPU:
      - Fix GMEM_BASE for a6xx gen3
      - Fix userspace reachable crash on a2xx-a4xx
      - Fix sysprof_active for counter collection with IFPC enabled GPUs
      - Fix shrinker lockdep

  amdgpu:
   - Userq fixes
   - VPE fix
   - SMU 15 fix
   - Misc fixes
   - VCE fixes
   - DC bios parsing fixes
   - DC aux fix
   - Mode1 reset fix
   - RAS fixes

  amdkfd:
   - Misc fixes

  radeon:
   - CS parser fix

  xe:
   - SRIOV related fixes
   - Fix leak and double-free
   - Multi-cast register fixes
   - Multi-queue fix

  i915:
   - Fix joiner color pipeline selection [display]
   - Fix readback for target_rr in Adaptive Sync SDP [dp]
   - Apply Intel DPCD workaround when SDP on prior line used [psr]

  amdxdna:
   - remove mmap and export for ubuf

  bridge:
   - chipone-icn6211: managed bridge cleanup
   - lt66121: acquire reset GPIO
   - megachips: fix clean up on failed IRQ requests

  v3d:
   - fix UAF in error code paths
   - release GEM-object ref on free'd jobs

  virtio:
   - use uninterruptible resv locking in plane updates

  mediatek:
   - fix sparse warnings"

* tag 'drm-fixes-2026-05-23' of https://gitlab.freedesktop.org/drm/kernel: (78 commits)
  drm/xe/oa: Fix exec_queue leak on width check in stream open
  drm/virtio: use uninterruptible resv lock for plane updates
  drm/amdgpu: fix handling in amdgpu_userq_create
  drm/radeon/evergreen_cs: Add missing NULL prefix check in surface check
  drm/amdgpu: userq_va_mapped should remain true once done
  drm/amdgpu: avoid integer overflow in VA range check
  drm/amd/ras: Fix UMC error address allocation leak
  drm/amdgpu: unmap all user mappings of framebuffer and doorbell before mode1 reset
  drm/amd/display: Validate payload length and link_index in dc_process_dmub_aux_transfer_async
  drm/amd/display: Validate GPIO pin LUT table size before iterating
  drm/amd/display: Fix integer overflow in bios_get_image()
  drm/amdkfd: Check bounds for allocate_sdma_queue restore_sdma_id
  drm/amdgpu: use atomic operation to achieve lockless serialization
  drm/amdkfd: Check bounds on allocate_doorbell
  drm/amdgpu/vce3: Fix VCE 3 firmware size and offsets
  drm/amdgpu/vce2: Fix VCE 2 firmware size and offsets
  drm/amdgpu/vce1: Stop using amdgpu_vce_resume
  drm/amdgpu/vce1: Fix VCE 1 firmware size and offsets
  drm/amdgpu/vce1: Don't repeat GTT MGR node allocation
  drm/amdgpu/vce1: Check if VRAM address is lower than GART.
  ...
parents 0e6582a5 84335a99
Loading
Loading
Loading
Loading
+23 −5
Original line number Diff line number Diff line
@@ -219,6 +219,7 @@ allOf:
          - required:
              - "#sound-dai-cells"
      else:
        $ref: /schemas/sound/dai-common.yaml#
        properties:
          aux-bus: false
        required:
@@ -243,7 +244,7 @@ allOf:
        clocks:
          minItems: 5
          maxItems: 5
        clocks-names:
        clock-names:
          minItems: 5
          maxItems: 5

@@ -264,7 +265,7 @@ allOf:
        clocks:
          minItems: 5
          maxItems: 6
        clocks-names:
        clock-names:
          minItems: 5
          maxItems: 6

@@ -277,7 +278,6 @@ allOf:
              - qcom,sc8180x-dp
              - qcom,sdm845-dp
              - qcom,sm8350-dp
              - qcom,sm8650-dp
    then:
      properties:
        reg:
@@ -286,6 +286,24 @@ allOf:
        clocks:
          minItems: 6
          maxItems: 6
        clock-names:
          minItems: 6
          maxItems: 6

  - if:
      properties:
        compatible:
          contains:
            enum:
              - qcom,sm8650-dp
    then:
      properties:
        reg:
          minItems: 5
          maxItems: 9
        clocks:
          minItems: 6
          maxItems: 6
        clocks-names:
          minItems: 6
          maxItems: 6
@@ -306,7 +324,7 @@ allOf:
        clocks:
          minItems: 6
          maxItems: 8
        clocks-names:
        clock-names:
          minItems: 6
          maxItems: 8

@@ -326,7 +344,7 @@ allOf:
        clocks:
          minItems: 5
          maxItems: 6
        clocks-names:
        clock-names:
          minItems: 5
          maxItems: 6

+12 −8
Original line number Diff line number Diff line
@@ -119,7 +119,7 @@ examples:
        mdss_mdp: display-controller@ae01000 {
            compatible = "qcom,eliza-dpu";
            reg = <0x0ae01000 0x93000>,
                  <0x0aeb0000 0x2008>;
                  <0x0aeb0000 0x3000>;
            reg-names = "mdp",
                        "vbif";

@@ -304,7 +304,7 @@ examples:
        mdss_dsi0_phy: phy@ae95000 {
            compatible = "qcom,eliza-dsi-phy-4nm", "qcom,sm8650-dsi-phy-4nm";
            reg = <0x0ae95000 0x200>,
                  <0x0ae95200 0x280>,
                  <0x0ae95200 0x300>,
                  <0x0ae95500 0x400>;
            reg-names = "dsi_phy",
                        "dsi_phy_lane",
@@ -388,7 +388,7 @@ examples:
        mdss_dsi1_phy: phy@ae97000 {
            compatible = "qcom,eliza-dsi-phy-4nm", "qcom,sm8650-dsi-phy-4nm";
            reg = <0x0ae97000 0x200>,
                  <0x0ae97200 0x280>,
                  <0x0ae97200 0x300>,
                  <0x0ae97500 0x400>;
            reg-names = "dsi_phy",
                        "dsi_phy_lane",
@@ -407,11 +407,15 @@ examples:

        displayport-controller@af54000 {
            compatible = "qcom,eliza-dp", "qcom,sm8650-dp";
            reg = <0xaf54000 0x104>,
                  <0xaf54200 0xc0>,
                  <0xaf55000 0x770>,
                  <0xaf56000 0x9c>,
                  <0xaf57000 0x9c>;
            reg = <0x0af54000 0x200>,
                  <0x0af54200 0x200>,
                  <0x0af55000 0xc00>,
                  <0x0af56000 0x400>,
                  <0x0af57000 0x400>,
                  <0x0af58000 0x400>,
                  <0x0af59000 0x400>,
                  <0x0af5a000 0x600>,
                  <0x0af5b000 0x600>;

            interrupts-extended = <&mdss 12>;

+1 −1
Original line number Diff line number Diff line
@@ -70,7 +70,7 @@ examples:
    display-controller@ae01000 {
        compatible = "qcom,sm8650-dpu";
        reg = <0x0ae01000 0x8f000>,
              <0x0aeb0000 0x2008>;
              <0x0aeb0000 0x3000>;
        reg-names = "mdp", "vbif";

        clocks = <&gcc_axi_clk>,
+1 −1
Original line number Diff line number Diff line
@@ -112,7 +112,7 @@ examples:
        display-controller@ae01000 {
            compatible = "qcom,sm8650-dpu";
            reg = <0x0ae01000 0x8f000>,
                  <0x0aeb0000 0x2008>;
                  <0x0aeb0000 0x3000>;
            reg-names = "mdp", "vbif";

            clocks = <&gcc_axi_clk>,
+10 −6
Original line number Diff line number Diff line
@@ -117,7 +117,7 @@ examples:
            display-controller@ae01000 {
                compatible = "qcom,sm8750-dpu";
                reg = <0x0ae01000 0x93000>,
                      <0x0aeb0000 0x2008>;
                      <0x0aeb0000 0x3000>;
                reg-names = "mdp",
                            "vbif";

@@ -389,11 +389,15 @@ examples:

            displayport-controller@af54000 {
                compatible = "qcom,sm8750-dp", "qcom,sm8650-dp";
                reg = <0xaf54000 0x104>,
                      <0xaf54200 0xc0>,
                      <0xaf55000 0x770>,
                      <0xaf56000 0x9c>,
                      <0xaf57000 0x9c>;
                reg = <0x0af54000 0x200>,
                      <0x0af54200 0x200>,
                      <0x0af55000 0xc00>,
                      <0x0af56000 0x400>,
                      <0x0af57000 0x400>,
                      <0x0af58000 0x400>,
                      <0x0af59000 0x400>,
                      <0x0af5a000 0x600>,
                      <0x0af5b000 0x600>;

                interrupts-extended = <&mdss 12>;

Loading