Skip to content

Commit 320b164

Browse files
committed
Merge tag 'drm-for-v4.17' of git://people.freedesktop.org/~airlied/linux
Pull drm updates from Dave Airlie: "Cannonlake and Vega12 support are probably the two major things. This pull lacks nouveau, Ben had some unforseen leave and a few other blockers so we'll see how things look or maybe leave it for this merge window. core: - Device links to handle sound/gpu pm dependency - Color encoding/range properties - Plane clipping into plane check helper - Backlight helpers - DP TP4 + HBR3 helper support amdgpu: - Vega12 support - Enable DC by default on all supported GPUs - Powerplay restructuring and cleanup - DC bandwidth calc updates - DC backlight on pre-DCE11 - TTM backing store dropping support - SR-IOV fixes - Adding "wattman" like functionality - DC crc support - Improved DC dual-link handling amdkfd: - GPUVM support for dGPU - KFD events for dGPU - Enable PCIe atomics for dGPUs - HSA process eviction support - Live-lock fixes for process eviction - VM page table allocation fix for large-bar systems panel: - Raydium RM68200 - AUO G104SN02 V2 - KEO TX31D200VM0BAA - ARM Versatile panels i915: - Cannonlake support enabled - AUX-F port support added - Icelake base enabling until internal milestone of forcewake support - Query uAPI interface (used for GPU topology information currently) - Compressed framebuffer support for sprites - kmem cache shrinking when GPU is idle - Avoid boosting GPU when waited item is being processed already - Avoid retraining LSPCON link unnecessarily - Decrease request signaling latency - Deprecation of I915_SET_COLORKEY_NONE - Kerneldoc and compiler warning cleanup for upcoming CI enforcements - Full range ycbcr toggling - HDCP support i915/gvt: - Big refactor for shadow ppgtt - KBL context save/restore via LRI cmd (Weinan) - Properly unmap dma for guest page (Changbin) vmwgfx: - Lots of various improvements etnaviv: - Use the drm gpu scheduler - prep work for GC7000L support vc4: - fix alpha blending - Expose perf counters to userspace pl111: - Bandwidth checking/limiting - Versatile panel support sun4i: - A83T HDMI support - A80 support - YUV plane support - H3/H5 HDMI support omapdrm: - HPD support for DVI connector - remove lots of static variables msm: - DSI updates from 10nm / SDM845 - fix for race condition with a3xx/a4xx fence completion irq - some refactoring/prep work for eventual a6xx support (ie. when we have a userspace) - a5xx debugfs enhancements - some mdp5 fixes/cleanups to prepare for eventually merging writeback - support (ie. when we have a userspace) tegra: - mmap() fixes for fbdev devices - Overlay plane for hw cursor fix - dma-buf cache maintenance support mali-dp: - YUV->RGB conversion support rockchip: - rk3399/chromebook fixes and improvements rcar-du: - LVDS support move to drm bridge - DT bindings for R8A77995 - Driver/DT support for R8A77970 tilcdc: - DRM panel support" * tag 'drm-for-v4.17' of git://people.freedesktop.org/~airlied/linux: (1646 commits) drm/i915: Fix hibernation with ACPI S0 target state drm/i915/execlists: Use a locked clear_bit() for synchronisation with interrupt drm/i915: Specify which engines to reset following semaphore/event lockups drm/i915/dp: Write to SET_POWER dpcd to enable MST hub. drm/amdkfd: Use ordered workqueue to restore processes drm/amdgpu: Fix acquiring VM on large-BAR systems drm/amd/pp: clean header file hwmgr.h drm/amd/pp: use mlck_table.count for array loop index limit drm: Fix uabi regression by allowing garbage mode->type from userspace drm/amdgpu: Add an ATPX quirk for hybrid laptop drm/amdgpu: fix spelling mistake: "asssert" -> "assert" drm/amd/pp: Add new asic support in pp_psm.c drm/amd/pp: Clean up powerplay code on Vega12 drm/amd/pp: Add smu irq handlers for legacy asics drm/amd/pp: Fix set wrong temperature range on smu7 drm/amdgpu: Don't change preferred domian when fallback GTT v5 drm/vmwgfx: Bump version patchlevel and date drm/vmwgfx: use monotonic event timestamps drm/vmwgfx: Unpin the screen object backup buffer when not used drm/vmwgfx: Stricter count of legacy surface device resources ...
2 parents 0adb328 + 694f54f commit 320b164

