Commit 260f6f4f authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'drm-next-2025-07-30' of https://gitlab.freedesktop.org/drm/kernel

Pull drm updates from Dave Airlie:
 "Highlights:

   - Intel xe enable Panthor Lake, started adding WildCat Lake

   - amdgpu has a bunch of reset improvments along with the usual IP
     updates

   - msm got VM_BIND support which is important for vulkan sparse memory

   - more drm_panic users

   - gpusvm common code to handle a bunch of core SVM work outside
     drivers.

  Detail summary:

  Changes outside drm subdirectory:
   - 'shrink_shmem_memory()' for better shmem/hibernate interaction
   - Rust support infrastructure:
      - make ETIMEDOUT available
      - add size constants up to SZ_2G
      - add DMA coherent allocation bindings
   - mtd driver for Intel GPU non-volatile storage
   - i2c designware quirk for Intel xe

  core:
   - atomic helpers: tune enable/disable sequences
   - add task info to wedge API
   - refactor EDID quirks
   - connector: move HDR sink to drm_display_info
   - fourcc: half-float and 32-bit float formats
   - mode_config: pass format info to simplify

  dma-buf:
   - heaps: Give CMA heap a stable name

  ci:
   - add device tree validation and kunit

  displayport:
   - change AUX DPCD access probe address
   - add quirk for DPCD probe
   - add panel replay definitions
   - backlight control helpers

  fbdev:
   - make CONFIG_FIRMWARE_EDID available on all arches

  fence:
   - fix UAF issues

  format-helper:
   - improve tests

  gpusvm:
   - introduce devmem only flag for allocation
   - add timeslicing support to GPU SVM

  ttm:
   - improve eviction

  sched:
   - tracing improvements
   - kunit improvements
   - memory leak fixes
   - reset handling improvements

  color mgmt:
   - add hardware gamma LUT handling helpers

  bridge:
   - add destroy hook
   - switch to reference counted drm_bridge allocations
   - tc358767: convert to devm_drm_bridge_alloc
   - improve CEC handling

  panel:
   - switch to reference counter drm_panel allocations
   - fwnode panel lookup
   - Huiling hl055fhv028c support
   - Raspberry Pi 7" 720x1280 support
   - edp: KDC KD116N3730A05, N160JCE-ELL CMN, N116BCJ-EAK
   - simple: AUO P238HAN01
   - st7701: Winstar wf40eswaa6mnn0
   - visionox: rm69299-shift
   - Renesas R61307, Renesas R69328 support
   - DJN HX83112B

  hdmi:
   - add CEC handling
   - YUV420 output support

  xe:
   - WildCat Lake support
   - Enable PanthorLake by default
   - mark BMG as SRIOV capable
   - update firmware recommendations
   - Expose media OA units
   - aux-bux support for non-volatile memory
   - MTD intel-dg driver for non-volatile memory
   - Expose fan control and voltage regulator in sysfs
   - restructure migration for multi-device
   - Restore GuC submit UAF fix
   - make GEM shrinker drm managed
   - SRIOV VF Post-migration recovery of GGTT nodes
   - W/A additions/reworks
   - Prefetch support for svm ranges
   - Don't allocate managed BO for each policy change
   - HWMON fixes for BMG
   - Create LRC BO without VM
   - PCI ID updates
   - make SLPC debugfs files optional
   - rework eviction rejection of bound external BOs
   - consolidate PAT programming logic for pre/post Xe2
   - init changes for flicker-free boot
   - Enable GuC Dynamic Inhibit Context switch

  i915:
   - drm_panic support for i915/xe
   - initial flip queue off by default for LNL/PNL
   - Wildcat Lake Display support
   - Support for DSC fractional link bpp
   - Support for simultaneous Panel Replay and Adaptive sync
   - Support for PTL+ double buffer LUT
   - initial PIPEDMC event handling
   - drm_panel_follower support
   - DPLL interface renames
   - allocate struct intel_display dynamically
   - flip queue preperation
   - abstract DRAM detection better
   - avoid GuC scheduling stalls
   - remove DG1 force probe requirement
   - fix MEI interrupt handler on RT kernels
   - use backlight control helpers for eDP
   - more shared display code refactoring

  amdgpu:
   - add userq slot to INFO ioctl
   - SR-IOV hibernation support
   - Suspend improvements
   - Backlight improvements
   - Use scaling for non-native eDP modes
   - cleaner shader updates for GC 9.x
   - Remove fence slab
   - SDMA fw checks for userq support
   - RAS updates
   - DMCUB updates
   - DP tunneling fixes
   - Display idle D3 support
   - Per queue reset improvements
   - initial smartmux support

  amdkfd:
   - enable KFD on loongarch
   - mtype fix for ext coherent system memory

  radeon:
   - CS validation additional GL extensions
   - drop console lock during suspend/resume
   - bump driver version

  msm:
   - VM BIND support
   - CI: infrastructure updates
   - UBWC single source of truth
   - decouple GPU and KMS support
   - DP: rework I/O accessors
   - DPU: SM8750 support
   - DSI: SM8750 support
   - GPU: X1-45 support and speedbin support for X1-85
   - MDSS: SM8750 support

  nova:
   - register! macro improvements
   - DMA object abstraction
   - VBIOS parser + fwsec lookup
   - sysmem flush page support
   - falcon: generic falcon boot code and HAL
   - FWSEC-FRTS: fb setup and load/execute

  ivpu:
   - Add Wildcat Lake support
   - Add turbo flag

  ast:
   - improve hardware generations implementation

  imx:
   - IMX8qxq Display Controller support

  lima:
   - Rockchip RK3528 GPU support

  nouveau:
   - fence handling cleanup

  panfrost:
   - MT8370 support
   - bo labeling
   - 64-bit register access

  qaic:
   - add RAS support

  rockchip:
   - convert inno_hdmi to a bridge

  rz-du:
   - add RZ/V2H(P) support
   - MIPI-DSI DCS support

  sitronix:
   - ST7567 support

  sun4i:
   - add H616 support

  tidss:
   - add TI AM62L support
   - AM65x OLDI bridge support

  bochs:
   - drm panic support

  vkms:
   - YUV and R* format support
   - use faux device

  vmwgfx:
   - fence improvements

  hyperv:
   - move out of simple
   - add drm_panic support"

