Skip to content

Commit 477f70c

Browse files
committed
Merge tag 'drm-next-2021-08-31-1' of git://anongit.freedesktop.org/drm/drm
Pull drm updates from Dave Airlie: "Highlights: - i915 has seen a lot of refactoring and uAPI cleanups due to a change in the upstream direction going forward This has all been audited with known userspace, but there may be some pitfalls that were missed. - i915 now uses common TTM to enable discrete memory on DG1/2 GPUs - i915 enables Jasper and Elkhart Lake by default and has preliminary XeHP/DG2 support - amdgpu adds support for Cyan Skillfish - lots of implicit fencing rules documented and fixed up in drivers - msm now uses the core scheduler - the irq midlayer has been removed for non-legacy drivers - the sysfb code now works on more than x86. Otherwise the usual smattering of stuff everywhere, panels, bridges, refactorings. Detailed summary: core: - extract i915 eDP backlight into core - DP aux bus support - drm_device.irq_enabled removed - port drivers to native irq interfaces - export gem shadow plane handling for vgem - print proper driver name in framebuffer registration - driver fixes for implicit fencing rules - ARM fixed rate compression modifier added - updated fb damage handling - rmfb ioctl logging/docs - drop drm_gem_object_put_locked - define DRM_FORMAT_MAX_PLANES - add gem fb vmap/vunmap helpers - add lockdep_assert(once) helpers - mark drm irq midlayer as legacy - use offset adjusted bo mapping conversion vgaarb: - cleanups fbdev: - extend efifb handling to all arches - div by 0 fixes for multiple drivers udmabuf: - add hugepage mapping support dma-buf: - non-dynamic exporter fixups - document implicit fencing rules amdgpu: - Initial Cyan Skillfish support - switch virtual DCE over to vkms based atomic - VCN/JPEG power down fixes - NAVI PCIE link handling fixes - AMD HDMI freesync fixes - Yellow Carp + Beige Goby fixes - Clockgating/S0ix/SMU/EEPROM fixes - embed hw fence in job - rework dma-resv handling - ensure eviction to system ram amdkfd: - uapi: SVM address range query added - sysfs leak fix - GPUVM TLB optimizations - vmfault/migration counters i915: - Enable JSL and EHL by default - preliminary XeHP/DG2 support - remove all CNL support (never shipped) - move to TTM for discrete memory support - allow mixed object mmap handling - GEM uAPI spring cleaning - add I915_MMAP_OBJECT_FIXED - reinstate ADL-P mmap ioctls - drop a bunch of unused by userspace features - disable and remove GPU relocations - revert some i915 misfeatures - major refactoring of GuC for Gen11+ - execbuffer object locking separate step - reject caching/set-domain on discrete - Enable pipe DMC loading on XE-LPD and ADL-P - add PSF GV point support - Refactor and fix DDI buffer translations - Clean up FBC CFB allocation code - Finish INTEL_GEN() and friends macro conversions nouveau: - add eDP backlight support - implicit fence fix msm: - a680/7c3 support - drm/scheduler conversion panfrost: - rework GPU reset virtio: - fix fencing for planes ast: - add detect support bochs: - move to tiny GPU driver vc4: - use hotplug irqs - HDMI codec support vmwgfx: - use internal vmware device headers ingenic: - demidlayering irq rcar-du: - shutdown fixes - convert to bridge connector helpers zynqmp-dsub: - misc fixes mgag200: - convert PLL handling to atomic mediatek: - MT8133 AAL support - gem mmap object support - MT8167 support etnaviv: - NXP Layerscape LS1028A SoC support - GEM mmap cleanups tegra: - new user API exynos: - missing unlock fix - build warning fix - use refcount_t" * tag 'drm-next-2021-08-31-1' of git://anongit.freedesktop.org/drm/drm: (1318 commits) drm/amd/display: Move AllowDRAMSelfRefreshOrDRAMClockChangeInVblank to bounding box drm/amd/display: Remove duplicate dml init drm/amd/display: Update bounding box states (v2) drm/amd/display: Update number of DCN3 clock states drm/amdgpu: disable GFX CGCG in aldebaran drm/amdgpu: Clear RAS interrupt status on aldebaran drm/amdgpu: Add support for RAS XGMI err query drm/amdkfd: Account for SH/SE count when setting up cu masks. drm/amdgpu: rename amdgpu_bo_get_preferred_pin_domain drm/amdgpu: drop redundant cancel_delayed_work_sync call drm/amdgpu: add missing cleanups for more ASICs on UVD/VCE suspend drm/amdgpu: add missing cleanups for Polaris12 UVD/VCE on suspend drm/amdkfd: map SVM range with correct access permission drm/amdkfd: check access permisson to restore retry fault drm/amdgpu: Update RAS XGMI Error Query drm/amdgpu: Add driver infrastructure for MCA RAS drm/amd/display: Add Logging for HDMI color depth information drm/amd/amdgpu: consolidate PSP TA init shared buf functions drm/amd/amdgpu: add name field back to ras_common_if drm/amdgpu: Fix build with missing pm_suspend_target_state module export ...
2 parents 835d31d + 8f0284f commit 477f70c