File tree

1,062 files changed

+144461
-38059
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,062 files changed

+144461
-38059
lines changed
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
Renesas R-Car LVDS Encoder
2+
==========================
3+
4+
These DT bindings describe the LVDS encoder embedded in the Renesas R-Car
5+
Gen2, R-Car Gen3 and RZ/G SoCs.
6+
7+
Required properties:
8+
9+
- compatible : Shall contain one of
10+
- "renesas,r8a7743-lvds" for R8A7743 (RZ/G1M) compatible LVDS encoders
11+
- "renesas,r8a7790-lvds" for R8A7790 (R-Car H2) compatible LVDS encoders
12+
- "renesas,r8a7791-lvds" for R8A7791 (R-Car M2-W) compatible LVDS encoders
13+
- "renesas,r8a7793-lvds" for R8A7793 (R-Car M2-N) compatible LVDS encoders
14+
- "renesas,r8a7795-lvds" for R8A7795 (R-Car H3) compatible LVDS encoders
15+
- "renesas,r8a7796-lvds" for R8A7796 (R-Car M3-W) compatible LVDS encoders
16+
- "renesas,r8a77970-lvds" for R8A77970 (R-Car V3M) compatible LVDS encoders
17+
- "renesas,r8a77995-lvds" for R8A77995 (R-Car D3) compatible LVDS encoders
18+
19+
- reg: Base address and length for the memory-mapped registers
20+
- clocks: A phandle + clock-specifier pair for the functional clock
21+
- resets: A phandle + reset specifier for the module reset
22+
23+
Required nodes:
24+
25+
The LVDS encoder has two video ports. Their connections are modelled using the
26+
OF graph bindings specified in Documentation/devicetree/bindings/graph.txt.
27+
28+
- Video port 0 corresponds to the parallel RGB input
29+
- Video port 1 corresponds to the LVDS output
30+
31+
Each port shall have a single endpoint.
32+
33+
34+
Example:
35+
36+
lvds0: lvds@feb90000 {
37+
compatible = "renesas,r8a7790-lvds";
38+
reg = <0 0xfeb90000 0 0x1c>;
39+
clocks = <&cpg CPG_MOD 726>;
40+
resets = <&cpg 726>;
41+
42+
ports {
43+
#address-cells = <1>;
44+
#size-cells = <0>;
45+
46+
port@0 {
47+
reg = <0>;
48+
lvds0_in: endpoint {
49+
remote-endpoint = <&du_out_lvds0>;
50+
};
51+
};
52+
port@1 {
53+
reg = <1>;
54+
lvds0_out: endpoint {
55+
};
56+
};
57+
};
58+
};

Documentation/devicetree/bindings/display/bridge/ti,ths8135.txt renamed to Documentation/devicetree/bindings/display/bridge/ti,ths813x.txt

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,16 @@
1-
THS8135 Video DAC
2-
-----------------
1+
THS8134 and THS8135 Video DAC
2+
-----------------------------
33

4-
This is the binding for Texas Instruments THS8135 Video DAC bridge.
4+
This is the binding for Texas Instruments THS8134, THS8134A, THS8134B and
5+
THS8135 Video DAC bridges.
56

67
Required properties:
78

8-
- compatible: Must be "ti,ths8135"
9+
- compatible: Must be one of
10+
"ti,ths8134"
11+
"ti,ths8134a," "ti,ths8134"
12+
"ti,ths8134b", "ti,ths8134"
13+
"ti,ths8135"
914

