Commit 1cd260a7 authored by Dave Airlie's avatar Dave Airlie
Browse files

Merge tag 'drm-misc-next-2020-10-27' of git://anongit.freedesktop.org/drm/drm-misc into drm-next



drm-misc-next for 5.11:

UAPI Changes:

  - doc: rules for EBUSY on non-blocking commits; requirements for fourcc
    modifiers; on parsing EDID
  - fbdev/sbuslib: Remove unused FBIOSCURSOR32
  - fourcc: deprecate DRM_FORMAT_MOD_NONE
  - virtio: Support blob resources for memory allocations; Expose host-visible
    and cross-device features

Cross-subsystem Changes:

  - devicetree: Add vendor Prefix for Yes Optoelectronics, Shanghai Top Display
    Optoelectronics
  - dma-buf: Add struct dma_buf_map that stores DMA pointer and I/O-memory flag;
    dma_buf_vmap()/vunmap() return address in dma_buf_map; Use struct_size() macro

Core Changes:

  - atomic: pass full state to CRTC atomic enable/disable; warn for EBUSY during
    non-blocking commits
  - dp: Prepare for DP 2.0 DPCD
  - dp_mst: Receive extended DPCD caps
  - dma-buf: Documentation
  - doc: Format modifiers; dma-buf-map; Cleanups
  - fbdev: Don't use compat_alloc_user_space(); mark as orphaned
  - fb-helper: Take lock in drm_fb_helper_restore_work_fb()
  - gem: Convert implementation and drivers to GEM object functions, remove
    GEM callbacks from struct drm_driver (expect gem_prime_mmap)
  - panel: Cleanups
  - pci: Add legacy infix to drm_irq_by_busid()
  - sched: Avoid infinite waits in drm_sched_entity_destroy()
  - switcheroo: Cleanups
  - ttm: Remove AGP support; Don't modify caching during swapout; Major
    refactoring of the implementation and API that affects all depending
    drivers; Add ttm_bo_wait_ctx(); Add ttm_bo_pin()/unpin() in favor of
    TTM_PL_FLAG_NO_EVICT; Remove ttm_bo_create(); Remove fault_reserve_notify()
    callback; Push move() implementation into drivers; Remove TTM_PAGE_FLAG_WRITE;
    Replace caching flags with init-time cache setting; Push ttm_tt_bind() into
    drivers; Replace move_notify() with delete_mem_notify(); No overlapping memcpy();
    no more ttm_set_populated()
  - vram-helper: Fix BO top-down placement; TTM-related changes; Init GEM
    object functions with defaults; Default placement in system memory; Cleanups

Driver Changes:

  - amdgpu: Use GEM object functions
  - armada: Use GEM object functions
  - aspeed: Configure output via sysfs; Init struct drm_driver with
  - ast: Reload LUT after FB format changes
  - bridge: Add driver and DT bindings for anx7625; Cleanups
  - bridge/dw-hdmi: Constify ops
  - bridge/ti-sn65dsi86: Add retries for link training
  - bridge/lvds-codec: Add support for regulator
  - bridge/tc358768: Restore connector support DRM_GEM_CMA_DRIVEROPS; Cleanups
  - display/ti,j721e-dss: Add DT properies assigned-clocks, assigned-clocks-parent and
    dma-coherent
  - display/ti,am65s-dss: Add DT properies assigned-clocks, assigned-clocks-parent and
    dma-coherent
  - etnaviv: Use GEM object functions
  - exynos: Use GEM object functions
  - fbdev: Cleanups and compiler fixes throughout framebuffer drivers
  - fbdev/cirrusfb: Avoid division by 0
  - gma500: Use GEM object functions; Fix double-free of connector; Cleanups
  - hisilicon/hibmc: I2C-based DDC support; Use to_hibmc_drm_device(); Cleanups
  - i915: Use GEM object functions
  - imx/dcss: Init driver with DRM_GEM_CMA_DRIVER_OPS; Cleanups
  - ingenic: Reset pixel clock when parent clock changes; support reserved
    memory; Alloc F0 and F1 DMA channels at once; Support different pixel formats;
    Revert support for cached mmap buffers
    on F0/F1; support 30-bit/24-bit/8-bit-palette modes
  - komeda: Use DEFINE_SHOW_ATTRIBUTE
  - mcde: Detect platform_get_irq() errors
  - mediatek: Use GEM object functions
  - msm: Use GEM object functions
  - nouveau: Cleanups; TTM-related changes; Use GEM object functions
  - omapdrm: Use GEM object functions
  - panel: Add driver and DT bindings for Novatak nt36672a; Add driver and DT
    bindings for YTC700TLAG-05-201C; Add driver and DT bindings for TDO TL070WSH30;
    Cleanups
  - panel/mantix: Fix reset; Fix deref of NULL pointer in mantix_get_modes()
  - panel/otm8009a: Allow non-continuous dsi clock; Cleanups
  - panel/rm68200: Allow non-continuous dsi clock; Fix mode to 50 FPS
  - panfrost: Fix job timeout handling; Cleanups
  - pl111: Use GEM object functions
  - qxl: Cleanups; TTM-related changes; Pin new BOs with ttm_bo_init_reserved()
  - radeon: Cleanups; TTM-related changes; Use GEM object functions
  - rockchip: Use GEM object functions
  - shmobile: Cleanups
  - tegra: Use GEM object functions
  - tidss: Set drm_plane_helper_funcs.prepare_fb
  - tilcdc: Don't keep vblank interrupt enabled all the time
  - tve200: Detect platform_get_irq() errors
  - vc4: Use GEM object functions; Only register components once DSI is attached;
    Add Maxime as maintainer
  - vgem: Use GEM object functions
  - via: Simplify critical section in via_mem_alloc()
  - virtgpu: Use GEM object functions
  - virtio: Implement blob resources, host-visible and cross-device features;
    Support mapping of host-allocated resources; Use UUID APi; Cleanups
  - vkms: Use GEM object functions; Switch to SHMEM
  - vmwgfx: TTM-related changes; Inline ttm_bo_swapout_all()
  - xen: Use GEM object functions
  - xlnx: Use GEM object functions

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