File tree

1,124 files changed

+62925
-35691
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,124 files changed

+62925
-35691
lines changed
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
What: /sys/kernel/dmabuf/buffers
2+
Date: May 2021
3+
KernelVersion: v5.13
4+
Contact: Hridya Valsaraju <[email protected]>
5+
Description: The /sys/kernel/dmabuf/buffers directory contains a
6+
snapshot of the internal state of every DMA-BUF.
7+
/sys/kernel/dmabuf/buffers/<inode_number> will contain the
8+
statistics for the DMA-BUF with the unique inode number
9+
<inode_number>
10+
Users: kernel memory tuning/debugging tools
11+
12+
What: /sys/kernel/dmabuf/buffers/<inode_number>/exporter_name
13+
Date: May 2021
14+
KernelVersion: v5.13
15+
Contact: Hridya Valsaraju <[email protected]>
16+
Description: This file is read-only and contains the name of the exporter of
17+
the DMA-BUF.
18+
19+
What: /sys/kernel/dmabuf/buffers/<inode_number>/size
20+
Date: May 2021
21+
KernelVersion: v5.13
22+
Contact: Hridya Valsaraju <[email protected]>
23+
Description: This file is read-only and specifies the size of the DMA-BUF in
24+
bytes.

Documentation/devicetree/bindings/display/bridge/simple-bridge.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ properties:
2222
- ti,ths8134a
2323
- ti,ths8134b
2424
- const: ti,ths8134
25+
- items:
26+
- const: corpro,gm7123
27+
- const: adi,adv7123
2528
- enum:
2629
- adi,adv7123
2730
- dumb-vga-dac

Documentation/devicetree/bindings/display/bridge/ti,sn65dsi86.yaml

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,9 @@ properties:
7070
const: 1
7171
description: See ../../pwm/pwm.yaml for description of the cell formats.
7272

73+
aux-bus:
74+
$ref: /schemas/display/dp-aux-bus.yaml#
75+
7376
ports:
7477
$ref: /schemas/graph.yaml#/properties/ports
7578

@@ -150,7 +153,6 @@ properties:
150153
required:
151154
- compatible
152155
- reg
153-
- enable-gpios
154156
- vccio-supply
155157
- vpll-supply
156158
- vcca-supply
@@ -201,11 +203,26 @@ examples:
201203
202204
port@1 {
203205
reg = <1>;
204-
endpoint {
206+
sn65dsi86_out: endpoint {
205207
remote-endpoint = <&panel_in_edp>;
206208
};
207209
};
208210
};
211+
212+
aux-bus {
213+
panel {
214+
compatible = "boe,nv133fhm-n62";
215+
power-supply = <&pp3300_dx_edp>;
216+
backlight = <&backlight>;
217+
hpd-gpios = <&sn65dsi86_bridge 2 GPIO_ACTIVE_HIGH>;
218+
219+
port {
220+
panel_in_edp: endpoint {
221+
remote-endpoint = <&sn65dsi86_out>;
222+
};
223+
};
224+
};
225+
};
209226
};
210227
};
211228
- |
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/display/dp-aux-bus.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: DisplayPort AUX bus
8+
9+
maintainers:
10+
- Douglas Anderson <[email protected]>
11+
12+
description:
13+
DisplayPort controllers provide a control channel to the sinks that
14+
are hooked up to them. This is the DP AUX bus. Over the DP AUX bus
15+
we can query properties about a sink and also configure it. In
16+
particular, DP sinks support DDC over DP AUX which allows tunneling
17+
a standard I2C DDC connection over the AUX channel.
18+
19+
To model this relationship, DP sinks should be placed as children
20+
of the DP controller under the "aux-bus" node.
21+
22+
At the moment, this binding only handles the eDP case. It is
23+
possible it will be extended in the future to handle the DP case.
24+
For DP, presumably a connector would be listed under the DP AUX
25+
bus instead of a panel.
26+
27+
properties:
28+
$nodename:
29+
const: "aux-bus"
30+
31+
panel:
32+
$ref: panel/panel-common.yaml#
33+
34+
additionalProperties: false
35+
36+
required:
37+
- panel

