Commit 6c56e8ad authored by Daniel Vetter's avatar Daniel Vetter
Browse files

Merge tag 'drm-misc-next-2019-12-16' of git://anongit.freedesktop.org/drm/drm-misc into drm-next



drm-misc-next for v5.6:

UAPI Changes:
- Add support for DMA-BUF HEAPS.

Cross-subsystem Changes:
- mipi dsi definition updates, pulled into drm-intel as well.
- Add lockdep annotations for dma_resv vs mmap_sem and fs_reclaim.
- Remove support for dma-buf kmap/kunmap.
- Constify fb_ops in all fbdev drivers, including drm drivers and drm-core, and media as well.

Core Changes:
- Small cleanups to ttm.
- Fix SCDC definition.
- Assorted cleanups to core.
- Add todo to remove load/unload hooks, and use generic fbdev emulation.
- Assorted documentation updates.
- Use blocking ww lock in ttm fault handler.
- Remove drm_fb_helper_fbdev_setup/teardown.
- Warning fixes with W=1 for atomic.
- Use drm_debug_enabled() instead of drm_debug flag testing in various drivers.
- Fallback to nontiled mode in fbdev emulation when not all tiles are present. (Later on reverted)
- Various kconfig indentation fixes in core and drivers.
- Fix freeing transactions in dp-mst correctly.
- Sean Paul is steping down as core maintainer. :-(
- Add lockdep annotations for atomic locks vs dma-resv.
- Prevent use-after-free for a bad job in drm_scheduler.
- Fill out all block sizes in the P01x and P210 definitions.
- Avoid division by zero in drm/rect, and fix bounds.
- Add drm/rect selftests.
- Add aspect ratio and alternate clocks for HDMI 4k modes.
- Add todo for drm_framebuffer_funcs and fb_create cleanup.
- Drop DRM_AUTH for prime import/export ioctls.
- Clear DP-MST payload id tables downstream when initializating.
- Fix for DSC throughput definition.
- Add extra FEC definitions.
- Fix fake offset in drm_gem_object_funs.mmap.
- Stop using encoder->bridge in core directly
- Handle bridge chaining slightly better.
- Add backlight support to drm/panel, and use it in many panel drivers.
- Increase max number of y420 modes from 128 to 256, as preparation to add the new modes.

Driver Changes:
- Small fixes all over.
- Fix documentation in vkms.
- Fix mmap_sem vs dma_resv in nouveau.
- Small cleanup in komeda.
- Add page flip support in gma500 for psb/cdv.
- Add ddc symlink in the connector sysfs directory for many drivers.
- Add support for analogic an6345, and fix small bugs in it.
- Add atomic modesetting support to ast.
- Fix radeon fault handler VMA race.
- Switch udl to use generic shmem helpers.
- Unconditional vblank handling for mcde.
- Miscellaneous fixes to mcde.
- Tweak debug output from komeda using debugfs.
- Add gamma and color transform support to komeda for DOU-IPS.
- Add support for sony acx424AKP panel.
- Various small cleanups to gma500.
- Use generic fbdev emulation in udl, and replace udl_framebuffer with generic implementation.
- Add support for Logic PD Type 28 panel.
- Use drm_panel_* wrapper functions in exynos/tegra/msm.
- Add devicetree bindings for generic DSI panels.
- Don't include drm_pci.h directly in many drivers.
- Add support for begin/end_cpu_access in udmabuf.
- Stop using drm_get_pci_dev in gma500 and mga200.
- Fixes to UDL damage handling, and use dma_buf_begin/end_cpu_access.
- Add devfreq thermal support to panfrost.
- Fix hotplug with daisy chained monitors by removing VCPI when disabling topology manager.
- meson: Add support for OSD1 plane AFBC commit.
- Stop displaying garbage when toggling ast primary plane on/off.
- More cleanups and fixes to UDL.
- Add D32 suport to komeda.
- Remove globle copy of drm_dev in gma500.
- Add support for Boe Himax8279d MIPI-DSI LCD panel.
- Add support for ingenic JZ4770 panel.
- Small null pointer deference fix in ingenic.
- Remove support for the special tfp420 driver, as there is a generic way to do it.

Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>

From: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/ba73535a-9334-5302-2e1f-5208bd7390bd@linux.intel.com
parents d1eef1c6 2156873f
Loading
Loading
Loading
Loading
+91 −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/dsi-controller.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Common Properties for DSI Display Panels

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

description: |
  This document defines device tree properties common to DSI, Display
  Serial Interface controllers and attached panels. It doesn't constitute
  a device tree binding specification by itself but is meant to be referenced
  by device tree bindings.

  When referenced from panel device tree bindings the properties defined in
  this document are defined as follows. The panel device tree bindings are
  responsible for defining whether each property is required or optional.

  Notice: this binding concerns DSI panels connected directly to a master
  without any intermediate port graph to the panel. Each DSI master
  can control one to four virtual channels to one panel. Each virtual
  channel should have a node "panel" for their virtual channel with their
  reg-property set to the virtual channel number, usually there is just
  one virtual channel, number 0.

properties:
  $nodename:
    pattern: "^dsi-controller(@.*)?$"

  "#address-cells":
    const: 1

  "#size-cells":
    const: 0

patternProperties:
  "^panel@[0-3]$":
    description: Panels connected to the DSI link
    type: object

    properties:
      reg:
        minimum: 0
        maximum: 3
        description:
          The virtual channel number of a DSI peripheral. Must be in the range
          from 0 to 3, as DSI uses a 2-bit addressing scheme. Some DSI
          peripherals respond to more than a single virtual channel. In that
          case the reg property can take multiple entries, one for each virtual
          channel that the peripheral responds to.

      clock-master:
        type: boolean
        description:
           Should be enabled if the host is being used in conjunction with
           another DSI host to drive the same peripheral. Hardware supporting
           such a configuration generally requires the data on both the busses
           to be driven by the same clock. Only the DSI host instance
           controlling this clock should contain this property.

      enforce-video-mode:
        type: boolean
        description:
          The best option is usually to run a panel in command mode, as this
          gives better control over the panel hardware. However for different
          reasons like broken hardware, missing features or testing, it may be
          useful to be able to force a command mode-capable panel into video
          mode.

    required:
      - reg

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>
    dsi-controller@a0351000 {
        reg = <0xa0351000 0x1000>;
        #address-cells = <1>;
        #size-cells = <0>;
        panel@0 {
            compatible = "sony,acx424akp";
            reg = <0>;
            vddi-supply = <&ab8500_ldo_aux1_reg>;
            reset-gpios = <&gpio2 1 GPIO_ACTIVE_LOW>;
        };
    };

...
+1 −0
Original line number Diff line number Diff line
@@ -4,6 +4,7 @@ Required properties:
- compatible: one of:
  * ingenic,jz4740-lcd
  * ingenic,jz4725b-lcd
  * ingenic,jz4770-lcd
- reg: LCD registers location and length
- clocks: LCD pixclock and device clock specifiers.
	   The device clock is only required on the JZ4740.
+42 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/display/panel/logicpd,type28.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Logic PD Type 28 4.3" WQVGA TFT LCD panel

maintainers:
  - Adam Ford <aford173@gmail.com>

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

properties:
  compatible:
    const: logicpd,type28

  power-supply: true
  enable-gpios: true
  backlight: true
  port: true

required:
  - compatible

additionalProperties: false

examples:
  - |
    lcd0: display {
      compatible = "logicpd,type28";
      enable-gpios = <&gpio5 27 0>;
      backlight = <&backlight>;
      port {
        lcd_in: endpoint {
          remote-endpoint = <&dpi_out>;
        };
      };
    };

...
+49 −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/panel/sony,acx424akp.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Sony ACX424AKP 4" 480x864 AMOLED panel

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

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

properties:
  compatible:
    const: sony,acx424akp
  reg: true
  reset-gpios: true
  vddi-supply:
     description: regulator that supplies the vddi voltage
  enforce-video-mode: true

required:
  - compatible
  - reg
  - reset-gpios

additionalProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>

    dsi-controller@a0351000 {
        compatible = "ste,mcde-dsi";
        reg = <0xa0351000 0x1000>;
        #address-cells = <1>;
        #size-cells = <0>;

        panel@0 {
            compatible = "sony,acx424akp";
            reg = <0>;
            vddi-supply = <&foo>;
            reset-gpios = <&foo_gpio 0 GPIO_ACTIVE_LOW>;
        };
    };

...
+0 −21
Original line number Diff line number Diff line
Device-Tree bindings for tilcdc DRM TFP410 output driver

Required properties:
 - compatible: value should be "ti,tilcdc,tfp410".
 - i2c: the phandle for the i2c device to use for DDC

Recommended properties:
 - pinctrl-names, pinctrl-0: the pincontrol settings to configure
   muxing properly for pins that connect to TFP410 device
 - powerdn-gpio: the powerdown GPIO, pulled low to power down the
   TFP410 device (for DPMS_OFF)

Example:

	dvicape {
		compatible = "ti,tilcdc,tfp410";
		i2c = <&i2c2>;
		pinctrl-names = "default";
		pinctrl-0 = <&bone_dvi_cape_dvi_00A1_pins>;
		powerdn-gpio = <&gpio2 31 0>;
	};
Loading