Hi Dave, Daniel, It's still a fairly quiet week, but here's this week's drm-misc-next PR maxime drm-misc-next-2021-03-25: drm-misc-next for 5.13: UAPI Changes: - New USB connector type Cross-subsystem Changes: Core Changes: - ttm: Introduce a per-device LRU lock, remove swap LRU Driver Changes: - Introduction of USB Display driver - an78xx: DP-Aux fixes - an6345: DP-Aux fixes - tilcdc: Pixel clocks fixes The following changes since commit 51c3b916a4d7e24b4918925965867fdd9bd8dd59: Merge tag 'drm-misc-next-2021-03-03' of git://anongit.freedesktop.org/drm/drm-misc into drm-next (2021-03-16 17:08:46 +1000) are available in the Git repository at: git://anongit.freedesktop.org/drm/drm-misc tags/drm-misc-next-2021-03-25 for you to fetch changes up to a1f091f8ef2b680a5184db065527612247cb4cae: drm/ttm: switch to per device LRU lock (2021-03-24 17:05:25 +0100) ---------------------------------------------------------------- drm-misc-next for 5.13: UAPI Changes: - New USB connector type Cross-subsystem Changes: Core Changes: - ttm: Introduce a per-device LRU lock, remove swap LRU Driver Changes: - Introduction of USB Display driver - an78xx: DP-Aux fixes - an6345: DP-Aux fixes - tilcdc: Pixel clocks fixes ---------------------------------------------------------------- Arnd Bergmann (2): fbdev: omapfb: avoid -Wempty-body warning vgaarb: avoid -Wempty-body warnings Bhaskar Chowdhury (2): drm: Few typo fixes drm/meson: Fix few typo Christian König (7): drm/sched: select new rq even if there is only one v3 drm/qxl: clean up qxl_bo_move_notify drm/nouveau: clean up nouveau_bo_move_ntfy drm/vmwgfx: clean up vmw_move_notify v2 drm/ttm: move swapout logic around v3 drm/ttm: remove swap LRU v3 drm/ttm: switch to per device LRU lock Daniel Vetter (1): dma-fence: Document recoverable page fault implications Dario Binacchi (3): drm/tilcdc: rename req_rate to pclk_rate drm/tilcdc: fix LCD pixel clock setting drm/tilcdc: fix pixel clock setting warning message Douglas Anderson (6): drm/panel-simple: Undo enable if HPD never asserts drm/panel-simple: Don't wait longer for HPD than hpd_absent_delay drm/panel-simple: Retry if we timeout waiting for HPD dt-bindings: dt-bindings: display: simple: Add N116BCA-EA1 drm/panel-simple: Add N116BCA-EA1 drm: panel: simple: Set enable delay for BOE NV110WTM-N61 Jagan Teki (1): drm/stm: ltdc: Use simple encoder Jianhui Zhao (1): docs: gpu: fix typo Linus Walleij (1): drm/mcde/panel: Inverse misunderstood flag Lyude Paul (9): drm/bridge/tc358767: Don't register DP AUX channel until bridge is attached drm/bridge/ti-sn65dsi86: (Un)register aux device on bridge attach/detach drm/bridge/analogix/anx78xx: Add missing drm_dp_aux_unregister() call drm/bridge/analogix/anx78xx: Setup encoder before registering connector drm/bridge/analogix/anx78xx: Cleanup on error in anx78xx_bridge_attach() drm/bridge/analogix/anx6345: Add missing drm_dp_aux_unregister() call drm/bridge/analogix/anx6345: Don't link encoder until after connector registration drm/bridge/analogix/anx6345: Cleanup on errors in anx6345_bridge_attach() drm/bridge/analogix/dp_core: Unregister DP AUX channel on error in analogix_dp_probe() Matthew Wilcox (Oracle) (1): fb_defio: Remove custom address_space_operations Maxime Ripard (2): Merge drm/drm-next into drm-misc-next drm/rockchip: Remove unused variable Noralf Trřnnes (3): drm/uapi: Add USB connector type drm/probe-helper: Check epoch counter in output_poll_execute() drm: Add GUD USB Display driver Paul Cercueil (1): drm/ingenic: Fix non-OSD mode Simon Ser (1): drm/uapi: document kernel capabilities Tian Tao (2): drm/vboxvideo: Use managed VRAM-helper initialization drm/sysfs: Convert sysfs sprintf/snprintf family to sysfs_emit Yang Li (2): drm/gma500: use NULL instead of using plain integer as pointer drm/tilcdc: panel: fix platform_no_drv_owner.cocci warnings Yannick Fertre (1): drm/stm: dsi: Avoid printing errors for -EPROBE_DEFER kernel test robot (2): drm/gud: fix sizeof use drm/gud: Remove unneeded semicolon xndcn (1): drm/virtio: fix possible leak/unlock virtio_gpu_object_array .../bindings/display/panel/panel-simple.yaml | 2 + Documentation/driver-api/dma-buf.rst | 76 +++ Documentation/gpu/todo.rst | 2 +- MAINTAINERS | 8 + drivers/gpu/drm/Kconfig | 2 + drivers/gpu/drm/Makefile | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 8 +- drivers/gpu/drm/bridge/analogix/analogix-anx6345.c | 27 +- drivers/gpu/drm/bridge/analogix/analogix-anx78xx.c | 27 +- drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 1 + drivers/gpu/drm/bridge/tc358767.c | 20 +- drivers/gpu/drm/bridge/ti-sn65dsi86.c | 18 +- drivers/gpu/drm/drm_connector.c | 1 + drivers/gpu/drm/drm_probe_helper.c | 7 +- drivers/gpu/drm/drm_property.c | 4 +- drivers/gpu/drm/drm_sysfs.c | 9 +- drivers/gpu/drm/gma500/psb_drv.c | 2 +- drivers/gpu/drm/gud/Kconfig | 14 + drivers/gpu/drm/gud/Makefile | 4 + drivers/gpu/drm/gud/gud_connector.c | 729 +++++++++++++++++++++ drivers/gpu/drm/gud/gud_drv.c | 661 +++++++++++++++++++ drivers/gpu/drm/gud/gud_internal.h | 154 +++++ drivers/gpu/drm/gud/gud_pipe.c | 552 ++++++++++++++++ drivers/gpu/drm/ingenic/ingenic-drm-drv.c | 11 +- drivers/gpu/drm/mcde/mcde_dsi.c | 2 +- drivers/gpu/drm/meson/meson_venc.c | 2 +- drivers/gpu/drm/nouveau/nouveau_bo.c | 13 +- drivers/gpu/drm/panel/panel-novatek-nt35510.c | 3 +- drivers/gpu/drm/panel/panel-samsung-s6d16d0.c | 4 +- drivers/gpu/drm/panel/panel-samsung-s6e63m0-dsi.c | 1 - drivers/gpu/drm/panel/panel-simple.c | 85 ++- drivers/gpu/drm/panel/panel-sony-acx424akp.c | 3 +- drivers/gpu/drm/qxl/qxl_release.c | 5 +- drivers/gpu/drm/qxl/qxl_ttm.c | 16 +- drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 2 - drivers/gpu/drm/scheduler/sched_entity.c | 6 +- drivers/gpu/drm/stm/dw_mipi_dsi-stm.c | 9 +- drivers/gpu/drm/stm/ltdc.c | 12 +- drivers/gpu/drm/tilcdc/tilcdc_crtc.c | 19 +- drivers/gpu/drm/tilcdc/tilcdc_panel.c | 1 - drivers/gpu/drm/ttm/ttm_bo.c | 135 ++-- drivers/gpu/drm/ttm/ttm_bo_util.c | 1 - drivers/gpu/drm/ttm/ttm_device.c | 71 +- drivers/gpu/drm/ttm/ttm_execbuf_util.c | 8 +- drivers/gpu/drm/ttm/ttm_resource.c | 9 +- drivers/gpu/drm/ttm/ttm_tt.c | 2 +- drivers/gpu/drm/vboxvideo/vbox_ttm.c | 7 +- drivers/gpu/drm/virtio/virtgpu_ioctl.c | 2 +- drivers/gpu/drm/virtio/virtgpu_object.c | 1 + drivers/gpu/drm/vmwgfx/ttm_memory.c | 3 +- drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 2 +- drivers/gpu/drm/vmwgfx/vmwgfx_drv.h | 3 +- drivers/gpu/drm/vmwgfx/vmwgfx_resource.c | 9 +- drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c | 27 +- drivers/video/fbdev/core/fb_defio.c | 35 - drivers/video/fbdev/core/fbmem.c | 4 - drivers/video/fbdev/omap2/omapfb/omapfb.h | 2 +- include/drm/gud.h | 333 ++++++++++ include/drm/ttm/ttm_bo_api.h | 4 +- include/drm/ttm/ttm_bo_driver.h | 5 +- include/drm/ttm/ttm_device.h | 13 +- include/linux/fb.h | 3 - include/linux/vgaarb.h | 4 +- include/uapi/drm/drm.h | 125 +++- include/uapi/drm/drm_mode.h | 1 + 65 files changed, 3014 insertions(+), 318 deletions(-) create mode 100644 drivers/gpu/drm/gud/Kconfig create mode 100644 drivers/gpu/drm/gud/Makefile create mode 100644 drivers/gpu/drm/gud/gud_connector.c create mode 100644 drivers/gpu/drm/gud/gud_drv.c create mode 100644 drivers/gpu/drm/gud/gud_internal.h create mode 100644 drivers/gpu/drm/gud/gud_pipe.c create mode 100644 include/drm/gud.h