Skip to content

Commit ef96152

Browse files
committed
Merge tag 'drm-for-v4.11-less-shouty' of git://people.freedesktop.org/~airlied/linux
Pull drm updates from Dave Airlie: "This is the main drm pull request for v4.11. Nothing too major, the tinydrm and mmu-less support should make writing smaller drivers easier for some of the simpler platforms, and there are a bunch of documentation updates. Intel grew displayport MST audio support which is hopefully useful to people, and FBC is on by default for GEN9+ (so people know where to look for regressions). AMDGPU has a lot of fixes that would like new firmware files installed for some GPUs. Other than that it's pretty scattered all over. I may have a follow up pull request as I know BenH has a bunch of AST rework and fixes and I'd like to get those in once they've been tested by AST, and I've got at least one pull request I'm just trying to get the author to fix up. Core: - drm_mm reworked - Connector list locking and iterators - Documentation updates - Format handling rework - MMU-less support for fbdev helpers - drm_crtc_from_index helper - Core CRC API - Remove drm_framebuffer_unregister_private - Debugfs cleanup - EDID/Infoframe fixes - Release callback - Tinydrm support (smaller drivers for simple hw) panel: - Add support for some new simple panels i915: - FBC by default for gen9+ - Shared dpll cleanups and docs - GEN8 powerdomain cleanup - DMC support on GLK - DP MST audio support - HuC loading support - GVT init ordering fixes - GVT IOMMU workaround fix amdgpu/radeon: - Power/clockgating improvements - Preliminary SR-IOV support - TTM buffer priority and eviction fixes - SI DPM quirks removed due to firmware fixes - Powerplay improvements - VCE/UVD powergating fixes - Cleanup SI GFX code to match CI/VI - Support for > 2 displays on 3/5 crtc asics - SI headless fixes nouveau: - Rework securre boot code in prep for GP10x secure boot - Channel recovery improvements - Initial power budget code - MMU rework preperation vmwgfx: - Bunch of fixes and cleanups exynos: - Runtime PM support for MIC driver - Cleanups to use atomic helpers - UHD Support for TM2/TM2E boards - Trigger mode fix for Rinato board etnaviv: - Shader performance fix - Command stream validator fixes - Command buffer suballocator rockchip: - CDN DisplayPort support - IOMMU support for arm64 platform imx-drm: - Fix i.MX5 TV encoder probing - Remove lower fb size limits msm: - Support for HW cursor on MDP5 devices - DSI encoder cleanup - GPU DT bindings cleanup sti: - stih410 cleanups - Create fbdev at binding - HQVDP fixes - Remove stih416 chip functionality - DVI/HDMI mode selection fixes - FPS statistic reporting omapdrm: - IRQ code cleanup dwi-hdmi bridge: - Cleanups and fixes adv-bridge: - Updates for nexus sii8520 bridge: - Add interlace mode support - Rework HDMI and lots of fixes qxl: - probing/teardown cleanups ZTE drm: - HDMI audio via SPDIF interface - Video Layer overlay plane support - Add TV encoder output device atmel-hlcdc: - Rework fbdev creation logic tegra: - OF node fix fsl-dcu: - Minor fixes mali-dp: - Assorted fixes sunxi: - Minor fix" [ This was the "fixed" pull, that still had build warnings due to people not even having build tested the result. I'm not a happy camper I've fixed the things I noticed up in this merge. - Linus ] * tag 'drm-for-v4.11-less-shouty' of git://people.freedesktop.org/~airlied/linux: (1177 commits) lib/Kconfig: make PRIME_NUMBERS not user selectable drm/tinydrm: helpers: Properly fix backlight dependency drm/tinydrm: mipi-dbi: Fix field width specifier warning drm/tinydrm: mipi-dbi: Silence: ‘cmd’ may be used uninitialized drm/sti: fix build warnings in sti_drv.c and sti_vtg.c files drm/amd/powerplay: fix PSI feature on Polars12 drm/amdgpu: refuse to reserve io mem for split VRAM buffers drm/ttm: fix use-after-free races in vm fault handling drm/tinydrm: Add support for Multi-Inno MI0283QT display dt-bindings: Add Multi-Inno MI0283QT binding dt-bindings: display/panel: Add common rotation property of: Add vendor prefix for Multi-Inno drm/tinydrm: Add MIPI DBI support drm/tinydrm: Add helper functions drm: Add DRM support for tiny LCD displays drm/amd/amdgpu: post card if there is real hw resetting performed drm/nouveau/tmr: provide backtrace when a timeout is hit drm/nouveau/pci/g92: Fix rearm drm/nouveau/drm/therm/fan: add a fallback if no fan control is specified in the vbios drm/nouveau/hwmon: expose power_max and power_crit ..
2 parents d5500a0 + 64a5771 commit ef96152

