Hi Dave and Sima, this is the first PR for drm-misc-next for Linux v6.9. It's fairly small compared to typical PRs; probably because of the holidays. Most of the changes appear to by fixes. There's also support for a few more panels and HDMI support for a Rockchip chipset. Best regards Thomas drm-misc-next-2024-01-11: drm-misc-next for v6.9: UAPI Changes: virtio: - add Venus capset defines Cross-subsystem Changes: Core Changes: - fix drm_fixp2int_ceil() - documentation fixes - clean ups - allow DRM_MM_DEBUG with DRM=m - build fixes for debugfs support - EDID cleanups - sched: error-handling fixes - ttm: add tests Driver Changes: bridge: - ite-6505: fix DP link-training bug - samsung-dsim: fix error checking in probe - tc358767: fix regmap usage efifb: - use copy of global screen_info state hisilicon: - fix EDID includes mgag200: - improve ioremap usage - convert to struct drm_edid nouveau: - disp: use kmemdup() - fix EDID includes - documentation fixes panel: - ltk050h3146w: error-handling fixes - panel-edp: support delay between power-on and enable; use put_sync in unprepare; support Mediatek MT8173 Chromebooks, BOE NV116WHM-N49 V8.0, BOE NV122WUM-N41, CSO MNC207QS1-1 plus DT bindings - panel-lvds: support EDT ETML0700Z9NDHA plus DT bindings - panel-novatek: FRIDA FRD400B25025-A-CTK plus DT bindings qaic: - fixes to BO handling - make use of DRM managed release - fix order of remove operations rockchip: - analogix_dp: get encoder port from DT - inno_hdmi: support HDMI for RK3128 - lvds: error-handling fixes simplefb: - fix logging ssd130x: - support SSD133x plus DT bindings tegra: - fix error handling tilcdc: - make use of DRM managed release v3d: - show memory stats in debugfs vc4: - fix error handling in plane prepare_fb - fix framebuffer test in plane helpers vesafb: - use copy of global screen_info state virtio: - cleanups vkms: - fix OOB access when programming the LUT - Kconfig improvements vmwgfx: - unmap surface before changing plane state - fix memory leak in error handling - documentation fixes The following changes since commit b1a2aa9bcbb88a7dc1c4df98dbf4f4df9ca79c9f: drm: ci: Update xfails (2023-12-13 15:18:30 -0300) are available in the Git repository at: git://anongit.freedesktop.org/drm/drm-misc tags/drm-misc-next-2024-01-11 for you to fetch changes up to 502756e23360d1192c496bc6791e97621e8578d8: drm/v3d: Show the memory-management stats on debugfs (2024-01-11 11:45:47 -0300) ---------------------------------------------------------------- drm-misc-next for v6.9: UAPI Changes: virtio: - add Venus capset defines Cross-subsystem Changes: Core Changes: - fix drm_fixp2int_ceil() - documentation fixes - clean ups - allow DRM_MM_DEBUG with DRM=m - build fixes for debugfs support - EDID cleanups - sched: error-handling fixes - ttm: add tests Driver Changes: bridge: - ite-6505: fix DP link-training bug - samsung-dsim: fix error checking in probe - tc358767: fix regmap usage efifb: - use copy of global screen_info state hisilicon: - fix EDID includes mgag200: - improve ioremap usage - convert to struct drm_edid nouveau: - disp: use kmemdup() - fix EDID includes - documentation fixes panel: - ltk050h3146w: error-handling fixes - panel-edp: support delay between power-on and enable; use put_sync in unprepare; support Mediatek MT8173 Chromebooks, BOE NV116WHM-N49 V8.0, BOE NV122WUM-N41, CSO MNC207QS1-1 plus DT bindings - panel-lvds: support EDT ETML0700Z9NDHA plus DT bindings - panel-novatek: FRIDA FRD400B25025-A-CTK plus DT bindings qaic: - fixes to BO handling - make use of DRM managed release - fix order of remove operations rockchip: - analogix_dp: get encoder port from DT - inno_hdmi: support HDMI for RK3128 - lvds: error-handling fixes simplefb: - fix logging ssd130x: - support SSD133x plus DT bindings tegra: - fix error handling tilcdc: - make use of DRM managed release v3d: - show memory stats in debugfs vc4: - fix error handling in plane prepare_fb - fix framebuffer test in plane helpers vesafb: - use copy of global screen_info state virtio: - cleanups vkms: - fix OOB access when programming the LUT - Kconfig improvements vmwgfx: - unmap surface before changing plane state - fix memory leak in error handling - documentation fixes ---------------------------------------------------------------- Alex Bee (13): drm/rockchip: vop: Add output selection registers for RK312x drm/rockchip: inno_hdmi: Fix video timing drm/rockchip: inno_hdmi: Remove YUV-based csc coefficents drm/rockchip: inno_hdmi: Drop irq struct member drm/rockchip: inno_hdmi: Remove useless include drm/rockchip: inno_hdmi: Subclass connector state drm/rockchip: inno_hdmi: Correctly setup HDMI quantization range drm/rockchip: inno_hdmi: Don't power up the phy after resetting drm/rockchip: inno_hdmi: Split power mode setting drm/rockchip: inno_hdmi: Add variant support drm/rockchip: inno_hdmi: Add RK3128 support drm/rockchip: inno_hdmi: Add basic mode validation drm/rockchip: inno_hdmi: Drop custom fill_modes hook Alexander Stein (7): drm/bridge: tc358767: Use regmap_access_table for writeable registers drm/bridge: tc358767: Fix order of register defines drm/bridge: tc358767: Add more registers to non-writeable range drm/bridge: tc358767: Sort volatile registers according to address drm/bridge: tc358767: Add more volatile registers drm/bridge: tc358767: Add precious register SYSSTAT drm/bridge: tc358767: Add descriptions to register definitions Andy Shevchenko (1): drm/virtio: Spelling fixes Brian Masney (1): fbdev/simplefb: change loglevel when the power domains cannot be parsed Chen Haonan (1): drm/nouveau/disp: switch to use kmemdup() helper Chen Ni (1): drm/tegra: dsi: Add missing check for of_find_device_by_node Christophe JAILLET (6): drm/tegra: dsi: Fix some error handling paths in tegra_dsi_probe() drm/tegra: dsi: Fix missing pm_runtime_disable() in the error handling path of tegra_dsi_probe() drm/tegra: hdmi: Fix some error handling paths in tegra_hdmi_probe() drm/tegra: rgb: Fix some error handling paths in tegra_dc_rgb_probe() drm/tegra: rgb: Fix missing clk_put() in the error handling paths of tegra_dc_rgb_probe() drm/tegra: output: Fix missing i2c_put_adapter() in the error handling paths of tegra_output_probe() Dario Binacchi (5): drm/bridge: samsung-dsim: check the return value only if necessary drm/debugfs: drop unneeded DEBUG_FS guard dt-bindings: nt35510: add compatible for FRIDA FRD400B25025-A-CTK drm/panel: nt35510: move hardwired parameters to configuration drm/panel: nt35510: support FRIDA FRD400B25025-A-CTK Donald Robson (1): MAINTAINERS: Remove Donald Robson from powervr driver maintainers Ghanshyam Agrawal (1): drm/vmwgfx: Fix typos in vmwgfx_execbuf.c Harry Wentland (3): drm: Don't treat 0 as -1 in drm_fixp2int_ceil drm/vkms: Create separate Kconfig file for VKMS drm/vkms: Avoid reading beyond LUT array Hsin-Yi Wang (1): drm/panel-edp: use put_sync in unprepare Huang Rui (1): drm/virtio: add definition for venus capset Jani Nikula (8): drm/edid: replace __attribute__((packed)) with __packed drm/ioc32: replace __attribute__((packed)) with __packed drm/tegra: include drm/drm_edid.h only where needed drm/edid: prefer forward declarations over includes in drm_edid.h drm/mgag200: convert get modes to struct drm_edid drm/probe-helper: remove unused drm_connector_helper_get_modes_from_ddc() drm/nouveau: include drm/drm_edid.h only where needed drm/hisilicon: include drm/drm_edid.h only where needed Javier Martinez Canillas (5): dt-bindings: display: ssd1307fb: Add vendor prefix to width and height dt-bindings: display: ssd132x: Add vendor prefix to width and height dt-bindings: display: Add SSD133x OLED controllers drm/ssd130x: Add support for the SSD133x OLED controller family drm: Move drm_set_preferred_mode() helper from drm_edid to drm_modes Jeffrey Hugo (2): accel/qaic: Fix MHI channel struct field order accel/qaic: Order pci_remove() operations in reverse of probe() Karolina Stolarek (4): drm/ttm/tests: Add tests for ttm_resource and ttm_sys_man drm/ttm/tests: Add tests for ttm_tt drm/ttm/tests: Add tests for ttm_bo functions drm/ttm/tests: Fix argument in ttm_tt_kunit_init() Lucas Stach (1): drm/rockchip: analogix_dp: get encoder port ID from DT Markus Elfring (2): drm/sched: One function call less in drm_sched_init() after error detection drm/sched: Return an error code only as a constant in drm_sched_init() Maxime Ripard (17): drm/atomic: Move the drm_atomic_state field doc inline drm/atomic: Remove inexistent reference drm/atomic: Rework the object doc a bit drm/atomic: Make the drm_atomic_state documentation less ambiguous drm/todo: Add entry to rename drm_atomic_state drm/rockchip: inno_hdmi: Remove useless mode_fixup drm/rockchip: inno_hdmi: Remove useless copy of drm_display_mode drm/rockchip: inno_hdmi: Switch encoder hooks to atomic drm/rockchip: inno_hdmi: Get rid of mode_set drm/rockchip: inno_hdmi: no need to store vic drm/rockchip: inno_hdmi: Remove unneeded has audio flag drm/rockchip: inno_hdmi: Remove useless input format drm/rockchip: inno_hdmi: Remove tmds rate from structure drm/rockchip: inno_hdmi: Drop HDMI Vendor Infoframe support drm/rockchip: inno_hdmi: Move infoframe disable to separate function drm/rockchip: inno_hdmi: Switch to infoframe type drm/rockchip: inno_hdmi: Remove unused drm device pointer Maíra Canal (2): drm/vc4: don't check if plane->state->fb == state->fb drm/v3d: Show the memory-management stats on debugfs Philipp Stanner (1): drm/tilcdc: request and mapp iomem with devres Pin-yen Lin (3): drm/panel-edp: Add powered_on_to_enable delay drm/edp-panel: Add panels delay entries drm/panel-edp: Add some panels with conservative timings Pranjal Ramajor Asha Kanojiya (5): accel/qaic: Deprecate ->size field from attach slice IOCTL structure accel/qaic: Remove bo->queued field accel/qaic: Drop the reference to BO in error path of create BO IOCTL accel/qaic: Call drm_gem_create_mmap_offset() once for each BO accel/qaic: Leverage DRM managed APIs to release resources Quentin Schulz (4): drm/rockchip: lvds: do not overwrite error code drm/rockchip: lvds: do not print scary message when probing defer drm/panel: ltk050h3146w: only print message when GPIO getting is not EPROBE_DEFER drm/panel: ltk050h3146w: use dev_err_probe wherever possible Randy Dunlap (7): drm/vmwgfx: fix all kernel-doc warnings in stdu drm/vmwgfx: fix kernel-doc Excess struct member 'base' drm/nouveau/bios/init: drop kernel-doc notation drm/nouveau/disp: don't misuse kernel-doc comments drm/nouveau: don't misuse kernel-doc comments drm/nouveau/gr/gf100: don't misuse kernel-doc comments drm/nouveau/volt/gk20a: don't misuse kernel-doc comments Raphael Gallais-Pou (1): dt-bindings: panel: lvds: Append edt,etml0700z9ndha in panel-lvds Rodrigo Vivi (1): drm/doc/rfc: Remove Xe's pre-merge plan Simon Ser (1): drm/vc4: plane: check drm_gem_plane_helper_prepare_fb() return value Thomas Zimmermann (5): fbdev/efifb: Replace references to global screen_info by local pointer fbdev/efifb: Use screen_info pointer from device fbdev/vesafb: Replace references to global screen_info by local pointer fbdev/vesafb: Use screen_info pointer from device drm/mgag200: Fix caching setup for remapped video memory Vegard Nossum (1): drm/nouveau: uapi: fix kerneldoc warnings Ville Syrjälä (1): drm/mm: Allow CONFIG_DRM_MM_DEBUG with DRM=m Xuxin Xiong (1): drm/panel-edp: Add several generic edp panels Zack Rusin (1): drm/vmwgfx: Unmap the surface before resetting it on a plane state Zhang Shurong (1): drm/tegra: dpaux: Fix PM disable depth imbalance in tegra_dpaux_probe Zhipeng Lu (1): drm/vmwgfx: fix a memleak in vmw_gmrid_man_get_node chenxuebing (1): drm/edid: Clean up errors in drm_edid.c xiazhengqiao (1): drm/bridge: Fixed a DP link training bug .../bindings/display/panel/novatek,nt35510.yaml | 4 +- .../bindings/display/panel/panel-lvds.yaml | 2 + .../bindings/display/solomon,ssd1307fb.yaml | 20 +- .../bindings/display/solomon,ssd132x.yaml | 12 +- .../bindings/display/solomon,ssd133x.yaml | 45 ++ Documentation/gpu/rfc/xe.rst | 234 -------- Documentation/gpu/todo.rst | 23 + MAINTAINERS | 1 - drivers/accel/qaic/mhi_controller.c | 4 +- drivers/accel/qaic/qaic.h | 3 +- drivers/accel/qaic/qaic_data.c | 59 +- drivers/accel/qaic/qaic_drv.c | 140 +++-- drivers/gpu/drm/Kconfig | 16 +- drivers/gpu/drm/bridge/ite-it6505.c | 4 +- drivers/gpu/drm/bridge/samsung-dsim.c | 8 +- drivers/gpu/drm/bridge/tc358767.c | 171 ++++-- drivers/gpu/drm/drm_debugfs.c | 4 - drivers/gpu/drm/drm_edid.c | 25 +- drivers/gpu/drm/drm_ioc32.c | 4 +- drivers/gpu/drm/drm_modes.c | 22 + drivers/gpu/drm/drm_probe_helper.c | 36 -- drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_drv.h | 1 - drivers/gpu/drm/hisilicon/hibmc/hibmc_drm_vdac.c | 1 + drivers/gpu/drm/mgag200/mgag200_drv.c | 9 +- drivers/gpu/drm/mgag200/mgag200_mode.c | 14 +- drivers/gpu/drm/nouveau/dispnv04/crtc.c | 4 +- drivers/gpu/drm/nouveau/dispnv50/head.c | 1 + drivers/gpu/drm/nouveau/nouveau_connector.h | 2 +- drivers/gpu/drm/nouveau/nouveau_ioc32.c | 4 +- drivers/gpu/drm/nouveau/nvif/outp.c | 3 +- drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c | 2 +- drivers/gpu/drm/nouveau/nvkm/subdev/bios/init.c | 136 ++--- drivers/gpu/drm/nouveau/nvkm/subdev/volt/gk20a.c | 4 +- drivers/gpu/drm/panel/panel-edp.c | 97 +++- drivers/gpu/drm/panel/panel-leadtek-ltk050h3146w.c | 23 +- drivers/gpu/drm/panel/panel-novatek-nt35510.c | 424 ++++++++++++-- drivers/gpu/drm/rockchip/analogix_dp-rockchip.c | 3 + drivers/gpu/drm/rockchip/inno_hdmi.c | 548 +++++++++++------- drivers/gpu/drm/rockchip/inno_hdmi.h | 5 - drivers/gpu/drm/rockchip/rockchip_lvds.c | 3 +- drivers/gpu/drm/rockchip/rockchip_vop_reg.c | 13 +- drivers/gpu/drm/rockchip/rockchip_vop_reg.h | 3 + drivers/gpu/drm/scheduler/sched_main.c | 11 +- drivers/gpu/drm/solomon/ssd130x-spi.c | 7 + drivers/gpu/drm/solomon/ssd130x.c | 370 ++++++++++++ drivers/gpu/drm/solomon/ssd130x.h | 5 +- drivers/gpu/drm/tegra/dpaux.c | 14 +- drivers/gpu/drm/tegra/drm.h | 2 +- drivers/gpu/drm/tegra/dsi.c | 59 +- drivers/gpu/drm/tegra/hdmi.c | 20 +- drivers/gpu/drm/tegra/output.c | 17 +- drivers/gpu/drm/tegra/rgb.c | 18 +- drivers/gpu/drm/tegra/sor.c | 1 + drivers/gpu/drm/tilcdc/tilcdc_drv.c | 19 +- drivers/gpu/drm/ttm/tests/Makefile | 3 + drivers/gpu/drm/ttm/tests/ttm_bo_test.c | 622 +++++++++++++++++++++ drivers/gpu/drm/ttm/tests/ttm_kunit_helpers.c | 48 +- drivers/gpu/drm/ttm/tests/ttm_kunit_helpers.h | 3 + drivers/gpu/drm/ttm/tests/ttm_pool_test.c | 3 +- drivers/gpu/drm/ttm/tests/ttm_resource_test.c | 335 +++++++++++ drivers/gpu/drm/ttm/tests/ttm_tt_test.c | 295 ++++++++++ drivers/gpu/drm/ttm/ttm_resource.c | 3 + drivers/gpu/drm/ttm/ttm_tt.c | 3 + drivers/gpu/drm/v3d/v3d_debugfs.c | 15 + drivers/gpu/drm/vc4/vc4_plane.c | 10 +- drivers/gpu/drm/virtio/virtgpu_submit.c | 6 +- drivers/gpu/drm/vkms/Kconfig | 15 + drivers/gpu/drm/vkms/vkms_composer.c | 14 +- drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c | 4 +- drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c | 5 +- drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 4 + drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c | 17 +- drivers/gpu/drm/vmwgfx/vmwgfx_surface.c | 1 - drivers/video/fbdev/efifb.c | 136 +++-- drivers/video/fbdev/simplefb.c | 2 +- drivers/video/fbdev/vesafb.c | 78 ++- include/drm/drm_atomic.h | 70 ++- include/drm/drm_edid.h | 46 +- include/drm/drm_fixed.h | 2 +- include/drm/drm_modes.h | 2 + include/drm/drm_probe_helper.h | 1 - include/uapi/drm/nouveau_drm.h | 56 +- include/uapi/drm/qaic_accel.h | 13 +- include/uapi/linux/virtio_gpu.h | 2 + 84 files changed, 3397 insertions(+), 1097 deletions(-) create mode 100644 Documentation/devicetree/bindings/display/solomon,ssd133x.yaml delete mode 100644 Documentation/gpu/rfc/xe.rst create mode 100644 drivers/gpu/drm/ttm/tests/ttm_bo_test.c create mode 100644 drivers/gpu/drm/ttm/tests/ttm_resource_test.c create mode 100644 drivers/gpu/drm/ttm/tests/ttm_tt_test.c create mode 100644 drivers/gpu/drm/vkms/Kconfig -- 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)