Commit 54f43c17 authored by Dave Airlie's avatar Dave Airlie
Browse files

Merge tag 'drm-misc-next-2022-02-23' of git://anongit.freedesktop.org/drm/drm-misc into drm-next



drm-misc-next for v5.18:

UAPI Changes:

Cross-subsystem Changes:
- Split out panel-lvds and lvds dt bindings .
- Put yes/no on/off disabled/enabled strings in linux/string_helpers.h
  and use it in drivers and tomoyo.
- Clarify dma_fence_chain and dma_fence_array should never include eachother.
- Flatten chains in syncobj's.
- Don't double add in fbdev/defio when page is already enlisted.
- Don't sort deferred-I/O pages by default in fbdev.

Core Changes:
- Fix missing pm_runtime_put_sync in bridge.
- Set modifier support to only linear fb modifier if drivers don't
  advertise support.
- As a result, we remove allow_fb_modifiers.
- Add missing clear for EDID Deep Color Modes in drm_reset_display_info.
- Assorted documentation updates.
- Warn once in drm_clflush if there is no arch support.
- Add missing select for dp helper in drm_panel_edp.
- Assorted small fixes.
- Improve fb-helper's clipping handling.
- Don't dump shmem mmaps in a core dump.
- Add accounting to ttm resource manager, and use it in amdgpu.
- Allow querying the detected eDP panel through debugfs.
- Add helpers for xrgb8888 to 8 and 1 bits gray.
- Improve drm's buddy allocator.
- Add selftests for the buddy allocator.

Driver Changes:
- Add support for nomodeset to a lot of drm drivers.
- Use drm_module_*_driver in a lot of drm drivers.
- Assorted small fixes to bridge/lt9611, v3d, vc4, vmwgfx, mxsfb, nouveau,
  bridge/dw-hdmi, panfrost, lima, ingenic, sprd, bridge/anx7625, ti-sn65dsi86.
- Add bridge/it6505.
- Create DP and DVI-I connectors in ast.
- Assorted nouveau backlight fixes.
- Rework amdgpu reset handling.
- Add dt bindings for ingenic,jz4780-dw-hdmi.
- Support reading edid through aux channel in ingenic.
- Add a drm driver for Solomon SSD130x OLED displays.
- Add simple support for sharp LQ140M1JW46.
- Add more panels to nt35560.

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

From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/686ec871-e77f-c230-22e5-9e3bb80f064a@linux.intel.com
parents 7f44571b f915686b
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -83,6 +83,9 @@ properties:
    type: boolean
    description: let the driver enable audio HDMI codec function or not.

  aux-bus:
    $ref: /schemas/display/dp-aux-bus.yaml#

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

@@ -167,5 +170,19 @@ examples:
                    };
                };
            };

            aux-bus {
                panel {
                    compatible = "innolux,n125hce-gn1";
                    power-supply = <&pp3300_disp_x>;
                    backlight = <&backlight_lcd0>;

                    port {
                        panel_in: endpoint {
                            remote-endpoint = <&anx7625_out>;
                        };
                    };
                };
            };
        };
    };
+82 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/bridge/ingenic,jz4780-hdmi.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Bindings for Ingenic JZ4780 HDMI Transmitter

maintainers:
  - H. Nikolaus Schaller <hns@goldelico.com>

description: |
  The HDMI Transmitter in the Ingenic JZ4780 is a Synopsys DesignWare HDMI 1.4
  TX controller IP with accompanying PHY IP.

allOf:
  - $ref: synopsys,dw-hdmi.yaml#

properties:
  compatible:
    const: ingenic,jz4780-dw-hdmi

  reg-io-width:
    const: 4

  clocks:
    maxItems: 2

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

    properties:
      port@0:
        $ref: /schemas/graph.yaml#/properties/port
        description: Input from LCD controller output.

      port@1:
        $ref: /schemas/graph.yaml#/properties/port
        description: Link to the HDMI connector.

