Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 53b3b6bb authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'drm-next-2018-10-24' of git://anongit.freedesktop.org/drm/drm

Pull drm updates from Dave Airlie:
 "This is going to rebuild more than drm as it adds a new helper to
  list.h for doing bulk updates. Seemed like a reasonable addition to
  me.

  Otherwise the usual merge window stuff lots of i915 and amdgpu, not so
  much nouveau, and piles of everything else.

  Core:
   - Adds a new list.h helper for doing bulk list updates for TTM.
   - Don't leak fb address in smem_start to userspace (comes with EXPORT
     workaround for people using mali out of tree hacks)
   - udmabuf device to turn memfd regions into dma-buf
   - Per-plane blend mode property
   - ref/unref replacements with get/put
   - fbdev conflicting framebuffers code cleaned up
   - host-endian format variants
   - panel orientation quirk for Acer One 10

  bridge:
   - TI SN65DSI86 chip support

  vkms:
   - GEM support.
   - Cursor support

  amdgpu:
   - Merge amdkfd and amdgpu into one module
   - CEC over DP AUX support
   - Picasso APU support + VCN dynamic powergating
   - Raven2 APU support
   - Vega20 enablement + kfd support
   - ACP powergating improvements
   - ABGR/XBGR display support
   - VCN jpeg support
   - xGMI support
   - DC i2c/aux cleanup
   - Ycbcr 4:2:0 support
   - GPUVM improvements
   - Powerplay and powerplay endian fixes
   - Display underflow fixes

  vmwgfx:
   - Move vmwgfx specific TTM code to vmwgfx
   - Split out vmwgfx buffer/resource validation code
   - Atomic operation rework

  bochs:
   - use more helpers
   - format/byteorder improvements

  qxl:
   - use more helpers

  i915:
   - GGTT coherency getparam
   - Turn off resource streamer API
   - More Icelake enablement + DMC firmware
   - Full PPGTT for Ivybridge, Haswell and Valleyview
   - DDB distribution based on resolution
   - Limited range DP display support

  nouveau:
   - CEC over DP AUX support
   - Initial HDMI 2.0 support

  virtio-gpu:
   - vmap support for PRIME objects

  tegra:
   - Initial Tegra194 support
   - DMA/IOMMU integration fixes

  msm:
   - a6xx perf improvements + clock prefix
   - GPU preemption optimisations
   - a6xx devfreq support
   - cursor support

  rockchip:
   - PX30 support
   - rgb output interface support

  mediatek:
   - HDMI output support on mt2701 and mt7623

  rcar-du:
   - Interlaced modes on Gen3
   - LVDS on R8A77980
   - D3 and E3 SoC support

  hisilicon:
   - misc fixes

  mxsfb:
   - runtime pm support

  sun4i:
   - R40 TCON support
   - Allwinner A64 support
   - R40 HDMI support

  omapdrm:
   - Driver rework changing display pipeline ordering to use common code
   - DMM memory barrier and irq fixes
   - Errata workarounds

  exynos:
   - out-bridge support for LVDS bridge driver
   - Samsung 16x16 tiled format support
   - Plane alpha and pixel blend mode support

  tilcdc:
   - suspend/resume update

  mali-dp:
   - misc updates"

* tag 'drm-next-2018-10-24' of git://anongit.freedesktop.org/drm/drm: (1382 commits)
  firmware/dmc/icl: Add missing MODULE_FIRMWARE() for Icelake.
  drm/i915/icl: Fix signal_levels
  drm/i915/icl: Fix DDI/TC port clk_off bits
  drm/i915/icl: create function to identify combophy port
  drm/i915/gen9+: Fix initial readout for Y tiled framebuffers
  drm/i915: Large page offsets for pread/pwrite
  drm/i915/selftests: Disable shrinker across mmap-exhaustion
  drm/i915/dp: Link train Fallback on eDP only if fallback link BW can fit panel's native mode
  drm/i915: Fix intel_dp_mst_best_encoder()
  drm/i915: Skip vcpi allocation for MSTB ports that are gone
  drm/i915: Don't unset intel_connector->mst_port
  drm/i915: Only reset seqno if actually idle
  drm/i915: Use the correct crtc when sanitizing plane mapping
  drm/i915: Restore vblank interrupts earlier
  drm/i915: Check fb stride against plane max stride
  drm/amdgpu/vcn:Fix uninitialized symbol error
  drm: panel-orientation-quirks: Add quirk for Acer One 10 (S1003)
  drm/amd/amdgpu: Fix debugfs error handling
  drm/amdgpu: Update gc_9_0 golden settings.
  drm/amd/powerplay: update PPtable with DC BTC and Tvr SocLimit fields
  ...