* tag 'drm-next-2025-07-30' of https://gitlab.freedesktop.org/drm/kernel: (1479 commits)
  drm/tidss: oldi: convert to devm_drm_bridge_alloc() API
  drm/tidss: encoder: convert to devm_drm_bridge_alloc()
  drm/amdgpu: move reset support type checks into the caller
  drm/amdgpu/sdma7: re-emit unprocessed state on ring reset
  drm/amdgpu/sdma6: re-emit unprocessed state on ring reset
  drm/amdgpu/sdma5.2: re-emit unprocessed state on ring reset
  drm/amdgpu/sdma5: re-emit unprocessed state on ring reset
  drm/amdgpu/gfx12: re-emit unprocessed state on ring reset
  drm/amdgpu/gfx11: re-emit unprocessed state on ring reset
  drm/amdgpu/gfx10: re-emit unprocessed state on ring reset
  drm/amdgpu/gfx9.4.3: re-emit unprocessed state on kcq reset
  drm/amdgpu/gfx9: re-emit unprocessed state on kcq reset
  drm/amdgpu: Add WARN_ON to the resource clear function
  drm/amd/pm: Use cached metrics data on SMUv13.0.6
  drm/amd/pm: Use cached data for min/max clocks
  gpu: nova-core: fix bounds check in PmuLookupTableEntry::new
  drm/amdgpu: Replace HQD terminology with slots naming
  drm/amdgpu: Add user queue instance count in HW IP info
  drm/amd/amdgpu: Add helper functions for isp buffers
  drm/amd/amdgpu: Initialize swnode for ISP MFD device
  ...
parents 63eb28bb 711fa266
Loading
Loading
Loading
Loading
+48 −0
Original line number Diff line number Diff line
@@ -148,3 +148,51 @@ Contact: intel-xe@lists.freedesktop.org
Description:	RO. Fan 3 speed in RPM.

		Only supported for particular Intel Xe graphics platforms.