required:
  - compatible
  - clocks
  - clock-names
  - ports
  - reg-io-width

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/clock/ingenic,jz4780-cgu.h>

    hdmi: hdmi@10180000 {
        compatible = "ingenic,jz4780-dw-hdmi";
        reg = <0x10180000 0x8000>;
        reg-io-width = <4>;
        ddc-i2c-bus = <&i2c4>;
        interrupt-parent = <&intc>;
        interrupts = <3>;
        clocks = <&cgu JZ4780_CLK_AHB0>, <&cgu JZ4780_CLK_HDMI>;
        clock-names = "iahb", "isfr";

        ports {
            #address-cells = <1>;
            #size-cells = <0>;
            hdmi_in: port@0 {
                reg = <0>;
                dw_hdmi_in: endpoint {
                    remote-endpoint = <&jz4780_lcd_out>;
                };
            };
            hdmi_out: port@1 {
                reg = <1>;
                dw_hdmi_out: endpoint {
                    remote-endpoint = <&hdmi_con>;
                };
            };
        };
    };

...
+1 −1
Original line number Diff line number Diff line
@@ -68,7 +68,7 @@ properties:
                  - vesa-24
                description: |
                  The color signals mapping order. See details in
                  Documentation/devicetree/bindings/display/panel/lvds.yaml
                  Documentation/devicetree/bindings/display/lvds.yaml

      port@1:
        $ref: /schemas/graph.yaml#/properties/port
+4 −31
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/panel/lvds.yaml#
$id: http://devicetree.org/schemas/display/lvds.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: LVDS Display Panel
title: LVDS Display Common Properties

maintainers:
  - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
@@ -13,8 +13,8 @@ maintainers:
description: |+
  LVDS is a physical layer specification defined in ANSI/TIA/EIA-644-A. Multiple
  incompatible data link layers have been used over time to transmit image data
  to LVDS panels. This bindings supports display panels compatible with the
  following specifications.
  to LVDS devices. This bindings supports devices compatible with the following
  specifications.

  [JEIDA] "Digital Interface Standards for Monitor", JEIDA-59-1999, February
  1999 (Version 1.0), Japan Electronic Industry Development Association (JEIDA)
@@ -26,18 +26,7 @@ description: |+
  Device compatible with those specifications have been marketed under the
  FPD-Link and FlatLink brands.

allOf:
  - $ref: panel-common.yaml#

properties:
  compatible:
    contains:
      const: panel-lvds
    description:
      Shall contain "panel-lvds" in addition to a mandatory panel-specific
      compatible string defined in individual panel bindings. The "panel-lvds"
      value shall never be used on its own.

  data-mapping:
    enum:
      - jeida-18
@@ -96,22 +85,6 @@ properties:
      If set, reverse the bit order described in the data mappings below on all
      data lanes, transmitting bits for slots 6 to 0 instead of 0 to 6.

  port: true
  ports: true

required:
  - compatible
  - data-mapping
  - width-mm
  - height-mm
  - panel-timing

oneOf:
  - required:
      - port
  - required:
      - ports

additionalProperties: true

...
+17 −2
Original line number Diff line number Diff line
@@ -11,13 +11,23 @@ maintainers:
  - Thierry Reding <thierry.reding@gmail.com>

allOf:
  - $ref: lvds.yaml#
  - $ref: panel-common.yaml#
  - $ref: /schemas/display/lvds.yaml/#

select:
  properties:
    compatible:
      contains:
        const: advantech,idk-1110wr

  required:
    - compatible

properties:
  compatible:
    items:
      - const: advantech,idk-1110wr
      - {} # panel-lvds, but not listed here to avoid false select
      - const: panel-lvds

  data-mapping:
    const: jeida-24
@@ -35,6 +45,11 @@ additionalProperties: false

required:
  - compatible
  - data-mapping
  - width-mm
  - height-mm
  - panel-timing
  - port

examples:
  - |+
Loading