Merge tag 'drm-misc-next-2019-03-21' of git://anongit.freedesktop.org/drm/drm-misc...
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 25 Mar 2019 10:05:11 +0000 (11:05 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 25 Mar 2019 10:05:12 +0000 (11:05 +0100)
drm-misc-next for 5.2:

UAPI Changes:
- Add Colorspace connector property (Uma)
- fourcc: Several new YUV formats from ARM (Brian & Ayan)
- fourcc: Fix merge conflicts between new formats above and Swati's that
  went in via topic/hdr-formats-2019-03-07 branch (Maarten)

Cross-subsystem Changes:
- Typed component support via topic/component-typed-2019-02-11 (Maxime/Daniel)

Core Changes:
- Improve component helper documentation (Daniel)
- Avoid calling drm_dev_unregister() twice on unplugged devices (Noralf)
- Add device managed (devm) drm_device init function (Noralf)
- Graduate TINYDRM_MODE to DRM_SIMPLE_MODE in core (Noralf)
- Move MIPI/DSI rate control params computation into core from i915 (David)
- Add support for shmem backed gem objects (Noralf)

Driver Changes:
- various: Use of_node_name_eq for node name comparisons (Rob Herring)
- sun4i: Add DSI burst mode support (Konstantin)
- panel: Add Ronbo RB070D30 MIPI/DSI panel support (Konstantin)
- virtio: A few prime improvements (Gerd)
- tinydrm: Remove tinydrm_device (Noralf)
- vc4: Add load tracker to driver to detect underflow in atomic check (Boris)
- vboxvideo: Move it out of staging \o/ (Hans)
- v3d: Add support for V3D v4.2 (Eric)

Cc: Konstantin Sudakov <k.sudakov@integrasources.com>
Cc: Rob Herring <robh@kernel.org>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Maxime Ripard <maxime.ripard@bootlin.com>
Cc: Uma Shankar <uma.shankar@intel.com>
Cc: Noralf Trønnes <noralf@tronnes.org>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: David Francis <David.Francis@amd.com>
Cc: Boris Brezillon <boris.brezillon@bootlin.com>
Cc: Eric Anholt <eric@anholt.net>
Cc: Hans de Goede <hdegoede@redhat.com>
Cc: Brian Starkey <brian.starkey@arm.com>
Cc: Ayan Kumar Halder <ayan.halder@arm.com>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
From: Sean Paul <sean@poorly.run>
Link: https://patchwork.freedesktop.org/patch/msgid/20190321170805.GA50145@art_vandelay
15 files changed:
1  2 
Documentation/devicetree/bindings/vendor-prefixes.txt
Documentation/driver-model/devres.txt
MAINTAINERS
drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c
drivers/gpu/drm/arm/malidp_mw.c
drivers/gpu/drm/drm_atomic_helper.c
drivers/gpu/drm/drm_atomic_uapi.c
drivers/gpu/drm/etnaviv/etnaviv_gem.h
drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c
drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c
drivers/gpu/drm/sun4i/sun4i_tcon.c
drivers/gpu/drm/vc4/vc4_txp.c
drivers/staging/Kconfig
drivers/staging/Makefile
include/drm/drm_connector.h

Simple merge
diff --cc MAINTAINERS
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -38,16 -39,13 +38,15 @@@ obj-$(CONFIG_MOST)         += most
  obj-$(CONFIG_KS7010)          += ks7010/
  obj-$(CONFIG_GREYBUS)         += greybus/
  obj-$(CONFIG_BCM2835_VCHIQ)   += vc04_services/
- obj-$(CONFIG_DRM_VBOXVIDEO)   += vboxvideo/
  obj-$(CONFIG_PI433)           += pi433/
 -obj-$(CONFIG_SOC_MT7621)      += mt7621-pci/
 -obj-$(CONFIG_SOC_MT7621)      += mt7621-pinctrl/
 -obj-$(CONFIG_SOC_MT7621)      += mt7621-spi/
 +obj-$(CONFIG_PCI_MT7621)      += mt7621-pci/
 +obj-$(CONFIG_PCI_MT7621_PHY)  += mt7621-pci-phy/
 +obj-$(CONFIG_PINCTRL_RT2880)  += mt7621-pinctrl/
 +obj-$(CONFIG_SPI_MT7621)      += mt7621-spi/
  obj-$(CONFIG_SOC_MT7621)      += mt7621-dma/
 -obj-$(CONFIG_SOC_MT7621)      += mt7621-mmc/
 -obj-$(CONFIG_SOC_MT7621)      += mt7621-eth/
 +obj-$(CONFIG_DMA_RALINK)      += ralink-gdma/
 +obj-$(CONFIG_MTK_MMC)         += mt7621-mmc/
 +obj-$(CONFIG_NET_MEDIATEK_SOC_STAGING)        += mt7621-eth/
  obj-$(CONFIG_SOC_MT7621)      += mt7621-dts/
  obj-$(CONFIG_STAGING_GASKET_FRAMEWORK)        += gasket/
  obj-$(CONFIG_XIL_AXIS_FIFO)   += axis-fifo/
@@@ -253,68 -253,34 +253,96 @@@ enum drm_panel_orientation 
        DRM_MODE_PANEL_ORIENTATION_RIGHT_UP,
  };
  