1015
Required nodes:
1116

Documentation/devicetree/bindings/display/connector/dvi-connector.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ Optional properties:
1010
- analog: the connector has DVI analog pins
1111
- digital: the connector has DVI digital pins
1212
- dual-link: the connector has pins for DVI dual-link
13+
- hpd-gpios: HPD GPIO number
1314

1415
Required nodes:
1516
- Video port for DVI input

Documentation/devicetree/bindings/display/etnaviv/etnaviv-drm.txt

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,3 @@
1-
Etnaviv DRM master device
2-
=========================
3-
4-
The Etnaviv DRM master device is a virtual device needed to list all
5-
Vivante GPU cores that comprise the GPU subsystem.
6-
7-
Required properties:
8-
- compatible: Should be one of
9-
"fsl,imx-gpu-subsystem"
10-
"marvell,dove-gpu-subsystem"
11-
- cores: Should contain a list of phandles pointing to Vivante GPU devices
12-
13-
example:
14-
15-
gpu-subsystem {
16-
compatible = "fsl,imx-gpu-subsystem";
17-
cores = <&gpu_2d>, <&gpu_3d>;
18-
};
19-
20-
211
Vivante GPU core devices
222
========================
233

@@ -32,7 +12,9 @@ Required properties:
3212
- clocks: should contain one clock for entry in clock-names
3313
see Documentation/devicetree/bindings/clock/clock-bindings.txt
3414
- clock-names:
35-
- "bus": AXI/register clock
15+
- "bus": AXI/master interface clock
16+
- "reg": AHB/slave interface clock
17+
(only required if GPU can gate slave interface independently)
3618
- "core": GPU core clock
3719
- "shader": Shader clock (only required if GPU has feature PIPE_3D)
3820

Documentation/devicetree/bindings/display/msm/dsi.txt

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@ Required properties:
77
- reg: Physical base address and length of the registers of controller
88
- reg-names: The names of register regions. The following regions are required:
99
* "dsi_ctrl"
10-
- qcom,dsi-host-index: The ID of DSI controller hardware instance. This should
11-
be 0 or 1, since we have 2 DSI controllers at most for now.
1210
- interrupts: The interrupt signal from the DSI block.
1311
- power-domains: Should be <&mmcc MDSS_GDSC>.
1412
- clocks: Phandles to device clocks.
@@ -22,6 +20,8 @@ Required properties:
2220
* "core"
2321
For DSIv2, we need an additional clock:
2422
* "src"
23+
For DSI6G v2.0 onwards, we need also need the clock:
24+
* "byte_intf"
2525
- assigned-clocks: Parents of "byte" and "pixel" for the given platform.
2626
- assigned-clock-parents: The Byte clock and Pixel clock PLL outputs provided
2727
by a DSI PHY block. See [1] for details on clock bindings.
@@ -88,21 +88,35 @@ Required properties:
8888
* "qcom,dsi-phy-28nm-lp"
8989
* "qcom,dsi-phy-20nm"
9090
* "qcom,dsi-phy-28nm-8960"
91-
- reg: Physical base address and length of the registers of PLL, PHY and PHY
92-
regulator
91+
* "qcom,dsi-phy-14nm"
92+
* "qcom,dsi-phy-10nm"
93+
- reg: Physical base address and length of the registers of PLL, PHY. Some
94+
revisions require the PHY regulator base address, whereas others require the
95+
PHY lane base address. See below for each PHY revision.
9396
- reg-names: The names of register regions. The following regions are required:
97+
For DSI 28nm HPM/LP/8960 PHYs and 20nm PHY:
9498
* "dsi_pll"
9599
* "dsi_phy"
96100
* "dsi_phy_regulator"
101+
For DSI 14nm and 10nm PHYs:
102+
* "dsi_pll"
103+
* "dsi_phy"
104+
* "dsi_phy_lane"
97105
- clock-cells: Must be 1. The DSI PHY block acts as a clock provider, creating
98106
2 clocks: A byte clock (index 0), and a pixel clock (index 1).
99-
- qcom,dsi-phy-index: The ID of DSI PHY hardware instance. This should
100-
be 0 or 1, since we have 2 DSI PHYs at most for now.
101107
- power-domains: Should be <&mmcc MDSS_GDSC>.
102108
- clocks: Phandles to device clocks. See [1] for details on clock bindings.
103109
- clock-names: the following clocks are required:
104110
* "iface"
111+
For 28nm HPM/LP, 28nm 8960 PHYs:
112+
- vddio-supply: phandle to vdd-io regulator device node
113+
For 20nm PHY:
105114
- vddio-supply: phandle to vdd-io regulator device node
115+
- vcca-supply: phandle to vcca regulator device node
116+
For 14nm PHY:
117+
- vcca-supply: phandle to vcca regulator device node
118+
For 10nm PHY:
119+
- vdds-supply: phandle to vdds regulator device node
106120

