Commit 21f6bcdf authored by Dave Airlie's avatar Dave Airlie
Browse files

Merge tag 'drm-misc-next-2026-02-26' of...

Merge tag 'drm-misc-next-2026-02-26' of https://gitlab.freedesktop.org/drm/misc/kernel

 into drm-next

drm-misc-next for v7.1:

UAPI Changes:

connector:
- Add panel_type property

fourcc:
- Add ARM interleaved 64k modifier

nouveau:
- Query Z-Cull info with DRM_IOCTL_NOUVEAU_GET_ZCULL_INFO

Cross-subsystem Changes:

coreboot:
- Clean up coreboot framebuffer support

dma-buf:
- Provide revoke mechanism for shared buffers
- Rename move_notify callback to invalidate_mappings and update users.
- Always enable move_notify
- Support dma_fence_was_initialized() test
- Protect dma_fence_ops by RCU and improve locking
- Fix sparse warnings

Core Changes:

atomic:
- Allocate drm_private_state via callback and convert drivers

atomic-helper:
- Use system_percpu_wq

buddy:
- Make buddy allocator available to all DRM drivers
- Document flags and structures

colorop:
- Add destroy helper and convert drivers

fbdev-emulation:
- Clean up

gem:
- Fix drm_gem_objects_lookup() error cleanup

Driver Changes:

amdgpu:
- Set panel_type to OELD for eDP

atmel-hlcdc:
- Support sana5d65 LCD controller

bridge:
- anx7625: Support USB-C plus DT bindings
- connector: Fix EDID detection
- dw-hdmi-qp: Support Vendor-Specfic and SDP Infoframes; improve others
- fsl-ldb: Fix visual artifacts plus related DT property 'enable-termination-resistor'
- imx8qxp-pixel-link: Improve bridge reference handling
- lt9611: Support Port-B-only input plus DT bindings
- tda998x: Support DRM_BRIDGE_ATTACH_NO_CONNECTOR; Clean up
- Support TH1520 HDMI plus DT bindings
- Clean up

imagination:
- Clean up

komeda:
- Fix integer overflow in AFBC checks

mcde:
- Improve bridge handling

nouveau:
- Provide Z-cull info to user space
- gsp: Support GA100
- Shutdown on PCI device shutdown
- Clean up

panel:
- panel-jdi-lt070me05000: Use mipi-dsi multi functions
- panel-edp: Support Add AUO B116XAT04.1 (HW: 1A); Support CMN N116BCL-EAK (C2); Support FriendlyELEC plus DT changes
- Fix Kconfig dependencies

panthor:
- Add tracepoints for power and IRQs

rcar-du:
- dsi: fix VCLK calculation

rockchip:
- vop2: Use drm_ logging functions
- Support DisplayPort on RK3576

sysfb:
- corebootdrm: Support system framebuffer on coreboot firmware; detect orientation
- Clean up pixel-format lookup

sun4i:
- Clean up

tilcdc:
- Use DT bindings scheme
- Use managed DRM interfaces
- Support DRM_BRIDGE_ATTACH_NO_CONNECTOR
- Clean up a lot of obsolete code

v3d:
- Clean up

vc4:
- Use system_percpu_wq
- Clean up

verisilicon:
- Support DC8200 plus DT bindings

virtgpu:
- Support PRIME imports with enabled 3D

Signed-off-by: default avatarDave Airlie <airlied@redhat.com>

From: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patch.msgid.link/20260226143615.GA47200@linux.fritz.box
parents 11439c46 2622649a
Loading
Loading
Loading
Loading
+97 −1
Original line number Diff line number Diff line
@@ -85,6 +85,11 @@ properties:
  aux-bus:
    $ref: /schemas/display/dp-aux-bus.yaml#

  connector:
    type: object
    $ref: /schemas/connector/usb-connector.yaml#
    unevaluatedProperties: false

  ports:
    $ref: /schemas/graph.yaml#/properties/ports

@@ -117,7 +122,6 @@ properties:

    required:
      - port@0
      - port@1

required:
  - compatible
@@ -127,6 +131,28 @@ required:
  - vdd33-supply
  - ports

allOf:
  - if:
      required:
        - aux-bus
        - connector
    then:
      false

  - if:
      required:
        - connector
    then:
      properties:
        ports:
          properties:
            port@1: false
    else:
      properties:
        ports:
          required:
            - port@1

additionalProperties: false

examples:
@@ -185,3 +211,73 @@ examples:
            };
        };
    };
  - |
    #include <dt-bindings/gpio/gpio.h>

    i2c {
        #address-cells = <1>;
        #size-cells = <0>;

        encoder@58 {
            compatible = "analogix,anx7625";
            reg = <0x58>;
            enable-gpios = <&pio 45 GPIO_ACTIVE_HIGH>;
            reset-gpios = <&pio 73 GPIO_ACTIVE_HIGH>;
            vdd10-supply = <&pp1000_mipibrdg>;
            vdd18-supply = <&pp1800_mipibrdg>;
            vdd33-supply = <&pp3300_mipibrdg>;
            analogix,audio-enable;
            analogix,lane0-swing = /bits/ 8 <0x14 0x54 0x64 0x74>;
            analogix,lane1-swing = /bits/ 8 <0x14 0x54 0x64 0x74>;

            connector {
                compatible = "usb-c-connector";
                power-role = "dual";
                data-role = "dual";
                vbus-supply = <&vbus_reg>;

                ports {
                    #address-cells = <1>;
                    #size-cells = <0>;

                    port@0 {
                        reg = <0>;

                        endpoint {
                            remote-endpoint = <&usb_hs>;
                        };
                    };

                    port@1 {
                        reg = <1>;

                        endpoint {
                            remote-endpoint = <&usb_ss>;
                        };
                    };

                    port@2 {
                        reg = <2>;

                        endpoint {
                            remote-endpoint = <&usb_sbu>;
                        };
                    };
                };
            };

            ports {
                #address-cells = <1>;
                #size-cells = <0>;

                port@0 {
                    reg = <0>;
                    endpoint {
                        remote-endpoint = <&mipi_dsi>;
                        bus-type = <7>;
                        data-lanes = <0 1 2 3>;
                    };
                };
            };
        };
    };
