Skip to content

Commit 851ca77

Browse files
committed
Merge tag 'drm-next-2019-03-06' of git://anongit.freedesktop.org/drm/drm
Pull drm updates from Dave Airlie: "This is the main drm pull request for the 5.1 merge window. The big changes I'd highlight are: - nouveau has HMM support now, there is finally an in-tree user so we can quieten down the rip it out people. - i915 now enables fastboot by default on Skylake+ - Displayport Multistream support has been refactored and should hopefully be more reliable. Core: - header cleanups aiming towards removing drmP.h - dma-buf fence seqnos to 64-bits - common helper for DP mst hotplug for radeon,i915,amdgpu + new refcounting scheme - MST i2c improvements - drm_syncobj_cb removal - ARM FB compression fourcc - P010 + P016 fourcc - allwinner tiled format modifier - i2c over aux I2C_M_STOP support - DRM_AUTH handling fixes TTM: - ref/unref renaming New driver: - ARM komeda display driver scheduler: - refactor mirror list handling - rework hw fence processing - 0 run queue entity fix bridge: - TI DS90C185 LVDS bridge - thc631lvdm83d bridge improvements - cadence + allwinner DSI ported to generic phy panels: - Sitronix ST7701 panel - Kingdisplay KD097D04 - LeMaker BL035-RGB-002 - PDA 91-00156-A0 - Innolux EE101IA-01D i915: - Enable fastboot by default on SKL+/VLV/CHV - Export RPCS configuration for ICL media driver - Coffelake PCI ID - CNL clocks setup fixes - ACPI/PMIC support for MIPI/DSI - Per-engine WA init for all engines - Shrinker locking fixes - Kerneldoc updates - Lots of ring improvements and reset fixes - Coffeelake GVT Support - VFIO GVT EDID Region support - runtime PM wakeref tracking - ILK->IVB primary plane enable delays - userptr mutex locking fixes - DSI fixes - LVDS/TV cleanups - HW readout fixes - LUT robustness fixes - ICL display and watermark fixes - gem mmap race fix amdgpu: - add scheduled dependencies interface - DCC on scanout surfaces - vega10/20 BACO support - Multiple IH rings on soc15 - XGMI locking fixes - DC i2c/aux cleanups - runtime SMU debug interface - Kexec improvmeents - SR-IOV fixes - DC freesync + ABM fixes - GDS fixes - GPUVM fixes - vega20 PCIE DPM switching fixes - Context priority handling fixes radeon: - fix missing break in evergreen parser nouveau: - SVM support via HMM msm: - QCOM Compressed modifier support exynos: - s5pv210 rotator support imx: - zpos property support - pending update fixes v3d: - cache flush improvments vc4: - reflection support - HDMI overscan support tegra: - CEC refactoring - HDMI audio fixes - Tegra186 prep work - SOR crossbar device tree fixes sun4i: - implicit fencing support - YUV and scalar support improvements - A23 support - tiling fixes atmel-hlcdc: - clipping and rotation property fixes qxl: - BO and PRIME improvements - generic fbdev emulation dw-hdmi: - HDMI 2.0 2160p - YUV420 ouput rockchip: - implicit fencing support - reflection proerties virtio-gpu: - use generic fbdev emulation tilcdc: - cpufreq vs crtc init fix rcar-du: - R8A774C0 support - D3/E3 RGB output routing fixes and DPAD0 support - RA87744 LVDS support bochs: - atomic and generic fbdev emulation - ID mismatch error on bochs load meson: - remove firmware fbs" * tag 'drm-next-2019-03-06' of git://anongit.freedesktop.org/drm/drm: (1130 commits) drm/amd/display: Use vrr friendly pageflip throttling in DC. drm/imx: only send commit done event when all state has been applied drm/imx: allow building under COMPILE_TEST drm/imx: imx-tve: depend on COMMON_CLK drm/imx: ipuv3-plane: add zpos property drm/imx: ipuv3-plane: add function to query atomic update status gpu: ipu-v3: prg: add function to get channel configure status gpu: ipu-v3: pre: add double buffer status readback drm/amdgpu: Bump amdgpu version for context priority override. drm/amdgpu/powerplay: fix typo in BACO header guards drm/amdgpu/powerplay: fix return codes in BACO code drm/amdgpu: add missing license on baco files drm/bochs: Fix the ID mismatch error drm/nouveau/dmem: use dma addresses during migration copies drm/nouveau/dmem: use physical vram addresses during migration copies drm/nouveau/dmem: extend copy function to allow direct use of physical addresses drm/nouveau/svm: new ioctl to migrate process memory to GPU memory drm/nouveau/dmem: device memory helpers for SVM drm/nouveau/svm: initial support for shared virtual memory drm/nouveau: prepare for enabling svm with existing userspace interfaces ...
2 parents b5dd0c6 + 4b057e7 commit 851ca77

