Commit 51c3b916 authored by Dave Airlie's avatar Dave Airlie
Browse files

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



drm-misc-next for 5.13:

UAPI Changes:

Cross-subsystem Changes:

Core Changes:
  - %p4cc printk format modifier
  - atomic: introduce drm_crtc_commit_wait, rework atomic plane state
    helpers to take the drm_commit_state structure
  - dma-buf: heaps rework to return a struct dma_buf
  - simple-kms: Add plate state helpers
  - ttm: debugfs support, removal of sysfs

Driver Changes:
  - Convert drivers to shadow plane helpers
  - arc: Move to drm/tiny
  - ast: cursor plane reworks
  - gma500: Remove TTM and medfield support
  - mxsfb: imx8mm support
  - panfrost: MMU IRQ handling rework
  - qxl: rework to better handle resources deallocation, locking
  - sun4i: Add alpha properties for UI and VI layers
  - vc4: RPi4 CEC support
  - vmwgfx: doc cleanup

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

From: Maxime Ripard <maxime@cerno.tech>
Link: https://patchwork.freedesktop.org/patch/msgid/20210303100600.dgnkadonzuvfnu22@gilmour
parents 1e28eed1 762949bb
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -567,6 +567,24 @@ For printing netdev_features_t.

Passed by reference.

V4L2 and DRM FourCC code (pixel format)
---------------------------------------

::

	%p4cc

Print a FourCC code used by V4L2 or DRM, including format endianness and
its numerical value as hexadecimal.

Passed by reference.

Examples::

	%p4cc	BG12 little-endian (0x32314742)
	%p4cc	Y10  little-endian (0x20303159)
	%p4cc	NV12 big-endian (0xb231564e)

Thanks
======

+1 −1
Original line number Diff line number Diff line
@@ -109,7 +109,7 @@ required:
  - resets
  - ddc

additionalProperties: false
unevaluatedProperties: false

examples:
  - |
+110 −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/fsl,lcdif.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Freescale/NXP i.MX LCD Interface (LCDIF)

maintainers:
  - Marek Vasut <marex@denx.de>
  - Stefan Agner <stefan@agner.ch>

description: |
  (e)LCDIF display controller found in the Freescale/NXP i.MX SoCs.

properties:
  compatible:
    oneOf:
      - enum:
          - fsl,imx23-lcdif
          - fsl,imx28-lcdif
          - fsl,imx6sx-lcdif
      - items:
          - enum:
              - fsl,imx6sl-lcdif
              - fsl,imx6sll-lcdif
              - fsl,imx6ul-lcdif
              - fsl,imx7d-lcdif
              - fsl,imx8mm-lcdif
              - fsl,imx8mq-lcdif
          - const: fsl,imx6sx-lcdif

  reg:
    maxItems: 1

  clocks:
    items:
      - description: Pixel clock
      - description: Bus clock
      - description: Display AXI clock
    minItems: 1

  clock-names:
    items:
      - const: pix
      - const: axi
      - const: disp_axi
    minItems: 1

  interrupts:
    maxItems: 1

  port:
    $ref: /schemas/graph.yaml#/properties/port
    description: The LCDIF output port

required:
  - compatible
  - reg
  - clocks
  - interrupts
  - port

additionalProperties: false

allOf:
  - if:
      properties:
        compatible:
          contains:
            const: fsl,imx6sx-lcdif
    then:
      properties:
        clocks:
          minItems: 2
          maxItems: 3
        clock-names:
          minItems: 2
          maxItems: 3
      required:
        - clock-names
    else:
      properties:
        clocks:
          maxItems: 1
        clock-names:
          maxItems: 1

examples:
  - |
    #include <dt-bindings/clock/imx6sx-clock.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>

    display-controller@2220000 {
        compatible = "fsl,imx6sx-lcdif";
        reg = <0x02220000 0x4000>;
        interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
        clocks = <&clks IMX6SX_CLK_LCDIF1_PIX>,
                 <&clks IMX6SX_CLK_LCDIF_APB>,
                 <&clks IMX6SX_CLK_DISPLAY_AXI>;
        clock-names = "pix", "axi", "disp_axi";

        port {
            endpoint {
                remote-endpoint = <&panel_in>;
            };
        };
    };

...
+0 −87
Original line number Diff line number Diff line
* Freescale MXS LCD Interface (LCDIF)

New bindings:
=============
Required properties:
- compatible:	Should be "fsl,imx23-lcdif" for i.MX23.
		Should be "fsl,imx28-lcdif" for i.MX28.
		Should be "fsl,imx6sx-lcdif" for i.MX6SX.
		Should be "fsl,imx8mq-lcdif" for i.MX8MQ.
- reg:		Address and length of the register set for LCDIF
- interrupts:	Should contain LCDIF interrupt
- clocks:	A list of phandle + clock-specifier pairs, one for each
		entry in 'clock-names'.
- clock-names:	A list of clock names. For MXSFB it should contain:
    - "pix" for the LCDIF block clock
    - (MX6SX-only) "axi", "disp_axi" for the bus interface clock

Required sub-nodes:
  - port: The connection to an encoder chip.

Example:

	lcdif1: display-controller@2220000 {
		compatible = "fsl,imx6sx-lcdif", "fsl,imx28-lcdif";
		reg = <0x02220000 0x4000>;
		interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
		clocks = <&clks IMX6SX_CLK_LCDIF1_PIX>,
			 <&clks IMX6SX_CLK_LCDIF_APB>,
			 <&clks IMX6SX_CLK_DISPLAY_AXI>;
		clock-names = "pix", "axi", "disp_axi";

		port {
			parallel_out: endpoint {
				remote-endpoint = <&panel_in_parallel>;
			};
		};
	};

Deprecated bindings:
====================
Required properties:
- compatible:	Should be "fsl,imx23-lcdif" for i.MX23.
		Should be "fsl,imx28-lcdif" for i.MX28.
- reg:		Address and length of the register set for LCDIF
- interrupts:	Should contain LCDIF interrupts
- display:	phandle to display node (see below for details)

* display node

Required properties:
- bits-per-pixel:	<16> for RGB565, <32> for RGB888/666.
- bus-width:		number of data lines.  Could be <8>, <16>, <18> or <24>.

Required sub-node:
- display-timings:	Refer to binding doc display-timing.txt for details.

Examples:

lcdif@80030000 {
	compatible = "fsl,imx28-lcdif";
	reg = <0x80030000 2000>;
	interrupts = <38 86>;

	display: display {
		bits-per-pixel = <32>;
		bus-width = <24>;

		display-timings {
			native-mode = <&timing0>;
			timing0: timing0 {
				clock-frequency = <33500000>;
				hactive = <800>;
				vactive = <480>;
				hfront-porch = <164>;
				hback-porch = <89>;
				hsync-len = <10>;
				vback-porch = <23>;
				vfront-porch = <10>;
				vsync-len = <10>;
				hsync-active = <0>;
				vsync-active = <0>;
				de-active = <1>;
				pixelclk-active = <0>;
			};
		};
	};
};
+12 −0
Original line number Diff line number Diff line
@@ -80,6 +80,18 @@ Atomic State Helper Reference
.. kernel-doc:: drivers/gpu/drm/drm_atomic_state_helper.c
   :export:

GEM Atomic Helper Reference
---------------------------

.. kernel-doc:: drivers/gpu/drm/drm_gem_atomic_helper.c
   :doc: overview

.. kernel-doc:: include/drm/drm_gem_atomic_helper.h
   :internal:

.. kernel-doc:: drivers/gpu/drm/drm_gem_atomic_helper.c
   :export:

Simple KMS Helper Reference
===========================

Loading