Skip to content

Commit aa628eb

Browse files
committed
Merge tag 'drm-misc-next-2024-10-09' of https://gitlab.freedesktop.org/drm/misc/kernel into drm-next
drm-misc-next for v6.13: UAPI Changes: - Add drm fdinfo support to panthor, and add sysfs knob to toggle. Cross-subsystem Changes: - Convert fbdev drivers to use backlight power constants. - Some small dma-fence fixes. - Some kernel-doc fixes. Core Changes: - Small drm client fixes. - Document requirements that you need to file a bug before marking a test as flaky. - Remove swapped and pinned bo's from TTM lru list. Driver Changes: - Assorted small fixes to panel/elida-kd35t133, nouveau, vc4, imx. - Fix some bridges to drop cached edids on power off. - Add Jenson BL-JT60050-01A, Samsung s6e3ha8 & AMS639RQ08 panels. - Make 180° rotation work on ilitek-ili9881c, even for already-rotated panels. - Signed-off-by: Dave Airlie <[email protected]> # Conflicts: # drivers/gpu/drm/panthor/panthor_drv.c From: Maarten Lankhorst <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
2 parents 54bc1d3 + 4c93ede commit aa628eb

Some content is hidden

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

76 files changed

+1759
-216
lines changed
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
What: /sys/bus/platform/drivers/panthor/.../profiling
2+
Date: September 2024
3+
KernelVersion: 6.11.0
4+
Contact: Adrian Larumbe <[email protected]>
5+
Description:
6+
Bitmask to enable drm fdinfo's job profiling measurements.
7+
Valid values are:
8+
0: Don't enable fdinfo job profiling sources.
9+
1: Enable GPU cycle measurements for running jobs.
10+
2: Enable GPU timestamp sampling for running jobs.

Documentation/devicetree/bindings/display/panel/panel-lvds.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,8 @@ properties:
5050
- hannstar,hsd101pww2
5151
# Hydis Technologies 7" WXGA (800x1280) TFT LCD LVDS panel
5252
- hydis,hv070wx2-1e0
53+
# Jenson Display BL-JT60050-01A 7" WSVGA (1024x600) color TFT LCD LVDS panel
54+
- jenson,bl-jt60050-01a
5355
- tbs,a711-panel
5456