File tree

1,141 files changed

+39562
-37911
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,141 files changed

+39562
-37911
lines changed
Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
Device Tree bindings for Arm Komeda display driver
2+
3+
Required properties:
4+
- compatible: Should be "arm,mali-d71"
5+
- reg: Physical base address and length of the registers in the system
6+
- interrupts: the interrupt line number of the device in the system
7+
- clocks: A list of phandle + clock-specifier pairs, one for each entry
8+
in 'clock-names'
9+
- clock-names: A list of clock names. It should contain:
10+
- "mclk": for the main processor clock
11+
- "pclk": for the APB interface clock
12+
- #address-cells: Must be 1
13+
- #size-cells: Must be 0
14+
15+
Required properties for sub-node: pipeline@nq
16+
Each device contains one or two pipeline sub-nodes (at least one), each
17+
pipeline node should provide properties:
18+
- reg: Zero-indexed identifier for the pipeline
19+
- clocks: A list of phandle + clock-specifier pairs, one for each entry
20+
in 'clock-names'
21+
- clock-names: should contain:
22+
- "pxclk": pixel clock
23+
- "aclk": AXI interface clock
24+
25+
- port: each pipeline connect to an encoder input port. The connection is
26+
modeled using the OF graph bindings specified in
27+
Documentation/devicetree/bindings/graph.txt
28+
29+
Optional properties:
30+
- memory-region: phandle to a node describing memory (see
31+
Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt)
32+
to be used for the framebuffer; if not present, the framebuffer may
33+
be located anywhere in memory.
34+
35+
Example:
36+
/ {
37+
...
38+
39+
dp0: display@c00000 {
40+
#address-cells = <1>;
41+
#size-cells = <0>;
42+
compatible = "arm,mali-d71";
43+
reg = <0xc00000 0x20000>;
44+
interrupts = <0 168 4>;
45+
clocks = <&dpu_mclk>, <&dpu_aclk>;
46+
clock-names = "mclk", "pclk";
47+
48+
dp0_pipe0: pipeline@0 {
49+
clocks = <&fpgaosc2>, <&dpu_aclk>;
50+
clock-names = "pxclk", "aclk";
51+
reg = <0>;
52+
53+
port {
54+
dp0_pipe0_out: endpoint {
55+
remote-endpoint = <&db_dvi0_in>;
56+
};
57+
};
58+
};
59+
60+
dp0_pipe1: pipeline@1 {
61+
clocks = <&fpgaosc2>, <&dpu_aclk>;
62+
clock-names = "pxclk", "aclk";
63+
reg = <1>;
64+
65+
port {
66+
dp0_pipe1_out: endpoint {
67+
remote-endpoint = <&db_dvi1_in>;
68+
};
69+
};
70+
};
71+
};
72+
...
73+
};

Documentation/devicetree/bindings/display/bridge/lvds-transmitter.txt

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,11 @@ among others.
2222

2323
Required properties:
2424

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

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

3331
Required nodes:
3432

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

