[PULL] drm-misc-next
Thomas Zimmermann
tzimmermann at suse.de
Thu Feb 20 08:53:21 UTC 2025
Hi Dave, Sima,
this is the weekly PR for drm-misc-next. It has quite a number of
highlights:
* There is the new device wedge event, which allows drivers to report
unresponsive hardware to user space via a uevent. Drivers for AMD and
Intel HW already use the functionality.
* The i2c subdirectory has been removed after all code has been moved
elsewhere.
* Atomic helpers now support asyncronous pageflips on arbitrary planes.
Amdgpu already supports this.
And of course there's the usual amount of fixes, cleanups and small
additions.
Best regards
Thomas
drm-misc-next-2025-02-20:
drm-misc-next for v6.15:
UAPI Changes:
device-wedged events:
- Let's drivers notify userspace of hung-up devices via uevent
Cross-subsystem Changes:
media:
- cec: tda998x: Import driver from DRM
Core Changes:
- Cleanups
atomic-helper:
- async-flip: Support on arbitrary planes
- writeback: Fix use-after-free error
- Document atomic-state history
- Pleanty of cleanups to callback parameter names
doc:
- Test for kernel-doc errors
format-helper:
- Support ARGB8888-to-ARGB4444 pixel-format conversion
panel-orientation-quirks:
- Add quirks for AYANEO 2S, AYA NEO Flip DS and KB, AYA NEO Slide, GPD Win 2,
OneXPlayer Mini (Intel)
sched:
- Add parameter struct for init
Driver Changes:
amdgpu:
- Support device-wedged event
- Support async pageflips on overlay planes
amdxdna:
- Refactoring
ast:
- Refactor cursor handling
bridge:
- Pass full atomic state to various callbacks
- analogix-dp: Cleanups
- cdns-mhdp8546: Fix clock enable/disable
- nwl-dsi: Set bridge type
- panel: Cleanups
- ti-sn65dsi83: Add error recovery; Set bridge type
i2c:
- tda998x: Drop unused platform_data; Split driver into separate media and bridge drivers
- Remove the obsolete directory
i915:
- Support device-wedged event
nouveau:
- Fixes
panel:
- visionox-r66451: Use multi-style MIPI-DSI functions
v3d:
- Handle clock
vkms:
- Fix use-after-free error
xe:
- Support device-wedged event
xlnx:
- Use mutex guards
- Cleanups
The following changes since commit 0ed1356af8f629ae807963b7db4e501e3b580bc2:
Merge tag 'drm-misc-next-2025-02-12' of https://gitlab.freedesktop.org/drm/misc/kernel into drm-next (2025-02-14 10:24:02 +1000)
are available in the Git repository at:
https://gitlab.freedesktop.org/drm/misc/kernel.git tags/drm-misc-next-2025-02-20
for you to fetch changes up to e82e1a0c22d841f379b1c768469dcdaae650e443:
drm/ast: cursor: Move implementation to separate source file (2025-02-20 08:38:34 +0100)
----------------------------------------------------------------
drm-misc-next for v6.15:
UAPI Changes:
device-wedged events:
- Let's drivers notify userspace of hung-up devices via uevent
Cross-subsystem Changes:
media:
- cec: tda998x: Import driver from DRM
Core Changes:
- Cleanups
atomic-helper:
- async-flip: Support on arbitrary planes
- writeback: Fix use-after-free error
- Document atomic-state history
- Pleanty of cleanups to callback parameter names
doc:
- Test for kernel-doc errors
format-helper:
- Support ARGB8888-to-ARGB4444 pixel-format conversion
panel-orientation-quirks:
- Add quirks for AYANEO 2S, AYA NEO Flip DS and KB, AYA NEO Slide, GPD Win 2,
OneXPlayer Mini (Intel)
sched:
- Add parameter struct for init
Driver Changes:
amdgpu:
- Support device-wedged event
- Support async pageflips on overlay planes
amdxdna:
- Refactoring
ast:
- Refactor cursor handling
bridge:
- Pass full atomic state to various callbacks
- analogix-dp: Cleanups
- cdns-mhdp8546: Fix clock enable/disable
- nwl-dsi: Set bridge type
- panel: Cleanups
- ti-sn65dsi83: Add error recovery; Set bridge type
i2c:
- tda998x: Drop unused platform_data; Split driver into separate media and bridge drivers
- Remove the obsolete directory
i915:
- Support device-wedged event
nouveau:
- Fixes
panel:
- visionox-r66451: Use multi-style MIPI-DSI functions
v3d:
- Handle clock
vkms:
- Fix use-after-free error
xe:
- Support device-wedged event
xlnx:
- Use mutex guards
- Cleanups
----------------------------------------------------------------
Alexander Stein (2):
drm/bridge: ti-sn65dsi83: Set bridge type
drm/bridge: nwl-dsi: Set bridge type
Andrew Wyatt (5):
drm: panel-orientation-quirks: Add support for AYANEO 2S
drm: panel-orientation-quirks: Add quirks for AYA NEO Flip DS and KB
drm: panel-orientation-quirks: Add quirk for AYA NEO Slide
drm: panel-orientation-quirks: Add new quirk for GPD Win 2
drm: panel-orientation-quirks: Add quirk for OneXPlayer Mini (Intel)
André Almeida (3):
drm/amdgpu: Use device wedged event
drm/atomic: Let drivers decide which planes to async flip
drm/amdgpu: Enable async flip on overlay planes
Bart Van Assche (1):
drm: zynqmp_dp: Fix a deadlock in zynqmp_dp_ignore_hpd_set()
Dan Carpenter (3):
drm/tests: Fix a test in drm_test_check_valid_clones()
drm: writeback: Fix use after free in drm_writeback_connector_cleanup()
drm/nouveau: Fix error pointer dereference in r535_gsp_msgq_recv()
Dmitry Baryshkov (4):
drm/i2c: tda998x: drop support for platform_data
media: cec: move driver for TDA9950 from drm/i2c
drm/i2c: move TDA998x driver under drivers/gpu/drm/bridge
drm: drop i2c subdir from Makefile
Herve Codina (4):
dt-bindings: display: bridge: sn65dsi83: Add interrupt
drm/atomic-helper: Introduce drm_atomic_helper_reset_crtc()
drm/vc4: hdmi: Use drm_atomic_helper_reset_crtc()
drm: bridge: ti-sn65dsi83: Add error recovery mechanism
Jani Nikula (2):
drm/client: include types.h to make drm_client_event.h self-contained
drm: ensure drm headers are self-contained and pass kernel-doc
Jinjie Ruan (1):
drm: zynqmp_dp: Use devm_platform_ioremap_resource_byname()
José Expósito (1):
drm/vkms: Fix use after free and double free on init error
Lizhi Hou (1):
accel/amdxdna: Refactor hardware context destroy routine
Luca Ceresoli (5):
drm/debugfs: fix printk format for bridge index
drm: of: drm_of_find_panel_or_bridge: move misplaced comment
drm/bridge: panel: use drm_bridge_is_panel() instead of open code
drm/bridge: panel: drm_panel_bridge_remove: warn when called on non-panel bridge
drm/bridge: panel: forbid initializing a panel with unknown connector type
Maxime Ripard (26):
drm/atomic: Document history of drm_atomic_state
drm/bridge: Pass full state to atomic_pre_enable
drm/bridge: Pass full state to atomic_enable
drm/bridge: Pass full state to atomic_disable
drm/bridge: Pass full state to atomic_post_disable
drm/atomic-helper: Fix commit_tail state variable name
drm/atomic-helper: Change parameter name of drm_atomic_helper_wait_for_dependencies()
drm/atomic-helper: Change parameter name of drm_atomic_helper_commit_tail()
drm/atomic-helper: Change parameter name of drm_atomic_helper_commit_tail_rpm()
drm/atomic-helper: Change parameter name of drm_atomic_helper_modeset_disables()
drm/atomic-helper: Change parameter name of disable_outputs()
drm/bridge: Change parameter name of drm_atomic_bridge_chain_disable()
drm/bridge: Change parameter name of drm_atomic_bridge_chain_post_disable()
drm/atomic-helper: Change parameter name of drm_atomic_helper_update_legacy_modeset_state()
drm/atomic-helper: Change parameter name of crtc_set_mode()
drm/atomic-helper: Change parameter name of drm_atomic_helper_commit_planes()
drm/atomic-helper: Change parameter name of drm_atomic_helper_commit_modeset_enables()
drm/bridge: Change parameter name of drm_atomic_bridge_chain_pre_enable()
drm/bridge: Change parameter name of drm_atomic_bridge_chain_enable()
drm/atomic-helper: Change parameter name of drm_atomic_helper_commit_writebacks()
drm/atomic-helper: Change parameter name of drm_atomic_helper_fake_vblank()
drm/atomic-helper: Change parameter name of drm_atomic_helper_commit_hw_done()
drm/atomic-helper: Change parameter name of drm_atomic_helper_wait_for_vblanks()
drm/atomic-helper: Change parameter name of drm_atomic_helper_cleanup_planes()
drm/atomic-helper: Change parameter name of drm_atomic_helper_commit_cleanup_done()
drm/atomic-helper: Change parameter name of drm_atomic_helper_wait_for_flip_done()
Philipp Stanner (1):
drm/sched: Use struct for drm_sched_init() params
Raag Jadav (4):
drm: Introduce device wedged event
drm/doc: Document device wedged event
drm/xe: Use device wedged event
drm/i915: Use device wedged event
Sean Anderson (1):
drm: zynqmp_dp: Use scope-based mutex helpers
Shixiong Ou (1):
drm/bridge: analogix_dp: Use devm_platform_ioremap_resource()
Stefan Wahren (1):
drm/v3d: Add clock handling
Tejas Vipin (1):
drm/panel: visionox-r66451: transition to mipi_dsi wrapped functions
Thomas Hellström (1):
MAINTAINERS: Add TTM reviewers
Thomas Zimmermann (5):
Merge drm/drm-next into drm-misc-next
drm/ast: cursor: Calculate checksum in helper
drm/ast: cursor: Move format conversion to shared helper
drm/ast: cursor: Add support for ARGB4444
drm/ast: cursor: Move implementation to separate source file
Vitalii Mordan (1):
gpu: cdns-mhdp8546: fix call balance of mhdp->clk handling routines
.../bindings/display/bridge/ti,sn65dsi83.yaml | 3 +
Documentation/gpu/drm-uapi.rst | 116 +++++++-
Kbuild | 1 +
MAINTAINERS | 5 +-
drivers/accel/amdxdna/aie2_ctx.c | 49 ++--
drivers/accel/amdxdna/amdxdna_ctx.c | 2 +
drivers/accel/amdxdna/amdxdna_ctx.h | 3 +
drivers/gpu/drm/Kconfig | 13 +-
drivers/gpu/drm/Makefile | 19 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 22 +-
.../drm/amd/display/amdgpu_dm/amdgpu_dm_plane.c | 11 +-
drivers/gpu/drm/arm/Kconfig | 1 +
drivers/gpu/drm/ast/Makefile | 1 +
drivers/gpu/drm/ast/ast_cursor.c | 309 +++++++++++++++++++++
drivers/gpu/drm/ast/ast_drv.h | 41 ++-
drivers/gpu/drm/ast/ast_mode.c | 273 +-----------------
drivers/gpu/drm/bridge/Kconfig | 8 +
drivers/gpu/drm/bridge/Makefile | 4 +
drivers/gpu/drm/bridge/adv7511/adv7511_drv.c | 4 +-
drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 29 +-
drivers/gpu/drm/bridge/analogix/anx7625.c | 8 +-
.../gpu/drm/bridge/cadence/cdns-mhdp8546-core.c | 17 +-
drivers/gpu/drm/bridge/chipone-icn6211.c | 7 +-
drivers/gpu/drm/bridge/fsl-ldb.c | 5 +-
drivers/gpu/drm/bridge/imx/imx8mp-hdmi-pvi.c | 7 +-
drivers/gpu/drm/bridge/imx/imx8qm-ldb.c | 10 +-
drivers/gpu/drm/bridge/imx/imx8qxp-ldb.c | 21 +-
.../gpu/drm/bridge/imx/imx8qxp-pixel-combiner.c | 5 +-
drivers/gpu/drm/bridge/imx/imx8qxp-pixel-link.c | 10 +-
drivers/gpu/drm/bridge/imx/imx8qxp-pxl2dpi.c | 8 +-
drivers/gpu/drm/bridge/ite-it6263.c | 11 +-
drivers/gpu/drm/bridge/ite-it6505.c | 9 +-
drivers/gpu/drm/bridge/ite-it66121.c | 5 +-
drivers/gpu/drm/bridge/lontium-lt9211.c | 5 +-
drivers/gpu/drm/bridge/lontium-lt9611.c | 18 +-
drivers/gpu/drm/bridge/nwl-dsi.c | 11 +-
drivers/gpu/drm/bridge/panel.c | 16 +-
drivers/gpu/drm/bridge/parade-ps8640.c | 4 +-
drivers/gpu/drm/bridge/samsung-dsim.c | 8 +-
drivers/gpu/drm/bridge/sii902x.c | 4 +-
drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.c | 5 +-
drivers/gpu/drm/bridge/synopsys/dw-hdmi.c | 5 +-
drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi.c | 6 +-
drivers/gpu/drm/bridge/synopsys/dw-mipi-dsi2.c | 6 +-
drivers/gpu/drm/bridge/tc358762.c | 9 +-
drivers/gpu/drm/bridge/tc358767.c | 20 +-
drivers/gpu/drm/{i2c => bridge}/tda998x_drv.c | 49 +---
drivers/gpu/drm/bridge/ti-dlpc3433.c | 6 +-
drivers/gpu/drm/bridge/ti-sn65dsi83.c | 150 +++++++++-
drivers/gpu/drm/bridge/ti-sn65dsi86.c | 10 +-
drivers/gpu/drm/bridge/ti-tdp158.c | 6 +-
drivers/gpu/drm/drm_atomic_helper.c | 285 +++++++++++--------
drivers/gpu/drm/drm_atomic_uapi.c | 37 ++-
drivers/gpu/drm/drm_bridge.c | 79 ++----
drivers/gpu/drm/drm_debugfs.c | 2 +-
drivers/gpu/drm/drm_drv.c | 68 +++++
drivers/gpu/drm/drm_format_helper.c | 69 +++++
drivers/gpu/drm/drm_of.c | 2 +-
drivers/gpu/drm/drm_panel.c | 5 +-
drivers/gpu/drm/drm_panel_orientation_quirks.c | 46 ++-
drivers/gpu/drm/drm_writeback.c | 2 +-
drivers/gpu/drm/etnaviv/etnaviv_sched.c | 20 +-
drivers/gpu/drm/i2c/Kconfig | 18 --
drivers/gpu/drm/i2c/Makefile | 4 -
drivers/gpu/drm/i915/gt/intel_reset.c | 3 +
drivers/gpu/drm/imagination/pvr_queue.c | 18 +-
drivers/gpu/drm/ingenic/ingenic-drm-drv.c | 4 +-
drivers/gpu/drm/lima/lima_sched.c | 16 +-
drivers/gpu/drm/loongson/lsdc_plane.c | 3 +-
drivers/gpu/drm/mediatek/mtk_dp.c | 6 +-
drivers/gpu/drm/mediatek/mtk_dsi.c | 8 +-
drivers/gpu/drm/mediatek/mtk_hdmi.c | 9 +-
drivers/gpu/drm/mediatek/mtk_plane.c | 2 +-
drivers/gpu/drm/meson/meson_encoder_cvbs.c | 5 +-
drivers/gpu/drm/meson/meson_encoder_dsi.c | 5 +-
drivers/gpu/drm/meson/meson_encoder_hdmi.c | 5 +-
drivers/gpu/drm/msm/disp/mdp5/mdp5_plane.c | 2 +-
drivers/gpu/drm/msm/dp/dp_display.c | 28 +-
drivers/gpu/drm/msm/dp/dp_drm.c | 19 +-
drivers/gpu/drm/msm/dp/dp_drm.h | 6 +-
drivers/gpu/drm/msm/msm_ringbuffer.c | 17 +-
drivers/gpu/drm/nouveau/nouveau_sched.c | 16 +-
drivers/gpu/drm/nouveau/nvkm/subdev/gsp/r535.c | 1 +
drivers/gpu/drm/omapdrm/dss/hdmi4.c | 5 +-
drivers/gpu/drm/omapdrm/dss/hdmi5.c | 5 +-
drivers/gpu/drm/panel/panel-visionox-r66451.c | 181 +++++-------
drivers/gpu/drm/panfrost/panfrost_job.c | 20 +-
drivers/gpu/drm/panthor/panthor_mmu.c | 16 +-
drivers/gpu/drm/panthor/panthor_sched.c | 28 +-
drivers/gpu/drm/renesas/rcar-du/rcar_lvds.c | 5 +-
drivers/gpu/drm/renesas/rcar-du/rcar_mipi_dsi.c | 4 +-
drivers/gpu/drm/renesas/rz-du/rzg2l_mipi_dsi.c | 5 +-
drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 2 +-
drivers/gpu/drm/scheduler/sched_main.c | 50 ++--
drivers/gpu/drm/stm/lvds.c | 5 +-
drivers/gpu/drm/tegra/dc.c | 3 +-
drivers/gpu/drm/tests/drm_atomic_state_test.c | 2 +-
drivers/gpu/drm/v3d/v3d_drv.c | 25 +-
drivers/gpu/drm/v3d/v3d_sched.c | 65 ++---
drivers/gpu/drm/vc4/vc4_dsi.c | 9 +-
drivers/gpu/drm/vc4/vc4_hdmi.c | 30 +-
drivers/gpu/drm/vc4/vc4_plane.c | 2 +-
drivers/gpu/drm/vkms/vkms_drv.c | 15 +-
drivers/gpu/drm/xe/xe_device.c | 7 +-
drivers/gpu/drm/xe/xe_execlist.c | 15 +-
drivers/gpu/drm/xe/xe_gpu_scheduler.c | 17 +-
drivers/gpu/drm/xlnx/zynqmp_dp.c | 165 ++++-------
drivers/media/cec/i2c/Kconfig | 9 +
drivers/media/cec/i2c/Makefile | 1 +
drivers/{gpu/drm => media/cec}/i2c/tda9950.c | 0
include/Kbuild | 1 +
include/drm/Makefile | 18 ++
include/drm/drm_atomic.h | 31 +++
include/drm/drm_atomic_helper.h | 2 +
include/drm/drm_bridge.h | 8 +-
include/drm/drm_client_event.h | 2 +
include/drm/drm_device.h | 8 +
include/drm/drm_drv.h | 1 +
include/drm/drm_format_helper.h | 3 +
include/drm/drm_modeset_helper_vtables.h | 7 +-
include/drm/gpu_scheduler.h | 36 ++-
include/drm/i2c/tda998x.h | 40 ---
122 files changed, 1760 insertions(+), 1273 deletions(-)
create mode 100644 drivers/gpu/drm/ast/ast_cursor.c
rename drivers/gpu/drm/{i2c => bridge}/tda998x_drv.c (97%)
delete mode 100644 drivers/gpu/drm/i2c/Kconfig
delete mode 100644 drivers/gpu/drm/i2c/Makefile
rename drivers/{gpu/drm => media/cec}/i2c/tda9950.c (100%)
create mode 100644 include/Kbuild
create mode 100644 include/drm/Makefile
delete mode 100644 include/drm/i2c/tda998x.h
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)
More information about the dri-devel
mailing list