parents 746bb4ed f2bfc71a
Loading
Loading
Loading
Loading
+23 −0
Original line number Diff line number Diff line
@@ -15,6 +15,13 @@ Required children nodes:
 to external devices using the OF graph reprensentation (see ../graph.txt).
 At least one port node is required.

Optional properties in grandchild nodes:
 Any endpoint grandchild node may specify a desired video interface
 according to ../../media/video-interfaces.txt, specifically
 - bus-width: recognized values are <12>, <16>, <18> and <24>, and
   override any output mode selection heuristic, forcing "rgb444",
   "rgb565", "rgb666" and "rgb888" respectively.

Example:

	hlcdc: hlcdc@f0030000 {
@@ -50,3 +57,19 @@ Example:
			#pwm-cells = <3>;
		};
	};

Example 2: With a video interface override to force rgb565; as above
but with these changes/additions:

	&hlcdc {
		hlcdc-display-controller {
			pinctrl-names = "default";
			pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb565>;

			port@0 {
				hlcdc_panel_output: endpoint@0 {
					bus-width = <16>;
				};
			};
		};
	};
+7 −1
Original line number Diff line number Diff line
@@ -22,7 +22,13 @@ among others.

Required properties:

- compatible: Must be "lvds-encoder"
- compatible: Must be one or more of the following
  - "ti,ds90c185" for the TI DS90C185 FPD-Link Serializer
  - "lvds-encoder" for a generic LVDS encoder device

  When compatible with the generic version, nodes must list the
  device-specific version corresponding to the device first
  followed by the generic version.

Required nodes:

+13 −1
Original line number Diff line number Diff line
@@ -14,10 +14,22 @@ Required properties:
  - "renesas,r8a7795-lvds" for R8A7795 (R-Car H3) compatible LVDS encoders
  - "renesas,r8a7796-lvds" for R8A7796 (R-Car M3-W) compatible LVDS encoders
  - "renesas,r8a77970-lvds" for R8A77970 (R-Car V3M) compatible LVDS encoders
  - "renesas,r8a77980-lvds" for R8A77980 (R-Car V3H) compatible LVDS encoders
  - "renesas,r8a77990-lvds" for R8A77990 (R-Car E3) compatible LVDS encoders
  - "renesas,r8a77995-lvds" for R8A77995 (R-Car D3) compatible LVDS encoders

- reg: Base address and length for the memory-mapped registers
- clocks: A phandle + clock-specifier pair for the functional clock
- clocks: A list of phandles + clock-specifier pairs, one for each entry in
  the clock-names property.
- clock-names: Name of the clocks. This property is model-dependent.
  - The functional clock, which mandatory for all models, shall be listed
    first, and shall be named "fck".
  - On R8A77990 and R8A77995, the LVDS encoder can use the EXTAL or
    DU_DOTCLKINx clocks. Those clocks are optional. When supplied they must be
    named "extal" and "dclkin.x" respectively, with "x" being the DU_DOTCLKIN
    numerical index.
  - When the clocks property only contains the functional clock, the
    clock-names property may be omitted.
- resets: A phandle + reset specifier for the module reset

Required nodes:
+87 −0
Original line number Diff line number Diff line
SN65DSI86 DSI to eDP bridge chip
--------------------------------

This is the binding for Texas Instruments SN65DSI86 bridge.
http://www.ti.com/general/docs/lit/getliterature.tsp?genericPartNumber=sn65dsi86&fileType=pdf