File tree

923 files changed

+46348
-22490
lines changed

Some content is hidden

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

923 files changed

+46348
-22490
lines changed

Documentation/devicetree/bindings/display/brcm,bcm-vc4.txt

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,18 @@ Required properties for V3D:
5656
- interrupts: The interrupt number
5757
See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
5858

59+
Required properties for DSI:
60+
- compatible: Should be "brcm,bcm2835-dsi0" or "brcm,bcm2835-dsi1"
61+
- reg: Physical base address and length of the DSI block's registers
62+
- interrupts: The interrupt number
63+
See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
64+
- clocks: a) phy: The DSI PLL clock feeding the DSI analog PHY
65+
b) escape: The DSI ESC clock from CPRMAN
66+
c) pixel: The DSI pixel clock from CPRMAN
67+
- clock-output-names:
68+
The 3 clocks output from the DSI analog PHY: dsi[01]_byte,
69+
dsi[01]_ddr2, and dsi[01]_ddr
70+
5971
[1] Documentation/devicetree/bindings/media/video-interfaces.txt
6072

6173
Example:
@@ -99,6 +111,29 @@ dpi: dpi@7e208000 {
99111
};
100112
};
101113

114+
dsi1: dsi@7e700000 {
115+
compatible = "brcm,bcm2835-dsi1";
116+
reg = <0x7e700000 0x8c>;
117+
interrupts = <2 12>;
118+
#address-cells = <1>;
119+
#size-cells = <0>;
120+
#clock-cells = <1>;
121+
122+
clocks = <&clocks BCM2835_PLLD_DSI1>,
123+
<&clocks BCM2835_CLOCK_DSI1E>,
124+
<&clocks BCM2835_CLOCK_DSI1P>;
125+
clock-names = "phy", "escape", "pixel";
126+
127+
clock-output-names = "dsi1_byte", "dsi1_ddr2", "dsi1_ddr";
128+
129+
pitouchscreen: panel@0 {
130+
compatible = "raspberrypi,touchscreen";
131+
reg = <0>;
132+
133+
<...>
134+
};
135+
};
136+
102137
vec: vec@7e806000 {
103138
compatible = "brcm,bcm2835-vec";
104139
reg = <0x7e806000 0x1000>;

Documentation/devicetree/bindings/display/bridge/adi,adv7511.txt

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,22 @@ The following input format properties are required except in "rgb 1x" and
3838
- adi,input-justification: The input bit justification ("left", "evenly",
3939
"right").
4040

41+
- avdd-supply: A 1.8V supply that powers up the AVDD pin on the chip.
42+
- dvdd-supply: A 1.8V supply that powers up the DVDD pin on the chip.
43+
- pvdd-supply: A 1.8V supply that powers up the PVDD pin on the chip.
44+
- dvdd-3v-supply: A 3.3V supply that powers up the pin called DVDD_3V
45+
on the chip.
46+
- bgvdd-supply: A 1.8V supply that powers up the BGVDD pin. This is
47+
needed only for ADV7511.
48+
4149
The following properties are required for ADV7533:
4250

4351
- adi,dsi-lanes: Number of DSI data lanes connected to the DSI host. It should
4452
be one of 1, 2, 3 or 4.
53+
- a2vdd-supply: 1.8V supply that powers up the A2VDD pin on the chip.
54+
- v3p3-supply: A 3.3V supply that powers up the V3P3 pin on the chip.
55+
- v1p2-supply: A supply that powers up the V1P2 pin on the chip. It can be
56+
either 1.2V or 1.8V.
4557

4658
Optional properties:
4759

Lines changed: 33 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,52 +1,33 @@
1-
DesignWare HDMI bridge bindings
2-
3-
Required properties:
4-
- compatible: platform specific such as:
5-
* "snps,dw-hdmi-tx"
6-
* "fsl,imx6q-hdmi"
7-
* "fsl,imx6dl-hdmi"
8-
* "rockchip,rk3288-dw-hdmi"
9-
- reg: Physical base address and length of the controller's registers.
10-
- interrupts: The HDMI interrupt number
11-
- clocks, clock-names : must have the phandles to the HDMI iahb and isfr clocks,
12-
as described in Documentation/devicetree/bindings/clock/clock-bindings.txt,
13-
the clocks are soc specific, the clock-names should be "iahb", "isfr"
14-
-port@[X]: SoC specific port nodes with endpoint definitions as defined
15-
in Documentation/devicetree/bindings/media/video-interfaces.txt,
16-
please refer to the SoC specific binding document:
17-
* Documentation/devicetree/bindings/display/imx/hdmi.txt
18-
* Documentation/devicetree/bindings/display/rockchip/dw_hdmi-rockchip.txt
19-
20-
Optional properties
21-
- reg-io-width: the width of the reg:1,4, default set to 1 if not present
22-
- ddc-i2c-bus: phandle of an I2C controller used for DDC EDID probing,
23-
if the property is omitted, a functionally reduced I2C bus
24-
controller on DW HDMI is probed
25-
- clocks, clock-names: phandle to the HDMI CEC clock, name should be "cec"
26-
27-
Example:
28-
hdmi: hdmi@0120000 {
29-
compatible = "fsl,imx6q-hdmi";
30-
reg = <0x00120000 0x9000>;
31-
interrupts = <0 115 0x04>;
32-
gpr = <&gpr>;
33-
clocks = <&clks 123>, <&clks 124>;
34-
clock-names = "iahb", "isfr";
35-
ddc-i2c-bus = <&i2c2>;
36-
37-
port@0 {
38-
reg = <0>;
39-
40-
hdmi_mux_0: endpoint {
41-
remote-endpoint = <&ipu1_di0_hdmi>;
42-
};
43-
};
44-
45-
port@1 {
46-
reg = <1>;
47-
48-
hdmi_mux_1: endpoint {
49-
remote-endpoint = <&ipu1_di1_hdmi>;
50-
};
51-
};
52-
};
1+
Synopsys DesignWare HDMI TX Encoder
2+
===================================
3+
4+
This document defines device tree properties for the Synopsys DesignWare HDMI
5+
TX Encoder (DWC HDMI TX). It doesn't constitue a device tree binding
6+
specification by itself but is meant to be referenced by platform-specific
7+
device tree bindings.
8+
9+
When referenced from platform device tree bindings the properties defined in
10+
this document are defined as follows. The platform device tree bindings are
11+
responsible for defining whether each property is required or optional.
12+
13+
- reg: Memory mapped base address and length of the DWC HDMI TX registers.
14+
15+
- reg-io-width: Width of the registers specified by the reg property. The
16+
value is expressed in bytes and must be equal to 1 or 4 if specified. The
17+
register width defaults to 1 if the property is not present.
18+
19+
- interrupts: Reference to the DWC HDMI TX interrupt.
20+
21+
- clocks: References to all the clocks specified in the clock-names property
22+
as specified in Documentation/devicetree/bindings/clock/clock-bindings.txt.
23+
24+
- clock-names: The DWC HDMI TX uses the following clocks.
25+
26+
- "iahb" is the bus clock for either AHB and APB (mandatory).
27+
- "isfr" is the internal register configuration clock (mandatory).
28+
- "cec" is the HDMI CEC controller main clock (optional).
29+
30+
- ports: The connectivity of the DWC HDMI TX with the rest of the system is
31+
expressed in using ports as specified in the device graph bindings defined
32+
in Documentation/devicetree/bindings/graph.txt. The numbering of the ports
33+
is platform-specific.
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
THS8135 Video DAC
2+
-----------------
3+
4+
This is the binding for Texas Instruments THS8135 Video DAC bridge.
5+
6+
Required properties:
7+
8+
- compatible: Must be "ti,ths8135"
9+
10+
Required nodes:
11+
12+
This device has two video ports. Their connections are modelled using the OF
13+
graph bindings specified in Documentation/devicetree/bindings/graph.txt.
14+
15+
- Video port 0 for RGB input
16+
- Video port 1 for VGA output
17+
18+
Example
19+
-------
20+
21+
vga-bridge {
22+
compatible = "ti,ths8135";
23+
#address-cells = <1>;
24+
#size-cells = <0>;
25+
26+
ports {
27+
#address-cells = <1>;
28+
#size-cells = <0>;
29+
30+
port@0 {
31+
reg = <0>;
32+
33+
vga_bridge_in: endpoint {
34+
remote-endpoint = <&lcdc_out_vga>;
35+
};
36+
};
37+
38+
port@1 {
39+
reg = <1>;
40+
41+
vga_bridge_out: endpoint {
42+
remote-endpoint = <&vga_con_in>;
43+
};
44+
};
45+
};
46+
};

Documentation/devicetree/bindings/display/hisilicon/hisi-ade.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Required properties:
1616
"clk_ade_core" for the ADE core clock.
1717
"clk_codec_jpeg" for the media NOC QoS clock, which use the same clock with
1818
jpeg codec.
19-
"clk_ade_pix" for the ADE pixel clok.
19+
"clk_ade_pix" for the ADE pixel clock.
2020
- assigned-clocks: Should contain "clk_ade_core" and "clk_codec_jpeg" clocks'
2121
phandle + clock-specifier pairs.
2222
- assigned-clock-rates: clock rates, one for each entry in assigned-clocks.

Documentation/devicetree/bindings/display/imx/hdmi.txt

Lines changed: 29 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,36 @@
1-
Device-Tree bindings for HDMI Transmitter
1+
Freescale i.MX6 DWC HDMI TX Encoder
2+
===================================
23

3-
HDMI Transmitter
4-
================
4+
The HDMI transmitter is a Synopsys DesignWare HDMI 1.4 TX controller IP
5+
with a companion PHY IP.
6+
7+
These DT bindings follow the Synopsys DWC HDMI TX bindings defined in
8+
Documentation/devicetree/bindings/display/bridge/dw_hdmi.txt with the
9+
following device-specific properties.
510

6-
The HDMI Transmitter is a Synopsys DesignWare HDMI 1.4 TX controller IP
7-
with accompanying PHY IP.
811

912
Required properties:
10-
- #address-cells : should be <1>
11-
- #size-cells : should be <0>
12-
- compatible : should be "fsl,imx6q-hdmi" or "fsl,imx6dl-hdmi".
13-
- gpr : should be <&gpr>.
14-
The phandle points to the iomuxc-gpr region containing the HDMI
15-
multiplexer control register.
16-
- clocks, clock-names : phandles to the HDMI iahb and isrf clocks, as described
17-
in Documentation/devicetree/bindings/clock/clock-bindings.txt and
18-
Documentation/devicetree/bindings/clock/imx6q-clock.txt.
19-
- port@[0-4]: Up to four port nodes with endpoint definitions as defined in
20-
Documentation/devicetree/bindings/media/video-interfaces.txt,
21-
corresponding to the four inputs to the HDMI multiplexer.
22-
23-
Optional properties:
24-
- ddc-i2c-bus: phandle of an I2C controller used for DDC EDID probing
25-
26-
example:
13+
14+
- compatible : Shall be one of "fsl,imx6q-hdmi" or "fsl,imx6dl-hdmi".
15+
- reg: See dw_hdmi.txt.
16+
- interrupts: HDMI interrupt number
17+
- clocks: See dw_hdmi.txt.
18+
- clock-names: Shall contain "iahb" and "isfr" as defined in dw_hdmi.txt.
19+
- ports: See dw_hdmi.txt. The DWC HDMI shall have between one and four ports,
20+
numbered 0 to 3, corresponding to the four inputs of the HDMI multiplexer.
21+
Each port shall have a single endpoint.
22+
- gpr : Shall contain a phandle to the iomuxc-gpr region containing the HDMI
23+
multiplexer control register.
24+
25+
Optional properties
26+
27+
- ddc-i2c-bus: The HDMI DDC bus can be connected to either a system I2C master
28+
or the functionally-reduced I2C master contained in the DWC HDMI. When
29+
connected to a system I2C master this property contains a phandle to that
30+
I2C master controller.
31+
32+
33+
Example:
2734

2835
gpr: iomuxc-gpr@020e0000 {
2936
/* ... */
Lines changed: 12 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,52 +1,38 @@
11
Qualcomm adreno/snapdragon GPU
22

33
Required properties:
4-
- compatible: "qcom,adreno-3xx"
4+
- compatible: "qcom,adreno-XYZ.W", "qcom,adreno"
5+
for example: "qcom,adreno-306.0", "qcom,adreno"
6+
Note that you need to list the less specific "qcom,adreno" (since this
7+
is what the device is matched on), in addition to the more specific
8+
with the chip-id.
59
- reg: Physical base address and length of the controller's registers.
610
- interrupts: The interrupt signal from the gpu.
711
- clocks: device clocks
812
See ../clocks/clock-bindings.txt for details.
913
- clock-names: the following clocks are required:
10-
* "core_clk"
11-
* "iface_clk"
12-
* "mem_iface_clk"
13-
- qcom,chipid: gpu chip-id. Note this may become optional for future
14-
devices if we can reliably read the chipid from hw
15-
- qcom,gpu-pwrlevels: list of operating points
16-
- compatible: "qcom,gpu-pwrlevels"
17-
- for each qcom,gpu-pwrlevel:
18-
- qcom,gpu-freq: requested gpu clock speed
19-
- NOTE: downstream android driver defines additional parameters to
20-
configure memory bandwidth scaling per OPP.
14+
* "core"
15+
* "iface"
16+
* "mem_iface"
2117

2218
Example:
2319

2420
/ {
2521
...
2622

2723
gpu: qcom,kgsl-3d0@4300000 {
28-
compatible = "qcom,adreno-3xx";
24+
compatible = "qcom,adreno-320.2", "qcom,adreno";
2925
reg = <0x04300000 0x20000>;
3026
reg-names = "kgsl_3d0_reg_memory";
3127
interrupts = <GIC_SPI 80 0>;
3228
interrupt-names = "kgsl_3d0_irq";
3329
clock-names =
34-
"core_clk",
35-
"iface_clk",
36-
"mem_iface_clk";
30+
"core",
31+
"iface",
32+
"mem_iface";
3733
clocks =
3834
<&mmcc GFX3D_CLK>,
3935
<&mmcc GFX3D_AHB_CLK>,
4036
<&mmcc MMSS_IMEM_AHB_CLK>;
41-
qcom,chipid = <0x03020100>;
42-
qcom,gpu-pwrlevels {
43-
compatible = "qcom,gpu-pwrlevels";
44-
qcom,gpu-pwrlevel@0 {
45-
qcom,gpu-freq = <450000000>;
46-
};
47-
qcom,gpu-pwrlevel@1 {
48-
qcom,gpu-freq = <27000000>;
49-
};
50-
};
5137
};
5238
};
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
Multi-Inno MI0283QT display panel
2+
3+
Required properties:
4+
- compatible: "multi-inno,mi0283qt".
5+
6+
The node for this driver must be a child node of a SPI controller, hence
7+
all mandatory properties described in ../spi/spi-bus.txt must be specified.
8+
9+
Optional properties:
10+
- dc-gpios: D/C pin. The presence/absence of this GPIO determines
11+
the panel interface mode (IM[3:0] pins):
12+
- present: IM=x110 4-wire 8-bit data serial interface
13+
- absent: IM=x101 3-wire 9-bit data serial interface
14+
- reset-gpios: Reset pin
15+
- power-supply: A regulator node for the supply voltage.
16+
- backlight: phandle of the backlight device attached to the panel
17+
- rotation: panel rotation in degrees counter clockwise (0,90,180,270)
18+
19+
Example:
20+
mi0283qt@0{
21+
compatible = "multi-inno,mi0283qt";
22+
reg = <0>;
23+
spi-max-frequency = <32000000>;
24+
rotation = <90>;
25+
dc-gpios = <&gpio 25 0>;
26+
backlight = <&backlight>;
27+
};
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
BOE OPTOELECTRONICS TECHNOLOGY 10.1" WXGA TFT LCD panel
2+
3+
Required properties:
4+
- compatible: should be "boe,nv101wxmn51"
5+
6+
This binding is compatible with the simple-panel binding, which is specified
7+
in simple-panel.txt in this directory.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
Netron-DY E231732 7.0" WSVGA TFT LCD panel
2+
3+
Required properties:
4+
- compatible: should be "netron-dy,e231732"
5+
6+
This binding is compatible with the simple-panel binding, which is specified
7+
in simple-panel.txt in this directory.
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
Common display properties
2+
-------------------------
3+
4+
- rotation: Display rotation in degrees counter clockwise (0,90,180,270)
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
Tianma Micro-electronics TM070JDHG30 7.0" WXGA TFT LCD panel
2+
3+
Required properties:
4+
- compatible: should be "tianma,tm070jdhg30"
5+
6+
This binding is compatible with the simple-panel binding, which is specified
7+
in simple-panel.txt in this directory.

0 commit comments

Comments
 (0)