5557
- const: panel-lvds
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
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/samsung,ams639rq08.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Samsung AMS639RQ08 EA8076-based 6.39" 1080x2340 MIPI-DSI Panel
8+
9+
maintainers:
10+
- Danila Tikhonov <[email protected]>
11+
- Jens Reidel <[email protected]>
12+
13+
description:
14+
The Samsung AMS639RQ08 is a 6.39 inch 1080x2340 MIPI-DSI CMD mode AMOLED panel.
15+
16+
allOf:
17+
- $ref: panel-common.yaml#
18+
19+
properties:
20+
compatible:
21+
const: samsung,ams639rq08
22+
23+
reg:
24+
maxItems: 1
25+
26+
vdd3p3-supply:
27+
description: 3.3V source voltage rail
28+
29+
vddio-supply:
30+
description: I/O source voltage rail
31+
32+
vsn-supply:
33+
description: Negative source voltage rail
34+
35+
vsp-supply:
36+
description: Positive source voltage rail
37+
38+
reset-gpios: true
39+
port: true
40+
41+
required:
42+
- compatible
43+
- reg
44+
- vdd3p3-supply
45+
- vddio-supply
46+
- vsn-supply
47+
- vsp-supply
48+
- reset-gpios
49+
- port
50+
51+
additionalProperties: false
52+
53+
examples:
54+
- |
55+
#include <dt-bindings/gpio/gpio.h>
56+
57+
dsi {
58+
#address-cells = <1>;
59+
#size-cells = <0>;
60+
61+
panel@0 {
62+
compatible = "samsung,ams639rq08";
63+
reg = <0>;
64+
65+
vdd3p3-supply = <&vreg_l18a_2p8>;
66+
vddio-supply = <&vreg_l13a_1p8>;
67+
vsn-supply = <&vreg_ibb>;
68+
vsp-supply = <&vreg_lab>;
69+
70+
reset-gpios = <&pm6150l_gpios 9 GPIO_ACTIVE_LOW>;
71+
72+
port {
73+
panel_in: endpoint {
74+
remote-endpoint = <&mdss_dsi0_out>;
75+
};
76+
};
77+
};
78+
};
79+
80+
...
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
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/samsung,s6e3ha8.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Samsung s6e3ha8 AMOLED DSI panel
8+
9+
description: The s6e3ha8 is a 1440x2960 DPI display panel from Samsung Mobile
10+
Displays (SMD).
11+
12+
maintainers:
13+
- Dzmitry Sankouski <[email protected]>
14+
15+
allOf:
16+
- $ref: panel-common.yaml#
17+
18+
properties:
19+
compatible:
20+
const: samsung,s6e3ha8
21+
22+
reg:
23+
maxItems: 1
24+
25+
reset-gpios: true
26+
27+
port: true
28+
29+
vdd3-supply:
30+
description: VDD regulator
31+
32+
vci-supply:
33+
description: VCI regulator
34+
35+
vddr-supply:
36+
description: VDDR regulator
37+
38+
required:
39+
- compatible
40+
- reset-gpios
41+
- vdd3-supply
42+
- vci-supply
43+
- vddr-supply
44+
45+
unevaluatedProperties: false
46+
47+
examples:
48+
- |
49+
#include <dt-bindings/gpio/gpio.h>
50+
51+
dsi {
52+
#address-cells = <1>;
53+
#size-cells = <0>;
54+
55+
panel@0 {
56+
compatible = "samsung,s6e3ha8";
57+
reg = <0>;
58+
vci-supply = <&s2dos05_ldo4>;
59+
vddr-supply = <&s2dos05_buck1>;
60+
vdd3-supply = <&s2dos05_ldo1>;
61+
te-gpios = <&tlmm 10 GPIO_ACTIVE_HIGH>;
62+
reset-gpios = <&tlmm 6 GPIO_ACTIVE_HIGH>;
63+
pinctrl-0 = <&sde_dsi_active &sde_te_active_sleep>;
64+
pinctrl-1 = <&sde_dsi_suspend &sde_te_active_sleep>;
65+
pinctrl-names = "default", "sleep";
66+
67+
port {
68+
panel_in: endpoint {
69+
remote-endpoint = <&mdss_dsi0_out>;
70+
};
71+
};
72+
};
73+
};
74+
75+
...

Documentation/devicetree/bindings/vendor-prefixes.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -752,6 +752,8 @@ patternProperties:
752752
description: Japan Display Inc.
753753
"^jedec,.*":
754754
description: JEDEC Solid State Technology Association
755+
"^jenson,.*":
756+
description: Jenson Display Co. Ltd.
755757
"^jesurun,.*":
756758
description: Shenzhen Jesurun Electronics Business Dept.
757759
"^jethome,.*":

Documentation/gpu/automated_testing.rst

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,19 +68,25 @@ known to behave unreliably. These tests won't cause a job to fail regardless of
6868
the result. They will still be run.
6969

7070
Each new flake entry must be associated with a link to the email reporting the
71-
bug to the author of the affected driver, the board name or Device Tree name of
72-
the board, the first kernel version affected, the IGT version used for tests,
73-
and an approximation of the failure rate.
71+
bug to the author of the affected driver or the relevant GitLab issue. The entry
72+
must also include the board name or Device Tree name, the first kernel version
73+
affected, the IGT version used for tests, and an approximation of the failure rate.
7474

7575
They should be provided under the following format::
7676

77-
# Bug Report: $LORE_OR_PATCHWORK_URL
77+
# Bug Report: $LORE_URL_OR_GITLAB_ISSUE
7878
# Board Name: broken-board.dtb
7979
# Linux Version: 6.6-rc1
8080
# IGT Version: 1.28-gd2af13d9f
8181
# Failure Rate: 100
8282
flaky-test
8383