107121
Optional properties:
108122
- qcom,dsi-phy-regulator-ldo-mode: Boolean value indicating if the LDO mode PHY
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
ARM Versatile TFT Panels
2+
3+
These panels are connected to the daughterboards found on the
4+
ARM Versatile reference designs.
5+
6+
This device node must appear as a child to a "syscon"-compatible
7+
node.
8+
9+
Required properties:
10+
- compatible: should be "arm,versatile-tft-panel"
11+
12+
Required subnodes:
13+
- port: see display/panel/panel-common.txt, graph.txt
14+
15+
16+
Example:
17+
18+
sysreg@0 {
19+
compatible = "arm,versatile-sysreg", "syscon", "simple-mfd";
20+
reg = <0x00000 0x1000>;
21+
22+
panel: display@0 {
23+
compatible = "arm,versatile-tft-panel";
24+
25+
port {
26+
panel_in: endpoint {
27+
remote-endpoint = <&foo>;
28+
};
29+
};
30+
};
31+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
AU Optronics Corporation 10.4" (800x600) color TFT LCD panel
2+
3+
Required properties:
4+
- compatible: should be "auo,g104sn02"
5+
- power-supply: as specified in the base binding
6+
7+
Optional properties:
8+
- backlight: as specified in the base binding
9+
- enable-gpios: as specified in the base binding
10+
11+
This binding is compatible with the simple-panel binding, which is specified
12+
in simple-panel.txt in this directory.

Documentation/devicetree/bindings/display/panel/display-timing.txt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,11 @@ The parameters are defined as:
8080
| | v | | |
8181
+----------+-------------------------------------+----------+-------+
8282

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

8590
display-timings {
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
Kaohsiung Opto-Electronics. TX31D200VM0BAA 12.3" HSXGA LVDS panel
2+
3+
This binding is compatible with the simple-panel binding, which is specified
4+
in simple-panel.txt in this directory.
5+
6+
Required properties:
7+
- compatible: should be "koe,tx31d200vm0baa"
8+
9+
Optional properties:
10+
- backlight: phandle of the backlight device attached to the panel
11+
12+
Optional nodes:
13+
- Video port for LVDS panel input.
14+
15+
Example:
16+
panel {
17+
compatible = "koe,tx31d200vm0baa";
18+
backlight = <&backlight_lvds>;
19+
20+
port {
21+
panel_in: endpoint {
22+
remote-endpoint = <&lvds0_out>;
23+
};
24+
};
25+
};

Documentation/devicetree/bindings/display/panel/orisetech,otm8009a.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ Required properties:
99

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

1314
Example:
1415
&dsi {
@@ -17,5 +18,6 @@ Example:
1718
compatible = "orisetech,otm8009a";
1819
reg = <0>;
1920
reset-gpios = <&gpioh 7 GPIO_ACTIVE_LOW>;
21+
power-supply = <&v1v8>;
2022
};
2123
};

0 commit comments

Comments
 (0)