Skip to content

Commit be3cd66

Browse files
committed
Merge tag 'drm-misc-next-2025-07-17' of https://gitlab.freedesktop.org/drm/misc/kernel into drm-next
drm-misc-next for 6.17: UAPI Changes: Cross-subsystem Changes: Core Changes: - mode_config: Change fb_create prototype to pass the drm_format_info and avoid redundant lookups in drivers - sched: kunit improvements, memory leak fixes, reset handling improvements - tests: kunit EDID update Driver Changes: - amdgpu: Hibernation fixes, structure lifetime fixes - nouveau: sched improvements - sitronix: Add Sitronix ST7567 Support - bridge: - Make connector available to bridge detect hook - panel: - More refcounting changes - New panels: BOE NE14QDM Signed-off-by: Dave Airlie <[email protected]> From: Maxime Ripard <[email protected]> Link: https://lore.kernel.org/r/20250717-efficient-kudu-of-fantasy-ff95e0@houat
2 parents af42cf3 + 28c5c48 commit be3cd66

File tree

152 files changed

+1106
-646
lines changed

Some content is hidden

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

152 files changed

+1106
-646
lines changed

Documentation/devicetree/bindings/display/panel/samsung,atna33xc20.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ properties:
1919
- const: samsung,atna33xc20
2020
- items:
2121
- enum:
22+
# Samsung 13" 3K (2880×1920 pixels) eDP AMOLED panel
23+
- samsung,atna30dw01
2224
# Samsung 14" WQXGA+ (2880×1800 pixels) eDP AMOLED panel
2325
- samsung,atna40yk20
2426
# Samsung 14.5" WQXGA+ (2880x1800 pixels) eDP AMOLED panel

Documentation/devicetree/bindings/display/rockchip/rockchip,dw-mipi-dsi.yaml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -58,12 +58,6 @@ properties:
5858
power-domains:
5959
maxItems: 1
6060

61-
"#address-cells":
62-
const: 1
63-
64-
"#size-cells":
65-
const: 0
66-
6761
required:
6862
- compatible
6963
- clocks
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/display/sitronix,st7567.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Sitronix ST7567 Display Controller
8+
9+
maintainers:
10+
- Javier Martinez Canillas <[email protected]>
11+
12+
description:
13+
Sitronix ST7567 is a driver and controller for monochrome
14+
dot matrix LCD panels.
15+
16+
allOf:
17+
- $ref: panel/panel-common.yaml#
18+
19+
properties:
20+
compatible:
21+
const: sitronix,st7567
22+
23+
reg:
24+
maxItems: 1
25+
26+
width-mm: true
27+
height-mm: true
28+
panel-timing: true
29+
30+
required:
31+
- compatible
32+
- reg
33+
- width-mm
34+
- height-mm
35+
- panel-timing
36+
37+
additionalProperties: false
38+
39+
examples:
40+
- |
41+
i2c {
42+
#address-cells = <1>;
43+
#size-cells = <0>;
44+
45+
display@3f {
46+
compatible = "sitronix,st7567";
47+
reg = <0x3f>;
48+
width-mm = <37>;
49+
height-mm = <27>;
50+
51+
panel-timing {
52+
hactive = <128>;
53+
vactive = <64>;
54+
hback-porch = <0>;
55+
vback-porch = <0>;
56+
clock-frequency = <0>;
57+
hfront-porch = <0>;
58+
hsync-len = <0>;
59+
vfront-porch = <0>;
60+
vsync-len = <0>;
61+
};
62+
};
63+
};

Documentation/gpu/drm-uapi.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -447,7 +447,7 @@ hang is usually the most critical one which can result in consequential hangs or
447447
complete wedging.
448448

449449
Task information
450-
---------------
450+
----------------
451451

452452
The information about which application (if any) was involved in the device
453453
wedging is useful for userspace if they want to notify the user about what
@@ -460,8 +460,8 @@ event string.
460460

461461
The reliability of this information is driver and hardware specific, and should
462462
be taken with a caution regarding it's precision. To have a big picture of what
463-
really happened, the devcoredump file provides should have much more detailed
464-
information about the device state and about the event.
463+
really happened, the devcoredump file provides much more detailed information
464+
about the device state and about the event.
465465

466466
Consumer prerequisites
467467
----------------------

MAINTAINERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7835,6 +7835,7 @@ F: drivers/gpu/drm/sitronix/st7586.c
78357835
DRM DRIVER FOR SITRONIX ST7571 PANELS
78367836
M: Marcus Folkesson <[email protected]>
78377837
S: Maintained
7838+
F: Documentation/devicetree/bindings/display/sitronix,st7567.yaml
78387839
F: Documentation/devicetree/bindings/display/sitronix,st7571.yaml
78397840
F: drivers/gpu/drm/sitronix/st7571-i2c.c
78407841

