Commit 43ed3c6c authored by Dave Airlie's avatar Dave Airlie
Browse files

Merge tag 'drm-misc-next-2021-06-01' of git://anongit.freedesktop.org/drm/drm-misc into drm-next



drm-misc-next for 5.14:

UAPI Changes:

 * Use DRM driver names for fbdev

Cross-subsystem Changes:

Core Changes:

 * Fix leaked DMA handles

 * Improve documentation around DRM_CLIENT_CAP_*

 * Cleanups

 * dp_mst: Use kHz as link-rate unit during init

 * fourcc: Remove drm_gem_format_name() and drm_format_name_buf

 * gem-cma: Fix mmap for buffers with write combining

 * ttm: Don't override pre-set vm_ops; ttm_bo_mmap() removal and cleanups

Driver Changes:

 * drm/amdgpu: Fix hot unplug during suspend; Implement mmap as GEM object
   function; Use %p4cc format-string modifier; Cleanups

 * drm/bridge: Cdns: Fix PM reference leak, Cleanups; Lt8912b: Fix Coccinelle
   warnings; Fix Kconfig dependencies; Fixes and cleanups

 * drm/hisilicon/kirin: Cleanups

 * drm/nouveau: Implement mmap as GEM object function

 * drm/radeon: Implement mmap as GEM object function

 * drm/rockchip: Remove generic drivers during init; Add scaling for RK3036
   win1; Fix missing registers for RK3066 and 3188; Add alpha support for
   RK3036, RK3066, RK3126 and RK3188; Fixes and cleanups

 * drm/simpledrm: Use %p4cc: format-string modifier

 * drm/vmwgfx: Cleanups

 * fbdev/matrox: Use modern module_init()

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

From: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/patch/msgid/YLZOKiYE6XFmE/MH@linux-uq9g.fritz.box
parents 5522e9f7 2e290c8d
Loading
Loading
Loading
Loading
+3 −1
Original line number Original line Diff line number Diff line
@@ -11,7 +11,9 @@ maintainers:


properties:
properties:
  compatible:
  compatible:
    const: brcm,bcm2835-vec
    enum:
      - brcm,bcm2711-vec
      - brcm,bcm2835-vec


  reg:
  reg:
    maxItems: 1
    maxItems: 1
+82 −0
Original line number Original line 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/google,cros-ec-anx7688.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: ChromeOS EC ANX7688 HDMI to DP Converter through Type-C Port

maintainers:
  - Nicolas Boichat <drinkcat@chromium.org>
  - Enric Balletbo i Serra <enric.balletbo@collabora.com>

description: |
  ChromeOS EC ANX7688 is a display bridge that converts HDMI 2.0 to
  DisplayPort 1.3 Ultra-HDi (4096x2160p60). It is an Analogix ANX7688 chip
  which is connected to and operated by the ChromeOS Embedded Controller
  (See google,cros-ec.yaml). It is accessed using I2C tunneling through
  the EC and therefore its node should be a child of an EC I2C tunnel node
  (See google,cros-ec-i2c-tunnel.yaml).

properties:
  compatible:
    const: google,cros-ec-anx7688

  reg:
    maxItems: 1
    description: I2C address of the device.

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

    properties:
      port@0:
        $ref: /schemas/graph.yaml#/properties/port
        description: Video port for HDMI input.

      port@1:
        $ref: /schemas/graph.yaml#/properties/port
        description: USB Type-c connector.

    required:
      - port@0
      - port@1

required:
  - compatible
  - reg
  - ports

additionalProperties: false

examples:
  - |
    i2c_tunnel_b: i2c-tunnel1 {
        compatible = "google,cros-ec-i2c-tunnel";
        google,remote-bus = <1>;
        #address-cells = <1>;
        #size-cells = <0>;

        anx7688: anx7688@2c {
            compatible = "google,cros-ec-anx7688";
            reg = <0x2c>;

            ports {
                #address-cells = <1>;
                #size-cells = <0>;
                port@0 {
                    reg = <0>;
                    anx7688_in: endpoint {
                        remote-endpoint = <&hdmi0_out>;
                    };
                };
                port@1 {
                    reg = <1>;
                    anx7688_out: endpoint {
                        remote-endpoint = <&typec_connector>;
                    };
                };
            };
        };
    };