From: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/patch/msgid/20201027100936.GA4858@linux-uq9g
parents 3cea11cd 4dfec0d1
Loading
Loading
Loading
Loading
+95 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
# Copyright 2019 Analogix Semiconductor, Inc.
%YAML 1.2
---
$id: "http://devicetree.org/schemas/display/bridge/analogix,anx7625.yaml#"
$schema: "http://devicetree.org/meta-schemas/core.yaml#"

title: Analogix ANX7625 SlimPort (4K Mobile HD Transmitter)

maintainers:
  - Xin Ji <xji@analogixsemi.com>

description: |
  The ANX7625 is an ultra-low power 4K Mobile HD Transmitter
  designed for portable devices.

properties:
  compatible:
    items:
      - const: analogix,anx7625

  reg:
    maxItems: 1

  interrupts:
    description: used for interrupt pin B8.
    maxItems: 1

  enable-gpios:
    description: used for power on chip control, POWER_EN pin D2.
    maxItems: 1

  reset-gpios:
    description: used for reset chip control, RESET_N pin B7.
    maxItems: 1

  ports:
    type: object

    properties:
      port@0:
        type: object
        description:
          Video port for MIPI DSI input.

      port@1:
        type: object
        description:
          Video port for panel or connector.

    required:
        - port@0
        - port@1

required:
  - compatible
  - reg
  - ports

additionalProperties: false

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

    i2c0 {
        #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>;

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

                mipi2dp_bridge_in: port@0 {
                    reg = <0>;
                    anx7625_in: endpoint {
                        remote-endpoint = <&mipi_dsi>;
                    };
                };

                mipi2dp_bridge_out: port@1 {
                    reg = <1>;
                    anx7625_out: endpoint {
                        remote-endpoint = <&panel_in>;
                    };
                };
            };
        };
    };
+87 −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/novatek,nt36672a.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Novatek NT36672A based DSI display Panels

maintainers:
  - Sumit Semwal <sumit.semwal@linaro.org>

description: |
  The nt36672a IC from Novatek is a generic DSI Panel IC used to drive dsi
  panels.
  Right now, support is added only for a Tianma FHD+ LCD display panel with a
  resolution of 1080x2246. It is a video mode DSI panel.

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

properties:
  compatible:
    items:
      - enum:
         - tianma,fhd-video
      - const: novatek,nt36672a
    description: This indicates the panel manufacturer of the panel that is
      in turn using the NT36672A panel driver. This compatible string
      determines how the NT36672A panel driver is configured for the indicated
      panel. The novatek,nt36672a compatible shall always be provided as a fallback.

  reset-gpios:
    description: phandle of gpio for reset line - This should be 8mA, gpio
      can be configured using mux, pinctrl, pinctrl-names (active high)

  vddio-supply:
    description: phandle of the regulator that provides the supply voltage
      Power IC supply

  vddpos-supply:
    description: phandle of the positive boost supply regulator

  vddneg-supply:
    description: phandle of the negative boost supply regulator

  reg: true
  port: true

required:
  - compatible
  - reg
  - vddi0-supply
  - vddpos-supply
  - vddneg-supply
  - reset-gpios
  - port

unevaluatedProperties: false

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

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

        panel@0 {
            compatible = "tianma,fhd-video", "novatek,nt36672a";
            reg = <0>;
            vddi0-supply = <&vreg_l14a_1p88>;
            vddpos-supply = <&lab>;
            vddneg-supply = <&ibb>;

            reset-gpios = <&tlmm 6 GPIO_ACTIVE_HIGH>;

            #address-cells = <1>;
            #size-cells = <0>;
            port {
                tianma_nt36672a_in_0: endpoint {
                    remote-endpoint = <&dsi0_out>;
                };
            };
        };
    };

...
+3 −0
Original line number Diff line number Diff line
@@ -47,6 +47,8 @@ properties:
      - panasonic,vvx10f004b00
        # Panasonic 10" WUXGA TFT LCD panel
      - panasonic,vvx10f034n00
        # Shangai Top Display Optoelectronics 7" TL070WSH30 1024x600 TFT LCD panel
      - tdo,tl070wsh30

  reg:
    maxItems: 1
@@ -54,6 +56,7 @@ properties:

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

+2 −0
Original line number Diff line number Diff line
@@ -282,6 +282,8 @@ properties:
      - vxt,vl050-8048nt-c01
        # Winstar Display Corporation 3.5" QVGA (320x240) TFT LCD panel
      - winstar,wf35ltiacd
        # Yes Optoelectronics YTC700TLAG-05-201C 7" TFT LCD panel
      - yes-optoelectronics,ytc700tlag-05-201c

  backlight: true
  enable-gpios: true
+11 −0
Original line number Diff line number Diff line
@@ -55,6 +55,14 @@ properties:
      - const: vp1
      - const: vp2

  assigned-clocks:
    minItems: 1
    maxItems: 3

  assigned-clock-parents:
    minItems: 1
    maxItems: 3

  interrupts:
    maxItems: 1

@@ -62,6 +70,9 @@ properties:
    maxItems: 1
    description: phandle to the associated power domain

  dma-coherent:
    type: boolean

  ports:
    type: object
    description:
Loading