Documentation/devicetree/bindings/display/mediatek/mediatek,dsi.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ channel output.
77

88
Required properties:
99
- compatible: "mediatek,<chip>-dsi"
10-
- the supported chips are mt2701, mt7623, mt8173 and mt8183.
10+
- the supported chips are mt2701, mt7623, mt8167, mt8173 and mt8183.
1111
- reg: Physical base address and length of the controller's registers
1212
- interrupts: The interrupt signal from the function block.
1313
- clocks: device clocks

Documentation/devicetree/bindings/display/msm/dsi-controller-main.yaml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,18 @@ properties:
6464
Indicates if the DSI controller is driving a panel which needs
6565
2 DSI links.
6666
67+
assigned-clocks:
68+
minItems: 2
69+
maxItems: 2
70+
description: |
71+
Parents of "byte" and "pixel" for the given platform.
72+
73+
assigned-clock-parents:
74+
minItems: 2
75+
maxItems: 2
76+
description: |
77+
The Byte clock and Pixel clock PLL outputs provided by a DSI PHY block.
78+
6779
power-domains:
6880
maxItems: 1
6981

@@ -119,6 +131,8 @@ required:
119131
- clock-names
120132
- phys
121133
- phy-names
134+
- assigned-clocks
135+
- assigned-clock-parents
122136
- power-domains
123137
- operating-points-v2
124138
- ports
@@ -159,6 +173,9 @@ examples:
159173
phys = <&dsi0_phy>;
160174
phy-names = "dsi";
161175
176+
assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK_SRC>, <&dispcc DISP_CC_MDSS_PCLK0_CLK_SRC>;
177+
assigned-clock-parents = <&dsi_phy 0>, <&dsi_phy 1>;
178+
162179
power-domains = <&rpmhpd SC7180_CX>;
163180
operating-points-v2 = <&dsi_opp_table>;
164181
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
# SPDX-License-Identifier: GPL-2.0-only or BSD-2-Clause
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/display/msm/dsi-phy-7nm.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Qualcomm Display DSI 7nm PHY
8+
9+
maintainers:
10+
- Jonathan Marek <[email protected]>
11+
12+
allOf:
13+
- $ref: dsi-phy-common.yaml#
14+
15+
properties:
16+
compatible:
17+
oneOf:
18+
- const: qcom,dsi-phy-7nm
19+
- const: qcom,dsi-phy-7nm-8150
20+
- const: qcom,sc7280-dsi-phy-7nm
21+
22+
reg:
23+
items:
24+
- description: dsi phy register set
25+
- description: dsi phy lane register set
26+
- description: dsi pll register set
27+
28+
reg-names:
29+
items:
30+
- const: dsi_phy
31+
- const: dsi_phy_lane
32+
- const: dsi_pll
33+
34+
vdds-supply:
35+
description: |
36+
Connected to VDD_A_DSI_PLL_0P9 pin (or VDDA_DSI{0,1}_PLL_0P9 for sm8150)
37+
38+
phy-type:
39+
description: D-PHY (default) or C-PHY mode
40+
enum: [ 10, 11 ]
41+
default: 10
42+
43+
required:
44+
- compatible
45+
- reg
46+
- reg-names
47+
- vdds-supply
48+
49+
unevaluatedProperties: false
50+
51+
examples:
52+
- |
53+
#include <dt-bindings/clock/qcom,dispcc-sm8250.h>
54+
#include <dt-bindings/clock/qcom,rpmh.h>
55+
56+
dsi-phy@ae94400 {
57+
compatible = "qcom,dsi-phy-7nm";
58+
reg = <0x0ae94400 0x200>,
59+
<0x0ae94600 0x280>,
60+
<0x0ae94900 0x260>;
61+
reg-names = "dsi_phy",
62+
"dsi_phy_lane",
63+
"dsi_pll";
64+
65+
#clock-cells = <1>;
66+
#phy-cells = <0>;
67+
68+
vdds-supply = <&vreg_l5a_0p88>;
69+
clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
70+
<&rpmhcc RPMH_CXO_CLK>;
71+
clock-names = "iface", "ref";
72+
};
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/display/panel/ilitek,ili9341.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Ilitek-9341 Display Panel
8+
9+
maintainers:
10+
- Dillon Min <[email protected]>
11+
12+
description: |
13+
Ilitek ILI9341 TFT panel driver with SPI control bus
14+
This is a driver for 320x240 TFT panels, accepting a rgb input
15+
streams with 16 bits or 18 bits.
16+
17+
allOf:
18+
- $ref: panel-common.yaml#
19+
20+
properties:
21+
compatible:
22+
items:
23+
- enum:
24+
# ili9341 240*320 Color on stm32f429-disco board
25+
- st,sf-tc240t-9370-t
26+
- const: ilitek,ili9341
27+
28+
reg: true
29+
30+
dc-gpios:
31+
maxItems: 1
32+
description: Display data/command selection (D/CX) of this DBI panel
33+
34+
spi-3wire: true
35+
36+
spi-max-frequency:
37+
const: 10000000
38+
39+
port: true
40+
41+
vci-supply:
42+
description: Analog voltage supply (2.5 .. 3.3V)
43+
44+
vddi-supply:
45+
description: Voltage supply for interface logic (1.65 .. 3.3 V)
46+
47+
vddi-led-supply:
48+
description: Voltage supply for the LED driver (1.65 .. 3.3 V)
49+
50+
additionalProperties: false
51+
52+
required:
53+
- compatible
54+
- reg
55+
- dc-gpios
56+
- port
57+
58+
examples:
59+
- |+
60+
spi {
61+
#address-cells = <1>;
62+
#size-cells = <0>;
63+
panel: display@0 {
64+
compatible = "st,sf-tc240t-9370-t",
65+
"ilitek,ili9341";
66+
reg = <0>;
67+
spi-3wire;
68+
spi-max-frequency = <10000000>;
69+
dc-gpios = <&gpiod 13 0>;
70+
port {
71+
panel_in: endpoint {
72+
remote-endpoint = <&display_out>;
73+
};
74+
};
75+
};
76+
};
77+
...
78+
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/display/panel/innolux,ej030na.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Innolux EJ030NA 3.0" (320x480 pixels) 24-bit TFT LCD panel
8+
9+
description: |
10+
The panel must obey the rules for a SPI slave device as specified in
11+
spi/spi-controller.yaml
12+
13+
maintainers:
14+
- Paul Cercueil <[email protected]>
15+
16+
allOf:
17+
- $ref: panel-common.yaml#
18+
19+
properties:
20+
compatible:
21+
const: innolux,ej030na
22+
23+
backlight: true
24+
port: true
25+
power-supply: true
26+
reg: true
27+
reset-gpios: true
28+
29+
required:
30+
- compatible
31+
- reg
32+
- power-supply
33+
- reset-gpios
34+
35+
unevaluatedProperties: false
36+
37+
examples:
38+
- |
39+
#include <dt-bindings/gpio/gpio.h>
40+
41+
spi {
42+
#address-cells = <1>;
43+
#size-cells = <0>;
44+
45+
panel@0 {
46+
compatible = "innolux,ej030na";
47+
reg = <0>;
48+
49+
spi-max-frequency = <10000000>;
50+
51+
reset-gpios = <&gpe 4 GPIO_ACTIVE_LOW>;
52+
power-supply = <&lcd_power>;
53+
54+
backlight = <&backlight>;
55+
56+
port {
57+
panel_input: endpoint {
58+
remote-endpoint = <&panel_output>;
59+
};
60+
};
61+
};
62+
};

0 commit comments

Comments
 (0)