+0 −54
Original line number Original line Diff line number Diff line
* Faraday TV Encoder TVE200

Required properties:

- compatible: must be one of:
	"faraday,tve200"
	"cortina,gemini-tvc", "faraday,tve200"

- reg: base address and size of the control registers block

- interrupts: contains an interrupt specifier for the interrupt
	line from the TVE200

- clock-names: should contain "PCLK" for the clock line clocking the
	silicon and "TVE" for the 27MHz clock to the video driver

- clocks: contains phandle and clock specifier pairs for the entries
	in the clock-names property. See
	Documentation/devicetree/bindings/clock/clock-bindings.txt

Optional properties:

- resets: contains the reset line phandle for the block

Required sub-nodes:

- port: describes LCD panel signals, following the common binding
	for video transmitter interfaces; see
	Documentation/devicetree/bindings/media/video-interfaces.txt
	This port should have the properties:
	reg = <0>;
	It should have one endpoint connected to a remote endpoint where
	the display is connected.

Example:

display-controller@6a000000 {
	#address-cells = <1>;
	#size-cells = <0>;
	compatible = "faraday,tve200";
	reg = <0x6a000000 0x1000>;
	interrupts = <13 IRQ_TYPE_EDGE_RISING>;
	resets = <&syscon GEMINI_RESET_TVC>;
	clocks = <&syscon GEMINI_CLK_GATE_TVC>,
		 <&syscon GEMINI_CLK_TVC>;
	clock-names = "PCLK", "TVE";

	port@0 {
		reg = <0>;
		display_out: endpoint {
			remote-endpoint = <&panel_in>;
		};
	};
};
+68 −0
Original line number Original line 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/faraday,tve200.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Faraday TV Encoder TVE200

maintainers:
  - Linus Walleij <linus.walleij@linaro.org>

properties:
  compatible:
    oneOf:
      - const: faraday,tve200
      - items:
          - const: cortina,gemini-tvc
          - const: faraday,tve200

  reg:
    maxItems: 1

  interrupts:
    minItems: 1

  clock-names:
    items:
      - const: PCLK
      - const: TVE

  clocks:
    minItems: 2

  resets:
    minItems: 1

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

required:
  - compatible
  - reg
  - interrupts
  - clock-names
  - clocks

additionalProperties: false

examples:
  - |
    #include <dt-bindings/clock/cortina,gemini-clock.h>
    #include <dt-bindings/interrupt-controller/irq.h>
    #include <dt-bindings/reset/cortina,gemini-reset.h>
    display-controller@6a000000 {
      compatible = "faraday,tve200";
      reg = <0x6a000000 0x1000>;
      interrupts = <13 IRQ_TYPE_EDGE_RISING>;
      resets = <&syscon GEMINI_RESET_TVC>;
      clocks = <&syscon GEMINI_CLK_GATE_TVC>,
               <&syscon GEMINI_CLK_TVC>;
      clock-names = "PCLK", "TVE";

      port {
        display_out: endpoint {
          remote-endpoint = <&panel_in>;
        };
      };
    };
+0 −1
Original line number Original line Diff line number Diff line
@@ -99,7 +99,6 @@ config DRM_FBDEV_EMULATION
	bool "Enable legacy fbdev support for your modesetting driver"
	bool "Enable legacy fbdev support for your modesetting driver"
	depends on DRM
	depends on DRM
	select DRM_KMS_HELPER
	select DRM_KMS_HELPER
	select DRM_KMS_FB_HELPER
	select FB
	select FB
	select FB_CFB_FILLRECT
	select FB_CFB_FILLRECT
	select FB_CFB_COPYAREA
	select FB_CFB_COPYAREA
Loading