4543
lvds-encoder {
4644
compatible = "lvds-encoder";
47-
#address-cells = <1>;
48-
#size-cells = <0>;
4945

5046
ports {
5147
#address-cells = <1>;

Documentation/devicetree/bindings/display/bridge/renesas,lvds.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ Required properties:
88

99
- compatible : Shall contain one of
1010
- "renesas,r8a7743-lvds" for R8A7743 (RZ/G1M) compatible LVDS encoders
11+
- "renesas,r8a7744-lvds" for R8A7744 (RZ/G1N) compatible LVDS encoders
12+
- "renesas,r8a774c0-lvds" for R8A774C0 (RZ/G2E) compatible LVDS encoders
1113
- "renesas,r8a7790-lvds" for R8A7790 (R-Car H2) compatible LVDS encoders
1214
- "renesas,r8a7791-lvds" for R8A7791 (R-Car M2-W) compatible LVDS encoders
1315
- "renesas,r8a7793-lvds" for R8A7793 (R-Car M2-N) compatible LVDS encoders
@@ -25,7 +27,7 @@ Required properties:
2527
- clock-names: Name of the clocks. This property is model-dependent.
2628
- The functional clock, which mandatory for all models, shall be listed
2729
first, and shall be named "fck".
28-
- On R8A77990 and R8A77995, the LVDS encoder can use the EXTAL or
30+
- On R8A77990, R8A77995 and R8A774C0, the LVDS encoder can use the EXTAL or
2931
DU_DOTCLKINx clocks. Those clocks are optional. When supplied they must be
3032
named "extal" and "dclkin.x" respectively, with "x" being the DU_DOTCLKIN
3133
numerical index.

Documentation/devicetree/bindings/display/bridge/thine,thc63lvdm83d.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Required properties:
1010

1111
Optional properties:
1212

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

1515
Required nodes:
1616

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
Texas Instruments FPD-Link (LVDS) Serializer
2+
--------------------------------------------
3+
4+
The DS90C185 and DS90C187 are low-power serializers for portable
5+
battery-powered applications that reduces the size of the RGB
6+
interface between the host GPU and the display.
7+
8+
Required properties:
9+
10+
- compatible: Should be
11+
"ti,ds90c185", "lvds-encoder" for the TI DS90C185 FPD-Link Serializer
12+
"ti,ds90c187", "lvds-encoder" for the TI DS90C187 FPD-Link Serializer
13+
14+
Optional properties:
15+
16+
- powerdown-gpios: Power down control GPIO (the PDB pin, active-low)
17+
18+
Required nodes:
19+
20+
The devices have two video ports. Their connections are modeled using the OF
21+
graph bindings specified in Documentation/devicetree/bindings/graph.txt.
22+
23+
- Video port 0 for parallel input
24+
- Video port 1 for LVDS output
25+
26+
27+
Example
28+
-------
29+
30+
lvds-encoder {
31+
compatible = "ti,ds90c185", "lvds-encoder";
32+
33+
powerdown-gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
34+
35+
ports {
36+
#address-cells = <1>;
37+
#size-cells = <0>;
38+
39+
port@0 {
40+
reg = <0>;
41+
42+
lvds_enc_in: endpoint {
43+
remote-endpoint = <&lcdc_out_rgb>;
44+
};
45+
};
46+
47+
port@1 {
48+
reg = <1>;
49+
50+
lvds_enc_out: endpoint {
51+
remote-endpoint = <&lvds_panel_in>;
52+
};
53+
};
54+
};
55+
};
Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
Qualcomm adreno/snapdragon GMU (Graphics management unit)
2+
3+
The GMU is a programmable power controller for the GPU. the CPU controls the
4+
GMU which in turn handles power controls for the GPU.
5+
6+
Required properties:
7+
- compatible: "qcom,adreno-gmu-XYZ.W", "qcom,adreno-gmu"
8+
for example: "qcom,adreno-gmu-630.2", "qcom,adreno-gmu"
9+
Note that you need to list the less specific "qcom,adreno-gmu"
10+
for generic matches and the more specific identifier to identify
11+
the specific device.
12+
- reg: Physical base address and length of the GMU registers.
13+
- reg-names: Matching names for the register regions
14+
* "gmu"
15+
* "gmu_pdc"
16+
* "gmu_pdc_seg"
17+
- interrupts: The interrupt signals from the GMU.
18+
- interrupt-names: Matching names for the interrupts
19+
* "hfi"
20+
* "gmu"
21+
- clocks: phandles to the device clocks
22+
- clock-names: Matching names for the clocks
23+
* "gmu"
24+
* "cxo"
25+
* "axi"
26+
* "mnoc"
27+
- power-domains: should be <&clock_gpucc GPU_CX_GDSC>
28+
- iommus: phandle to the adreno iommu
29+
- operating-points-v2: phandle to the OPP operating points
30+
31+
Example:
32+
33+
/ {
34+
...
35+
36+
gmu: gmu@506a000 {
37+
compatible="qcom,adreno-gmu-630.2", "qcom,adreno-gmu";
38+
39+
reg = <0x506a000 0x30000>,
40+
<0xb280000 0x10000>,
41+
<0xb480000 0x10000>;
42+
reg-names = "gmu", "gmu_pdc", "gmu_pdc_seq";
43+
44+
interrupts = <GIC_SPI 304 IRQ_TYPE_LEVEL_HIGH>,
45+
<GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>;
46+
interrupt-names = "hfi", "gmu";
47+
48+
clocks = <&gpucc GPU_CC_CX_GMU_CLK>,
49+
<&gpucc GPU_CC_CXO_CLK>,
50+
<&gcc GCC_DDRSS_GPU_AXI_CLK>,
51+
<&gcc GCC_GPU_MEMNOC_GFX_CLK>;
52+
clock-names = "gmu", "cxo", "axi", "memnoc";
53+
54+
power-domains = <&gpucc GPU_CX_GDSC>;
55+
iommus = <&adreno_smmu 5>;
56+
57+
operating-points-v2 = <&gmu_opp_table>;
58+
};
59+
};

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

Lines changed: 39 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,23 @@ Required properties:
1010
If "amd,imageon" is used, there should be no top level msm device.
1111
- reg: Physical base address and length of the controller's registers.
1212
- interrupts: The interrupt signal from the gpu.
13-
- clocks: device clocks
13+
- clocks: device clocks (if applicable)
1414
See ../clocks/clock-bindings.txt for details.
15-
- clock-names: the following clocks are required:
15+
- clock-names: the following clocks are required by a3xx, a4xx and a5xx
16+
cores:
1617
* "core"
1718
* "iface"
1819
* "mem_iface"
20+
For GMU attached devices the GPU clocks are not used and are not required. The
21+
following devices should not list clocks:
22+
- qcom,adreno-630.2
23+
- iommus: optional phandle to an adreno iommu instance
24+
- operating-points-v2: optional phandle to the OPP operating points
25+
- qcom,gmu: For GMU attached devices a phandle to the GMU device that will
26+
control the power for the GPU. Applicable targets:
27+
- qcom,adreno-630.2
1928

20-
Example:
29+
Example 3xx/4xx/a5xx:
2130

2231
/ {
2332
...
@@ -37,3 +46,30 @@ Example:
3746
<&mmcc MMSS_IMEM_AHB_CLK>;
3847
};
3948
};
49+
50+
Example a6xx (with GMU):
51+
52+
/ {
53+
...
54+
55+
gpu@5000000 {
56+
compatible = "qcom,adreno-630.2", "qcom,adreno";
57+
#stream-id-cells = <16>;
58+
59+
reg = <0x5000000 0x40000>, <0x509e000 0x10>;
60+
reg-names = "kgsl_3d0_reg_memory", "cx_mem";
61+
62+
/*
63+
* Look ma, no clocks! The GPU clocks and power are
64+
* controlled entirely by the GMU
65+
*/
66+
67+
interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>;
68+
69+
iommus = <&adreno_smmu 0>;
70+
71+
operating-points-v2 = <&gpu_opp_table>;
72+
73+
qcom,gmu = <&gmu>;
74+
};
75+
};
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
Innolux Corporation 10.1" EE101IA-01D WXGA (1280x800) LVDS panel
2+
3+
Required properties:
4+
- compatible: should be "innolux,ee101ia-01d"
5+
6+
This binding is compatible with the lvds-panel binding, which is specified
7+
in panel-lvds.txt in this directory.
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
LeMaker BL035-RGB-002 3.5" QVGA TFT LCD panel
2+
3+
Required properties:
4+
- compatible: should be "lemaker,bl035-rgb-002"
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.

0 commit comments

Comments
 (0)