+18 −0
Original line number Diff line number Diff line
@@ -35,6 +35,15 @@ properties:
      - const: ldb
      - const: lvds

  nxp,enable-termination-resistor:
    type: boolean
    description:
      Indicates that the built-in 100 Ohm termination resistor on the LVDS
      output is enabled. This property is optional and controlled via the
      HS_EN bit in the LVDS_CTRL register. Enabling it can improve signal
      quality and prevent visual artifacts on some boards, but increases
      power consumption.

  ports:
    $ref: /schemas/graph.yaml#/properties/ports

@@ -84,6 +93,15 @@ allOf:
      required:
        - reg-names

  - if:
      properties:
        compatible:
          contains:
            const: fsl,imx6sx-ldb
    then:
      properties:
        nxp,enable-termination-resistor: false

additionalProperties: false

examples:
+11 −4
Original line number Diff line number Diff line
@@ -44,21 +44,28 @@ properties:
      port@0:
        $ref: /schemas/graph.yaml#/properties/port
        description:
          Primary MIPI port-1 for MIPI input
          DSI Port A input. directly drives the display, or works in
          combination with Port B for higher resolution displays.

      port@1:
        $ref: /schemas/graph.yaml#/properties/port
        description:
          Additional MIPI port-2 for MIPI input, used in combination
          with primary MIPI port-1 to drive higher resolution displays
          DSI Port B input. Can be used alone if DSI is physically
          connected to Port B, or in combination with Port A for higher
          resolution displays.

      port@2:
        $ref: /schemas/graph.yaml#/properties/port
        description:
          HDMI port for HDMI output

    required:
    anyOf:
      - required:
          - port@0
      - required:
          - port@1

    required:
      - port@2

required:
+120 −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/bridge/thead,th1520-dw-hdmi.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: T-Head TH1520 DesignWare HDMI TX Encoder

maintainers:
  - Icenowy Zheng <uwu@icenowy.me>

description:
  The HDMI transmitter is a Synopsys DesignWare HDMI TX controller
  paired with a DesignWare HDMI Gen2 TX PHY.

allOf:
  - $ref: /schemas/display/bridge/synopsys,dw-hdmi.yaml#

properties:
  compatible:
    enum:
      - thead,th1520-dw-hdmi

  reg-io-width:
    const: 4

  clocks:
    maxItems: 4

  clock-names:
    items:
      - const: iahb
      - const: isfr
      - const: cec
      - const: pix

  resets:
    items:
      - description: Main reset
      - description: Configuration APB reset

  reset-names:
    items:
      - const: main
      - const: apb

  ports:
    $ref: /schemas/graph.yaml#/properties/ports

    properties:
      port@0:
        $ref: /schemas/graph.yaml#/properties/port
        description: Input port connected to DC8200 DPU "DP" output

      port@1:
        $ref: /schemas/graph.yaml#/properties/port
        description: HDMI output port

    required:
      - port@0
      - port@1

required:
  - compatible
  - reg
  - reg-io-width
  - clocks
  - clock-names
  - resets
  - reset-names
  - interrupts
  - ports

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/irq.h>
    #include <dt-bindings/clock/thead,th1520-clk-ap.h>
    #include <dt-bindings/reset/thead,th1520-reset.h>

    soc {
      #address-cells = <2>;
      #size-cells = <2>;

      hdmi@ffef540000 {
        compatible = "thead,th1520-dw-hdmi";
        reg = <0xff 0xef540000 0x0 0x40000>;
        reg-io-width = <4>;
        interrupts = <111 IRQ_TYPE_LEVEL_HIGH>;
        clocks = <&clk_vo CLK_HDMI_PCLK>,
                 <&clk_vo CLK_HDMI_SFR>,
                 <&clk_vo CLK_HDMI_CEC>,
                 <&clk_vo CLK_HDMI_PIXCLK>;
        clock-names = "iahb", "isfr", "cec", "pix";
        resets = <&rst_vo TH1520_RESET_ID_HDMI>,
                 <&rst_vo TH1520_RESET_ID_HDMI_APB>;
        reset-names = "main", "apb";

        ports {
          #address-cells = <1>;
          #size-cells = <0>;
          port@0 {
            reg = <0>;

            hdmi_in: endpoint {
              remote-endpoint = <&dpu_out_dp1>;
            };
          };

          port@1 {
            reg = <1>;

            hdmi_out_conn: endpoint {
              remote-endpoint = <&hdmi_conn_in>;
            };
          };
        };
      };
    };
+2 −0
Original line number Diff line number Diff line
@@ -44,6 +44,8 @@ properties:
      - boe,nv133fhm-n62
        # BOE NV140FHM-N49 14.0" FHD a-Si FT panel
      - boe,nv140fhmn49
        # FriendlyELEC HD702E 800x1280 LCD panel
      - friendlyarm,hd702e
        # Innolux Corporation 11.6" WXGA (1366x768) TFT LCD panel
      - innolux,n116bca-ea1
        # Innolux Corporation 11.6" WXGA (1366x768) TFT LCD panel
Loading