Skip to content

Commit

Permalink
Merge tag 'drm-misc-next-2018-03-21' of git://anongit.freedesktop.org…
Browse files Browse the repository at this point in the history
…/drm/drm-misc into drm-next

drm-misc-next for 4.17:

Cross-subsystem Changes:
 dt-bindings: Add emtrion vendor prefix (Jan)

Core Changes:
 drm_print: More object size reductions (Joe)

Driver Changes:
 vc4: Fix alpha blending on bottom plane (Stefan)
 panel: Add Raydium RM68200 panel support (Phillipe)
 panel: Add AUO G104SN02 V2 panel support (Christoph)
 panel: Add KEO TX31D200VM0BAA panel support (Jagan)
 vga_switcheroo: Use device link to bookkeep HDA runtime pm (Lukas)
 rockchip: More CrOS kevin patches trickling in (various
 sun4i: Add A80 support (Chen-Yu)
 sun4i: Add YUV plane support (Maxime)
 meson: Multiple (mostly error-path) fixups (Christophe/Wei)

Cc: Stefan Schake <stschake@gmail.com>
Cc: Philippe CORNU <philippe.cornu@st.com>
Cc: jan.tuerk@emtrion.com
Cc: Christoph Fritz <chf.fritz@googlemail.com>
Cc: Jagan Teki <jagannadh.teki@gmail.com>
Cc: Lukas Wunner <lukas@wunner.de>
Cc: Joe Perches <joe@perches.com>
Cc: Chen-Yu Tsai <wens@csie.org>
Cc: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Cc: Wei Yongjun <weiyongjun1@huawei.com>

* tag 'drm-misc-next-2018-03-21' of git://anongit.freedesktop.org/drm/drm-misc: (70 commits)
  drm/qxl: Replace drm_gem_object_reference/unreference() with _get/put()
  drm/meson: Fix potential NULL dereference in meson_drv_bind_master()
  drm/sun4i: backend: Support YUV planes
  drm/sun4i: backend: Check that we only have a single YUV plane
  drm/sun4i: Add driver support for A80 display pipeline
  drm/sun4i: Add compatible strings for the A80 display pipeline
  drm/sun4i: Add support for A80 TCONs
  drm/sun4i: Add DT binding for Detail Enhancement Unit in Allwinner A80 SoC
  drm/sun4i: Add compatible strings for A80 TCONs
  drm: Reduce object size of DRM_DEV_<LEVEL> uses
  drm/doc: Put all driver docs into a separate chapter
  drm: dma_bufs: Fixed checkpatch issues
  drm: remove drm_mode_object_{un/reference} aliases
  drm: Add PSR version 3 macro
  drm/vc4_validate: Remove VLA usage
  drm: Make drm_mode_vrefresh() a bit more accurate
  drm: Nuke the useless 'ret' variable from drm_mode_convert_umode()
  drm/i915: Use drm_color_lut_size()
  drm/i915: Remove the blob->data casts
  drm: Introduce drm_color_lut_size()
  ...
  • Loading branch information
Dave Airlie committed Mar 21, 2018
2 parents 78230c4 + 1c7095d commit 0c5286a
Show file tree
Hide file tree
Showing 85 changed files with 2,218 additions and 642 deletions.
12 changes: 12 additions & 0 deletions Documentation/devicetree/bindings/display/panel/auo,g104sn02.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
AU Optronics Corporation 10.4" (800x600) color TFT LCD panel

Required properties:
- compatible: should be "auo,g104sn02"
- power-supply: as specified in the base binding

Optional properties:
- backlight: as specified in the base binding
- enable-gpios: as specified in the base binding

This binding is compatible with the simple-panel binding, which is specified
in simple-panel.txt in this directory.
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,11 @@ The parameters are defined as:
| | v | | |
+----------+-------------------------------------+----------+-------+

Note: In addition to being used as subnode(s) of display-timings, the timing
subnode may also be used on its own. This is appropriate if only one mode
need be conveyed. In this case, the node should be named 'panel-timing'.


Example:

display-timings {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
Kaohsiung Opto-Electronics. TX31D200VM0BAA 12.3" HSXGA LVDS panel

This binding is compatible with the simple-panel binding, which is specified
in simple-panel.txt in this directory.

Required properties:
- compatible: should be "koe,tx31d200vm0baa"

Optional properties:
- backlight: phandle of the backlight device attached to the panel

Optional nodes:
- Video port for LVDS panel input.

Example:
panel {
compatible = "koe,tx31d200vm0baa";
backlight = <&backlight_lvds>;

port {
panel_in: endpoint {
remote-endpoint = <&lvds0_out>;
};
};
};
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ Required properties:

Optional properties:
- reset-gpios: a GPIO spec for the reset pin (active low).
- power-supply: phandle of the regulator that provides the supply voltage.

Example:
&dsi {
Expand All @@ -17,5 +18,6 @@ Example:
compatible = "orisetech,otm8009a";
reg = <0>;
reset-gpios = <&gpioh 7 GPIO_ACTIVE_LOW>;
power-supply = <&v1v8>;
};
};
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
Raydium Semiconductor Corporation RM68200 5.5" 720p MIPI-DSI TFT LCD panel

The Raydium Semiconductor Corporation RM68200 is a 5.5" 720x1280 TFT LCD
panel connected using a MIPI-DSI video interface.

Required properties:
- compatible: "raydium,rm68200"
- reg: the virtual channel number of a DSI peripheral

Optional properties:
- reset-gpios: a GPIO spec for the reset pin (active low).
- power-supply: phandle of the regulator that provides the supply voltage.
- backlight: phandle of the backlight device attached to the panel.

Example:
&dsi {
...
panel@0 {
compatible = "raydium,rm68200";
reg = <0>;
reset-gpios = <&gpiof 15 GPIO_ACTIVE_LOW>;
power-supply = <&v1v8>;
backlight = <&pwm_backlight>;
};
};
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
Simple display panel
====================

panel node
----------

Required properties:
- power-supply: See panel-common.txt
Expand Down
39 changes: 35 additions & 4 deletions Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt
Original file line number Diff line number Diff line change
Expand Up @@ -146,13 +146,16 @@ Required properties:
* allwinner,sun8i-a83t-tcon-lcd
* allwinner,sun8i-a83t-tcon-tv
* allwinner,sun8i-v3s-tcon
* allwinner,sun9i-a80-tcon-lcd
* allwinner,sun9i-a80-tcon-tv
- reg: base address and size of memory-mapped region
- interrupts: interrupt associated to this IP
- clocks: phandles to the clocks feeding the TCON.
- 'ahb': the interface clocks
- 'tcon-ch0': The clock driving the TCON channel 0, except for A83T TV TCON
- 'tcon-ch0': The clock driving the TCON channel 0, if supported
- resets: phandles to the reset controllers driving the encoder
- "lcd": the reset line for the TCON channel 0
- "lcd": the reset line for the TCON
- "edp": the reset line for the eDP block (A80 only)

- clock-names: the clock names mentioned above
- reset-names: the reset names mentioned above
Expand All @@ -171,7 +174,9 @@ Required properties:
channel the endpoint is associated to. If that property is not
present, the endpoint number will be used as the channel number.

On SoCs other than the A33 and V3s, there is one more clock required:
For TCONs with channel 0, there is one more clock required:
- 'tcon-ch0': The clock driving the TCON channel 0
For TCONs with channel 1, there is one more clock required:
- 'tcon-ch1': The clock driving the TCON channel 1

When TCON support LVDS (all TCONs except TV TCON on A83T and those found
Expand All @@ -186,7 +191,7 @@ DRC
---

The DRC (Dynamic Range Controller), found in the latest Allwinner SoCs
(A31, A23, A33), allows to dynamically adjust pixel
(A31, A23, A33, A80), allows to dynamically adjust pixel
brightness/contrast based on histogram measurements for LCD content
adaptive backlight control.

Expand All @@ -196,6 +201,7 @@ Required properties:
* allwinner,sun6i-a31-drc
* allwinner,sun6i-a31s-drc
* allwinner,sun8i-a33-drc
* allwinner,sun9i-a80-drc
- reg: base address and size of the memory-mapped region.
- interrupts: interrupt associated to this IP
- clocks: phandles to the clocks feeding the DRC
Expand All @@ -222,6 +228,7 @@ Required properties:
* allwinner,sun6i-a31-display-backend
* allwinner,sun7i-a20-display-backend
* allwinner,sun8i-a33-display-backend
* allwinner,sun9i-a80-display-backend
- reg: base address and size of the memory-mapped region.
- interrupts: interrupt associated to this IP
- clocks: phandles to the clocks feeding the frontend and backend
Expand All @@ -243,6 +250,28 @@ On the A33, some additional properties are required:
- resets and reset-names need to have a phandle to the SAT bus
resets, whose name will be "sat"

DEU
---

The DEU (Detail Enhancement Unit), found in the Allwinner A80 SoC,
can sharpen the display content in both luma and chroma channels.

Required properties:
- compatible: value must be one of:
* allwinner,sun9i-a80-deu
- reg: base address and size of the memory-mapped region.
- interrupts: interrupt associated to this IP
- clocks: phandles to the clocks feeding the DEU
* ahb: the DEU interface clock
* mod: the DEU module clock
* ram: the DEU DRAM clock
- clock-names: the clock names mentioned above
- resets: phandles to the reset line driving the DEU

- ports: A ports node with endpoint definitions as defined in
Documentation/devicetree/bindings/media/video-interfaces.txt. The
first port should be the input endpoints, the second one the outputs

Display Engine Frontend
-----------------------

Expand All @@ -256,6 +285,7 @@ Required properties:
* allwinner,sun6i-a31-display-frontend
* allwinner,sun7i-a20-display-frontend
* allwinner,sun8i-a33-display-frontend
* allwinner,sun9i-a80-display-frontend
- reg: base address and size of the memory-mapped region.
- interrupts: interrupt associated to this IP
- clocks: phandles to the clocks feeding the frontend and backend
Expand Down Expand Up @@ -312,6 +342,7 @@ Required properties:
* allwinner,sun8i-a83t-display-engine
* allwinner,sun8i-h3-display-engine
* allwinner,sun8i-v3s-display-engine
* allwinner,sun9i-a80-display-engine

- allwinner,pipelines: list of phandle to the display engine
frontends (DE 1.0) or mixers (DE 2.0) available.
Expand Down
1 change: 1 addition & 0 deletions Documentation/devicetree/bindings/vendor-prefixes.txt
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,7 @@ eeti eGalax_eMPIA Technology Inc
elan Elan Microelectronic Corp.
embest Shenzhen Embest Technology Co., Ltd.
emmicro EM Microelectronic
emtrion emtrion GmbH
energymicro Silicon Laboratories (formerly Energy Micro AS)
engicam Engicam S.r.l.
epcos EPCOS AG
Expand Down
21 changes: 21 additions & 0 deletions Documentation/gpu/drivers.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
========================
GPU Driver Documentation
========================

.. toctree::

i915
meson
pl111
tegra
tinydrm
tve200
vc4
bridge/dw-hdmi

.. only:: subproject and html

Indices
=======

* :ref:`genindex`
3 changes: 3 additions & 0 deletions Documentation/gpu/drm-kms.rst
Original file line number Diff line number Diff line change
Expand Up @@ -286,6 +286,9 @@ Atomic Mode Setting Function Reference
.. kernel-doc:: drivers/gpu/drm/drm_atomic.c
:export:

.. kernel-doc:: drivers/gpu/drm/drm_atomic.c
:internal:

CRTC Abstraction
================

Expand Down
9 changes: 1 addition & 8 deletions Documentation/gpu/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,16 +10,9 @@ Linux GPU Driver Developer's Guide
drm-kms
drm-kms-helpers
drm-uapi
i915
meson
pl111
tegra
tinydrm
tve200
vc4
drivers
vga-switcheroo
vgaarbiter
bridge/dw-hdmi
todo

.. only:: subproject and html
Expand Down
2 changes: 0 additions & 2 deletions drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
Original file line number Diff line number Diff line change
Expand Up @@ -738,7 +738,6 @@ static int amdgpu_pmops_runtime_suspend(struct device *dev)

drm_dev->switch_power_state = DRM_SWITCH_POWER_CHANGING;
drm_kms_helper_poll_disable(drm_dev);
vga_switcheroo_set_dynamic_switch(pdev, VGA_SWITCHEROO_OFF);

ret = amdgpu_device_suspend(drm_dev, false, false);
pci_save_state(pdev);
Expand Down Expand Up @@ -775,7 +774,6 @@ static int amdgpu_pmops_runtime_resume(struct device *dev)

ret = amdgpu_device_resume(drm_dev, false, false);
drm_kms_helper_poll_enable(drm_dev);
vga_switcheroo_set_dynamic_switch(pdev, VGA_SWITCHEROO_ON);
drm_dev->switch_power_state = DRM_SWITCH_POWER_ON;
return 0;
}
Expand Down
Loading

0 comments on commit 0c5286a

Please sign in to comment.