84+
Use the appropriate link below to create a GitLab issue:
85+
amdgpu driver: https://gitlab.freedesktop.org/drm/amd/-/issues
86+
i915 driver: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues
87+
msm driver: https://gitlab.freedesktop.org/drm/msm/-/issues
88+
xe driver: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues
89+
8490
drivers/gpu/drm/ci/${DRIVER_NAME}-${HW_REVISION}-skips.txt
8591
-----------------------------------------------------------
8692

Documentation/gpu/drm-usage-stats.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,11 @@ scope of each device, in which case `drm-pdev` shall be present as well.
7373
Userspace should make sure to not double account any usage statistics by using
7474
the above described criteria in order to associate data to individual clients.
7575

76+
- drm-client-name: <valstr>
77+
78+
String optionally set by userspace using DRM_IOCTL_SET_CLIENT_NAME.
79+
80+
7681
Utilization
7782
^^^^^^^^^^^
7883

Documentation/gpu/panthor.rst

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
.. SPDX-License-Identifier: GPL-2.0+
2+
3+
=========================
4+
drm/Panthor CSF driver
5+
=========================
6+
7+
.. _panfrost-usage-stats:
8+
9+
Panthor DRM client usage stats implementation
10+
==============================================
11+
12+
The drm/Panthor driver implements the DRM client usage stats specification as
13+
documented in :ref:`drm-client-usage-stats`.
14+
15+
Example of the output showing the implemented key value pairs and entirety of
16+
the currently possible format options:
17+
18+
::
19+
pos: 0
20+
flags: 02400002
21+
mnt_id: 29
22+
ino: 491
23+
drm-driver: panthor
24+
drm-client-id: 10
25+
drm-engine-panthor: 111110952750 ns
26+
drm-cycles-panthor: 94439687187
27+
drm-maxfreq-panthor: 1000000000 Hz
28+
drm-curfreq-panthor: 1000000000 Hz
29+
drm-total-memory: 16480 KiB
30+
drm-shared-memory: 0
31+
drm-active-memory: 16200 KiB
32+
drm-resident-memory: 16480 KiB
33+
drm-purgeable-memory: 0
34+
35+
Possible `drm-engine-` key names are: `panthor`.
36+
`drm-curfreq-` values convey the current operating frequency for that engine.
37+
38+
Users must bear in mind that engine and cycle sampling are disabled by default,
39+
because of power saving concerns. `fdinfo` users and benchmark applications which
40+
query the fdinfo file must make sure to toggle the job profiling status of the
41+
driver by writing into the appropriate sysfs node::
42+
43+
echo <N> > /sys/bus/platform/drivers/panthor/[a-f0-9]*.gpu/profiling
44+
45+
Where `N` is a bit mask where cycle and timestamp sampling are respectively
46+
enabled by the first and second bits.

MAINTAINERS

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7383,6 +7383,12 @@ S: Maintained
73837383
F: Documentation/devicetree/bindings/display/panel/samsung,s6d7aa0.yaml
73847384
F: drivers/gpu/drm/panel/panel-samsung-s6d7aa0.c
73857385

7386+
DRM DRIVER FOR SAMSUNG S6E3HA8 PANELS
7387+
M: Dzmitry Sankouski <[email protected]>
7388+
S: Maintained
7389+
F: Documentation/devicetree/bindings/display/panel/samsung,s6e3ha8.yaml
7390+
F: drivers/gpu/drm/panel/panel-samsung-s6e3ha8.c
7391+
73867392
DRM DRIVER FOR SITRONIX ST7586 PANELS
73877393
M: David Lechner <[email protected]>
73887394
S: Maintained

drivers/dma-buf/dma-fence.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -412,7 +412,7 @@ int dma_fence_signal_timestamp(struct dma_fence *fence, ktime_t timestamp)
412412
unsigned long flags;
413413
int ret;
414414

415-
if (!fence)
415+
if (WARN_ON(!fence))
416416
return -EINVAL;
417417

418418
spin_lock_irqsave(fence->lock, flags);
@@ -464,7 +464,7 @@ int dma_fence_signal(struct dma_fence *fence)
464464
int ret;
465465
bool tmp;
466466

467-
if (!fence)
467+
if (WARN_ON(!fence))
468468
return -EINVAL;
469469

470470
tmp = dma_fence_begin_signalling();

0 commit comments

Comments
 (0)