drivers/accel/amdxdna/aie2_ctx.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -361,7 +361,7 @@ aie2_sched_job_timedout(struct drm_sched_job *sched_job)
361361
aie2_hwctx_restart(xdna, hwctx);
362362
mutex_unlock(&xdna->dev_lock);
363363

364-
return DRM_GPU_SCHED_STAT_NOMINAL;
364+
return DRM_GPU_SCHED_STAT_RESET;
365365
}
366366

367367
static const struct drm_sched_backend_ops sched_ops = {

drivers/base/power/main.c

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,20 @@ static pm_message_t pm_transition;
6666
static DEFINE_MUTEX(async_wip_mtx);
6767
static int async_error;
6868

69+
/**
70+
* pm_hibernate_is_recovering - if recovering from hibernate due to error.
71+
*
72+
* Used to query if dev_pm_ops.thaw() is called for normal hibernation case or
73+
* recovering from some error.
74+
*
75+
* Return: true for error case, false for normal case.
76+
*/
77+
bool pm_hibernate_is_recovering(void)
78+
{
79+
return pm_transition.event == PM_EVENT_RECOVER;
80+
}
81+
EXPORT_SYMBOL_GPL(pm_hibernate_is_recovering);
82+
6983
static const char *pm_verb(int event)
7084
{
7185
switch (event) {

drivers/gpu/drm/amd/amdgpu/amdgpu_device.c

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5021,8 +5021,16 @@ static int amdgpu_device_evict_resources(struct amdgpu_device *adev)
50215021
return 0;
50225022

50235023
ret = amdgpu_ttm_evict_resources(adev, TTM_PL_VRAM);
5024-
if (ret)
5024+
if (ret) {
50255025
dev_warn(adev->dev, "evicting device resources failed\n");
5026+
return ret;
5027+
}
5028+
5029+
if (adev->in_s4) {
5030+
ret = ttm_device_prepare_hibernation(&adev->mman.bdev);
5031+
if (ret)
5032+
dev_err(adev->dev, "prepare hibernation failed, %d\n", ret);
5033+
}
50265034
return ret;
50275035
}
50285036

drivers/gpu/drm/amd/amdgpu/amdgpu_display.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1196,13 +1196,14 @@ static int amdgpu_display_get_fb_info(const struct amdgpu_framebuffer *amdgpu_fb
11961196
static int amdgpu_display_gem_fb_verify_and_init(struct drm_device *dev,
11971197
struct amdgpu_framebuffer *rfb,
11981198
struct drm_file *file_priv,
1199+
const struct drm_format_info *info,
11991200
const struct drm_mode_fb_cmd2 *mode_cmd,
12001201
struct drm_gem_object *obj)
12011202
{
12021203
int ret;
12031204

12041205
rfb->base.obj[0] = obj;
1205-
drm_helper_mode_fill_fb_struct(dev, &rfb->base, mode_cmd);
1206+
drm_helper_mode_fill_fb_struct(dev, &rfb->base, info, mode_cmd);
12061207
/* Verify that the modifier is supported. */
12071208
if (!drm_any_plane_has_format(dev, mode_cmd->pixel_format,
12081209
mode_cmd->modifier[0])) {
@@ -1297,6 +1298,7 @@ static int amdgpu_display_framebuffer_init(struct drm_device *dev,
12971298
struct drm_framebuffer *
12981299
amdgpu_display_user_framebuffer_create(struct drm_device *dev,
12991300
struct drm_file *file_priv,
1301+
const struct drm_format_info *info,
13001302
const struct drm_mode_fb_cmd2 *mode_cmd)
13011303
{
13021304
struct amdgpu_framebuffer *amdgpu_fb;
@@ -1330,7 +1332,7 @@ amdgpu_display_user_framebuffer_create(struct drm_device *dev,
13301332
}
13311333

13321334
ret = amdgpu_display_gem_fb_verify_and_init(dev, amdgpu_fb, file_priv,
1333-
mode_cmd, obj);
1335+
info, mode_cmd, obj);
13341336
if (ret) {
13351337
kfree(amdgpu_fb);
13361338
drm_gem_object_put(obj);

drivers/gpu/drm/amd/amdgpu/amdgpu_display.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ uint32_t amdgpu_display_supported_domains(struct amdgpu_device *adev,
4444
struct drm_framebuffer *
4545
amdgpu_display_user_framebuffer_create(struct drm_device *dev,
4646
struct drm_file *file_priv,
47+
const struct drm_format_info *info,
4748
const struct drm_mode_fb_cmd2 *mode_cmd);
4849
const struct drm_format_info *
4950
amdgpu_lookup_format_info(u32 format, uint64_t modifier);

0 commit comments

Comments
 (0)