What:		/sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power1_cap
Date:		May 2025
KernelVersion:	6.15
Contact:	intel-xe@lists.freedesktop.org
Description:	RW. Card burst (PL2) power limit in microwatts.

		The power controller will throttle the operating frequency
		if the power averaged over a window (typically milli seconds)
		exceeds this limit. A read value of 0 means that the PL2
		power limit is disabled, writing 0 disables the	limit.
		PL2 is greater than PL1 and its time window is lesser
		compared to PL1.

		Only supported for particular Intel Xe graphics platforms.

What:		/sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power2_cap
Date:		May 2025
KernelVersion:	6.15
Contact:	intel-xe@lists.freedesktop.org
Description:	RW. Package burst (PL2) power limit in microwatts.

		The power controller will throttle the operating frequency
		if the power averaged over a window (typically milli seconds)
		exceeds this limit. A read value of 0 means that the PL2
		power limit is disabled, writing 0 disables the	limit.
		PL2 is greater than PL1 and its time window is lesser
		compared to PL1.

		Only supported for particular Intel Xe graphics platforms.

What:		/sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power1_cap_interval
Date:		May 2025
KernelVersion:	6.15
Contact:	intel-xe@lists.freedesktop.org
Description:	RW. Card burst power limit interval (Tau in PL2/Tau) in
		milliseconds over which sustained power is averaged.

		Only supported for particular Intel Xe graphics platforms.

What:		/sys/bus/pci/drivers/xe/.../hwmon/hwmon<i>/power2_cap_interval
Date:		May 2025
KernelVersion:	6.15
Contact:	intel-xe@lists.freedesktop.org
Description:	RW. Package burst power limit interval (Tau in PL2/Tau) in
		milliseconds over which sustained power is averaged.

		Only supported for particular Intel Xe graphics platforms.
+18 −0
Original line number Diff line number Diff line
What:		/sys/bus/pci/drivers/qaic/XXXX:XX:XX.X/ce_count
Date:		May 2025
KernelVersion:	6.17
Contact:	dri-devel@lists.freedesktop.org
Description:	Number of correctable errors received from device since driver is loaded.

What:		/sys/bus/pci/drivers/qaic/XXXX:XX:XX.X/ue_count
Date:		May 2025
KernelVersion:	6.17
Contact:	dri-devel@lists.freedesktop.org
Description:	Number of uncorrectable errors received from device since driver is loaded.

What:		/sys/bus/pci/drivers/qaic/XXXX:XX:XX.X/ue_nonfatal_count
Date:		May 2025
KernelVersion:	6.17
Contact:	dri-devel@lists.freedesktop.org
Description:	Number of uncorrectable non-fatal errors received from device since driver
		is loaded.
+32 −2
Original line number Diff line number Diff line
@@ -24,9 +24,11 @@ properties:
      - allwinner,sun50i-a64-de2-mixer-0
      - allwinner,sun50i-a64-de2-mixer-1
      - allwinner,sun50i-h6-de3-mixer-0
      - allwinner,sun50i-h616-de33-mixer-0

  reg:
    maxItems: 1
  reg: true

  reg-names: true

  clocks:
    items:
@@ -61,6 +63,34 @@ properties:
    required:
      - port@1

allOf:
  - if:
      properties:
        compatible:
          contains:
            enum:
              - allwinner,sun50i-h616-de33-mixer-0
    then:
      properties:
        reg:
          description: |
            Registers for controlling individual layers of the display
            engine (layers), global control (top), and display blending
            control (display). Names are from Allwinner BSP kernel.
          maxItems: 3
        reg-names:
          items:
            - const: layers
            - const: top
            - const: display
      required:
        - reg-names

    else:
      properties:
        reg:
          maxItems: 1

required:
  - compatible
  - reg
+57 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/imx/fsl,imx8qxp-dc-axi-performance-counter.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Freescale i.MX8qxp Display Controller AXI Performance Counter

description: |
  Performance counters are provided to allow measurement of average bandwidth
  and latency during operation. The following features are supported:

  * Manual and timer controlled measurement mode.

  * Measurement counters:
    - GLOBAL_COUNTER for overall measurement time
    - BUSY_COUNTER for number of data bus busy cycles
    - DATA_COUNTER for number of data transfer cycles
    - TRANSFER_COUNTER for number of transfers
    - ADDRBUSY_COUNTER for number of address bus busy cycles
    - LATENCY_COUNTER for average latency

  * Counter overflow detection.

  * Outstanding Transfer Counters (OTC) which are used for latency measurement
    have to run immediately after reset, but can be disabled by software when
    there is no need for latency measurement.