Required properties:
- compatible: Must be "ti,sn65dsi86"
- reg: i2c address of the chip, 0x2d as per datasheet
- enable-gpios: gpio specification for bridge_en pin (active high)

- vccio-supply: A 1.8V supply that powers up the digital IOs.
- vpll-supply: A 1.8V supply that powers up the displayport PLL.
- vcca-supply: A 1.2V supply that powers up the analog circuits.
- vcc-supply: A 1.2V supply that powers up the digital core.

Optional properties:
- interrupts-extended: Specifier for the SN65DSI86 interrupt line.

- gpio-controller: Marks the device has a GPIO controller.
- #gpio-cells    : Should be two. The first cell is the pin number and
                   the second cell is used to specify flags.
                   See ../../gpio/gpio.txt for more information.
- #pwm-cells : Should be one. See ../../pwm/pwm.txt for description of
               the cell formats.

- clock-names: should be "refclk"
- clocks: Specification for input reference clock. The reference
	  clock rate must be 12 MHz, 19.2 MHz, 26 MHz, 27 MHz or 38.4 MHz.

- data-lanes: See ../../media/video-interface.txt
- lane-polarities: See ../../media/video-interface.txt

- suspend-gpios: specification for GPIO1 pin on bridge (active low)

Required nodes:
This device has two video ports. Their connections are modelled using the
OF graph bindings specified in Documentation/devicetree/bindings/graph.txt.

- Video port 0 for DSI input
- Video port 1 for eDP output

Example
-------

edp-bridge@2d {
	compatible = "ti,sn65dsi86";
	#address-cells = <1>;
	#size-cells = <0>;
	reg = <0x2d>;

	enable-gpios = <&msmgpio 33 GPIO_ACTIVE_HIGH>;
	suspend-gpios = <&msmgpio 34 GPIO_ACTIVE_LOW>;

	interrupts-extended = <&gpio3 4 IRQ_TYPE_EDGE_FALLING>;

	vccio-supply = <&pm8916_l17>;
	vcca-supply = <&pm8916_l6>;
	vpll-supply = <&pm8916_l17>;
	vcc-supply = <&pm8916_l6>;

	clock-names = "refclk";
	clocks = <&input_refclk>;

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

		port@0 {
			reg = <0>;

			edp_bridge_in: endpoint {
				remote-endpoint = <&dsi_out>;
			};
		};

		port@1 {
			reg = <1>;

			edp_bridge_out: endpoint {
				data-lanes = <2 1 3 0>;
				lane-polarities = <0 1 0 1>;
				remote-endpoint = <&edp_panel_in>;
			};
		};
	};
}
+35 −0
Original line number Diff line number Diff line
TC358764 MIPI-DSI to LVDS panel bridge

Required properties:
  - compatible: "toshiba,tc358764"
  - reg: the virtual channel number of a DSI peripheral
  - vddc-supply: core voltage supply, 1.2V
  - vddio-supply: I/O voltage supply, 1.8V or 3.3V
  - vddlvds-supply: LVDS1/2 voltage supply, 3.3V
  - reset-gpios: a GPIO spec for the reset pin

The device node can contain following 'port' child nodes,
according to the OF graph bindings defined in [1]:
  0: DSI Input, not required, if the bridge is DSI controlled
  1: LVDS Output, mandatory

[1]: Documentation/devicetree/bindings/media/video-interfaces.txt

Example:

	bridge@0 {
		reg = <0>;
		compatible = "toshiba,tc358764";
		vddc-supply = <&vcc_1v2_reg>;
		vddio-supply = <&vcc_1v8_reg>;
		vddlvds-supply = <&vcc_3v3_reg>;
		reset-gpios = <&gpd1 6 GPIO_ACTIVE_LOW>;
		#address-cells = <1>;
		#size-cells = <0>;
		port@1 {
			reg = <1>;
			lvds_ep: endpoint {
				remote-endpoint = <&panel_ep>;
			};
		};
	};
Loading