Commit 8716ae72 authored by Rodrigo Vivi's avatar Rodrigo Vivi
Browse files

Merge drm/drm-next into drm-intel-next-queued



A backmerge to unblock gen8+ semaphores.

Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
parents 968bf969 f91168f4
Loading
Loading
Loading
Loading
+4 −8
Original line number Diff line number Diff line
@@ -22,13 +22,11 @@ among others.

Required properties:

- 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
- compatible: Must be "lvds-encoder"

  When compatible with the generic version, nodes must list the
  device-specific version corresponding to the device first
  followed by the generic version.
  Any encoder compatible with this generic binding, but with additional
  properties not listed here, must list a device specific compatible first
  followed by this generic compatible.

Required nodes:

@@ -44,8 +42,6 @@ Example

lvds-encoder {
	compatible = "lvds-encoder";
	#address-cells = <1>;
	#size-cells = <0>;

	ports {
		#address-cells = <1>;
+1 −1
Original line number Diff line number Diff line
@@ -10,7 +10,7 @@ Required properties:

Optional properties:

- pwdn-gpios: Power down control GPIO
- powerdown-gpios: Power down control GPIO (the /PWDN pin, active low).

Required nodes:

+55 −0
Original line number Diff line number Diff line
Texas Instruments FPD-Link (LVDS) Serializer
--------------------------------------------

The DS90C185 and DS90C187 are low-power serializers for portable
battery-powered applications that reduces the size of the RGB
interface between the host GPU and the display.

Required properties:

- compatible: Should be
  "ti,ds90c185", "lvds-encoder"  for the TI DS90C185 FPD-Link Serializer
  "ti,ds90c187", "lvds-encoder"  for the TI DS90C187 FPD-Link Serializer

Optional properties:

- powerdown-gpios: Power down control GPIO (the PDB pin, active-low)

Required nodes:

The devices have two video ports. Their connections are modeled using the OF
graph bindings specified in Documentation/devicetree/bindings/graph.txt.

- Video port 0 for parallel input
- Video port 1 for LVDS output


Example
-------

lvds-encoder {
	compatible = "ti,ds90c185", "lvds-encoder";

	powerdown-gpios = <&gpio 17 GPIO_ACTIVE_LOW>;

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

		port@0 {
			reg = <0>;

			lvds_enc_in: endpoint {
				remote-endpoint = <&lcdc_out_rgb>;
			};
		};

		port@1 {
			reg = <1>;

			lvds_enc_out: endpoint {
				remote-endpoint = <&lvds_panel_in>;
			};
		};
	};
};
+0 −35
Original line number Diff line number Diff line
@@ -82,30 +82,6 @@ events for atomic commits correctly. But fixing these bugs is good anyway.

Contact: Daniel Vetter, respective driver maintainers

Better manual-upload support for atomic
---------------------------------------

This would be especially useful for tinydrm:

- Add a struct drm_rect dirty_clip to drm_crtc_state. When duplicating the
  crtc state, clear that to the max values, x/y = 0 and w/h = MAX_INT, in
  __drm_atomic_helper_crtc_duplicate_state().

- Move tinydrm_merge_clips into drm_framebuffer.c, dropping the tinydrm\_
  prefix ofc and using drm_fb\_. drm_framebuffer.c makes sense since this
  is a function useful to implement the fb->dirty function.

- Create a new drm_fb_dirty function which does essentially what e.g.
  mipi_dbi_fb_dirty does. You can use e.g. drm_atomic_helper_update_plane as the
  template. But instead of doing a simple full-screen plane update, this new
  helper also sets crtc_state->dirty_clip to the right coordinates. And of
  course it needs to check whether the fb is actually active (and maybe where),
  so there's some book-keeping involved. There's also some good fun involved in
  scaling things appropriately. For that case we might simply give up and
  declare the entire area covered by the plane as dirty.

Contact: Noralf Trønnes, Daniel Vetter

Fallout from atomic KMS
-----------------------

@@ -459,21 +435,10 @@ those drivers as simple as possible, so lots of room for refactoring:
  one of the ideas for having a shared dsi/dbi helper, abstracting away the
  transport details more.

- tinydrm_gem_cma_prime_import_sg_table should probably go into the cma
  helpers, as a _vmapped variant (since not every driver needs the vmap).
  And tinydrm_gem_cma_free_object could the be merged into
  drm_gem_cma_free_object().

- tinydrm_fb_create we could move into drm_simple_pipe, only need to add
  the fb_create hook to drm_simple_pipe_funcs, which would again simplify a
  bunch of things (since it gives you a one-stop vfunc for simple drivers).

- Quick aside: The unregister devm stuff is kinda getting the lifetimes of
  a drm_device wrong. Doesn't matter, since everyone else gets it wrong
  too :-)

- also rework the drm_framebuffer_funcs->dirty hook wire-up, see above.

Contact: Noralf Trønnes, Daniel Vetter

AMD DC Display Driver
+0 −4
Original line number Diff line number Diff line
@@ -170,10 +170,6 @@ config DRM_KMS_CMA_HELPER
	bool
	depends on DRM
	select DRM_GEM_CMA_HELPER
	select DRM_KMS_FB_HELPER
	select FB_SYS_FILLRECT
	select FB_SYS_COPYAREA
	select FB_SYS_IMAGEBLIT
	help
	  Choose this if you need the KMS CMA helper functions

Loading