maintainers:
  - Liu Ying <victor.liu@nxp.com>

properties:
  compatible:
    const: fsl,imx8qxp-dc-axi-performance-counter

  reg:
    maxItems: 1

  clocks:
    maxItems: 1

required:
  - compatible
  - reg
  - clocks

additionalProperties: false

examples:
  - |
    #include <dt-bindings/clock/imx8-lpcg.h>

    pmu@5618f000 {
        compatible = "fsl,imx8qxp-dc-axi-performance-counter";
        reg = <0x5618f000 0x90>;
        clocks = <&dc0_lpcg IMX_LPCG_CLK_5>;
    };
+204 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/imx/fsl,imx8qxp-dc-blit-engine.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Freescale i.MX8qxp Display Controller Blit Engine

description: |
  A blit operation (block based image transfer) reads up to 3 source images
  from memory and computes one destination image from it, which is written
  back to memory. The following basic operations are supported:

  * Buffer Fill
    Fills a buffer with constant color

  * Buffer Copy
    Copies one source to a destination buffer.

  * Image Blend
    Combines two source images by a blending equation and writes result to
    destination (which can be one of the sources).

  * Image Rop2/3
    Combines up to three source images by a logical equation (raster operation)
    and writes result to destination (which can be one of the sources).

  * Image Flip
    Mirrors the source image in horizontal and/or vertical direction.

  * Format Convert
    Convert between the supported color and buffer formats.

  * Color Transform
    Modify colors by linear or non-linear transformations.

  * Image Scale
    Changes size of the source image.

  * Image Rotate
    Rotates the source image by any angle.

  * Image Filter
    Performs an FIR filter operation on the source image.

  * Image Warp
    Performs a re-sampling of the source image with any pattern. The sample
    point positions are read from a compressed coordinate buffer.

  * Buffer Pack
    Writes an image with color components stored in up to three different
    buffers (planar formats) into a single buffer (packed format).

  * Chroma Resample
    Converts between different YUV formats that differ in chroma sampling rate
    (4:4:4, 4:2:2, 4:2:0).

maintainers:
  - Liu Ying <victor.liu@nxp.com>

properties:
  compatible:
    const: fsl,imx8qxp-dc-blit-engine

  reg:
    maxItems: 2

  reg-names:
    items:
      - const: pec
      - const: cfg

  "#address-cells":
    const: 1

  "#size-cells":
    const: 1

  ranges: true

patternProperties:
  "^blitblend@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-blitblend

  "^clut@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-clut

  "^fetchdecode@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-fetchdecode

  "^fetcheco@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-fetcheco

  "^fetchwarp@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-fetchwarp

  "^filter@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-filter

  "^hscaler@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-hscaler

  "^matrix@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-matrix

  "^rop@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-rop

  "^store@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-store

  "^vscaler@[0-9a-f]+$":
    type: object
    additionalProperties: true

    properties:
      compatible:
        const: fsl,imx8qxp-dc-vscaler

required:
  - compatible
  - reg
  - reg-names
  - "#address-cells"
  - "#size-cells"
  - ranges

additionalProperties: false

examples:
  - |
    blit-engine@56180820 {
        compatible = "fsl,imx8qxp-dc-blit-engine";
        reg = <0x56180820 0x13c>, <0x56181000 0x3400>;
        reg-names = "pec", "cfg";
        #address-cells = <1>;
        #size-cells = <1>;
        ranges;

        fetchdecode@56180820 {
            compatible = "fsl,imx8qxp-dc-fetchdecode";
            reg = <0x56180820 0x10>, <0x56181000 0x404>;
            reg-names = "pec", "cfg";
        };

        store@56180940 {
            compatible = "fsl,imx8qxp-dc-store";
            reg = <0x56180940 0x1c>, <0x56184000 0x5c>;
            reg-names = "pec", "cfg";
            interrupt-parent = <&dc0_intc>;
            interrupts = <0>, <1>, <2>;
            interrupt-names = "shdload", "framecomplete", "seqcomplete";
        };
    };
Loading