+ /*
+  * This is a consolidated colorimetry list supported by HDMI and
+  * DP protocol standard. The respective connectors will register
+  * a property with the subset of this list (supported by that
+  * respective protocol). Userspace will set the colorspace through
+  * a colorspace property which will be created and exposed to
+  * userspace.
+  */
+ /* For Default case, driver will set the colorspace */
+ #define DRM_MODE_COLORIMETRY_DEFAULT                  0
+ /* CEA 861 Normal Colorimetry options */
+ #define DRM_MODE_COLORIMETRY_NO_DATA                  0
+ #define DRM_MODE_COLORIMETRY_SMPTE_170M_YCC           1
+ #define DRM_MODE_COLORIMETRY_BT709_YCC                        2
+ /* CEA 861 Extended Colorimetry Options */
+ #define DRM_MODE_COLORIMETRY_XVYCC_601                        3
+ #define DRM_MODE_COLORIMETRY_XVYCC_709                        4
+ #define DRM_MODE_COLORIMETRY_SYCC_601                 5
+ #define DRM_MODE_COLORIMETRY_OPYCC_601                        6
+ #define DRM_MODE_COLORIMETRY_OPRGB                    7
+ #define DRM_MODE_COLORIMETRY_BT2020_CYCC              8
+ #define DRM_MODE_COLORIMETRY_BT2020_RGB                       9
+ #define DRM_MODE_COLORIMETRY_BT2020_YCC                       10
+ /* Additional Colorimetry extension added as part of CTA 861.G */
+ #define DRM_MODE_COLORIMETRY_DCI_P3_RGB_D65           11
+ #define DRM_MODE_COLORIMETRY_DCI_P3_RGB_THEATER               12
 +/**
 + * enum drm_bus_flags - bus_flags info for &drm_display_info
 + *
 + * This enum defines signal polarities and clock edge information for signals on
 + * a bus as bitmask flags.
 + *
 + * The clock edge information is conveyed by two sets of symbols,
 + * DRM_BUS_FLAGS_*_DRIVE_\* and DRM_BUS_FLAGS_*_SAMPLE_\*. When this enum is
 + * used to describe a bus from the point of view of the transmitter, the
 + * \*_DRIVE_\* flags should be used. When used from the point of view of the
 + * receiver, the \*_SAMPLE_\* flags should be used. The \*_DRIVE_\* and
 + * \*_SAMPLE_\* flags alias each other, with the \*_SAMPLE_POSEDGE and
 + * \*_SAMPLE_NEGEDGE flags being equal to \*_DRIVE_NEGEDGE and \*_DRIVE_POSEDGE
 + * respectively. This simplifies code as signals are usually sampled on the
 + * opposite edge of the driving edge. Transmitters and receivers may however
 + * need to take other signal timings into account to convert between driving
 + * and sample edges.
 + *
 + * @DRM_BUS_FLAG_DE_LOW:              The Data Enable signal is active low
 + * @DRM_BUS_FLAG_DE_HIGH:             The Data Enable signal is active high
 + * @DRM_BUS_FLAG_PIXDATA_POSEDGE:     Legacy value, do not use
 + * @DRM_BUS_FLAG_PIXDATA_NEGEDGE:     Legacy value, do not use
 + * @DRM_BUS_FLAG_PIXDATA_DRIVE_POSEDGE:       Data is driven on the rising edge of
 + *                                    the pixel clock
 + * @DRM_BUS_FLAG_PIXDATA_DRIVE_NEGEDGE:       Data is driven on the falling edge of
 + *                                    the pixel clock
 + * @DRM_BUS_FLAG_PIXDATA_SAMPLE_POSEDGE: Data is sampled on the rising edge of
 + *                                    the pixel clock
 + * @DRM_BUS_FLAG_PIXDATA_SAMPLE_NEGEDGE: Data is sampled on the falling edge of
 + *                                    the pixel clock
 + * @DRM_BUS_FLAG_DATA_MSB_TO_LSB:     Data is transmitted MSB to LSB on the bus
 + * @DRM_BUS_FLAG_DATA_LSB_TO_MSB:     Data is transmitted LSB to MSB on the bus
 + * @DRM_BUS_FLAG_SYNC_POSEDGE:                Legacy value, do not use
 + * @DRM_BUS_FLAG_SYNC_NEGEDGE:                Legacy value, do not use
 + * @DRM_BUS_FLAG_SYNC_DRIVE_POSEDGE:  Sync signals are driven on the rising
 + *                                    edge of the pixel clock
 + * @DRM_BUS_FLAG_SYNC_DRIVE_NEGEDGE:  Sync signals are driven on the falling
 + *                                    edge of the pixel clock
 + * @DRM_BUS_FLAG_SYNC_SAMPLE_POSEDGE: Sync signals are sampled on the rising
 + *                                    edge of the pixel clock
 + * @DRM_BUS_FLAG_SYNC_SAMPLE_NEGEDGE: Sync signals are sampled on the falling
 + *                                    edge of the pixel clock
 + */
 +enum drm_bus_flags {
 +      DRM_BUS_FLAG_DE_LOW = BIT(0),
 +      DRM_BUS_FLAG_DE_HIGH = BIT(1),
 +      DRM_BUS_FLAG_PIXDATA_POSEDGE = BIT(2),
 +      DRM_BUS_FLAG_PIXDATA_NEGEDGE = BIT(3),
 +      DRM_BUS_FLAG_PIXDATA_DRIVE_POSEDGE = DRM_BUS_FLAG_PIXDATA_POSEDGE,
 +      DRM_BUS_FLAG_PIXDATA_DRIVE_NEGEDGE = DRM_BUS_FLAG_PIXDATA_NEGEDGE,
 +      DRM_BUS_FLAG_PIXDATA_SAMPLE_POSEDGE = DRM_BUS_FLAG_PIXDATA_NEGEDGE,
 +      DRM_BUS_FLAG_PIXDATA_SAMPLE_NEGEDGE = DRM_BUS_FLAG_PIXDATA_POSEDGE,
 +      DRM_BUS_FLAG_DATA_MSB_TO_LSB = BIT(4),
 +      DRM_BUS_FLAG_DATA_LSB_TO_MSB = BIT(5),
 +      DRM_BUS_FLAG_SYNC_POSEDGE = BIT(6),
 +      DRM_BUS_FLAG_SYNC_NEGEDGE = BIT(7),
 +      DRM_BUS_FLAG_SYNC_DRIVE_POSEDGE = DRM_BUS_FLAG_SYNC_POSEDGE,
 +      DRM_BUS_FLAG_SYNC_DRIVE_NEGEDGE = DRM_BUS_FLAG_SYNC_NEGEDGE,
 +      DRM_BUS_FLAG_SYNC_SAMPLE_POSEDGE = DRM_BUS_FLAG_SYNC_NEGEDGE,
 +      DRM_BUS_FLAG_SYNC_SAMPLE_NEGEDGE = DRM_BUS_FLAG_SYNC_POSEDGE,
 +};
 +
  /**
   * struct drm_display_info - runtime data about the connected sink
   *