[Intel-gfx] [PULL] drm-misc-next

Thomas Zimmermann tzimmermann at suse.de
Wed Jun 9 07:42:20 UTC 2021


Hi Dave and Daniel,

here's the PR for drm-misc-next for this week. The big highlight is the new
DRM driver for HyperV graphics output. And TTM saw some refactoring to its
internals.

Best regards
Thomas

drm-misc-next-2021-06-09:
drm-misc-next for 5.14:

UAPI Changes:

 * drm/panfrost: Export AFBC_FEATURES register to userspace

Cross-subsystem Changes:

 * dma-buf: Fix debug printing; Rename dma_resv_*() functions + changes
   in callers; Cleanups

Core Changes:

 * Add prefetching memcpy for WC

 * Avoid circular dependency on CONFIG_FB

 * Cleanups

 * Documentation fixes throughout DRM

 * ttm: Make struct ttm_resource the base of all managers + changes
   in all users of TTM; Add a generic memcpy for page-based iomem; Remove
   use of VM_MIXEDMAP; Cleanups

Driver Changes:

 * drm/bridge: Add TI SN65DSI83 and SN65DSI84 + DT bindings

 * drm/hyperv: Add DRM driver for HyperV graphics output

 * drm/msm: Fix module dependencies

 * drm/panel: KD53T133: Support rotation

 * drm/pl111: Fix module dependencies

 * drm/qxl: Fixes

 * drm/stm: Cleanups

 * drm/sun4i: Be explicit about format modifiers

 * drm/vc4: Use struct gpio_desc; Cleanups

 * drm/vgem: Cleanups

 * drm/vmwgfx: Use ttm_bo_move_null() if there's nothing to copy

 * fbdev/mach64: Cleanups

 * fbdev/mb862xx: Use DEVICE_ATTR_RO
The following changes since commit 2e290c8d8d29278b9a20e2765ab8f6df02f2e707:

  drm: document minimum kernel version for DRM_CLIENT_CAP_* (2021-05-31 18:57:22 +0200)

are available in the Git repository at:

  git://anongit.freedesktop.org/drm/drm-misc tags/drm-misc-next-2021-06-09

for you to fetch changes up to 5b7a2c92b6102447a973f2f1ef19d660ec329881:

  drm/vmwgfx: use ttm_bo_move_null() when there is nothing to move (2021-06-09 09:10:22 +0200)

----------------------------------------------------------------
drm-misc-next for 5.14:

UAPI Changes:

 * drm/panfrost: Export AFBC_FEATURES register to userspace

Cross-subsystem Changes:

 * dma-buf: Fix debug printing; Rename dma_resv_*() functions + changes
   in callers; Cleanups

Core Changes:

 * Add prefetching memcpy for WC

 * Avoid circular dependency on CONFIG_FB

 * Cleanups

 * Documentation fixes throughout DRM

 * ttm: Make struct ttm_resource the base of all managers + changes
   in all users of TTM; Add a generic memcpy for page-based iomem; Remove
   use of VM_MIXEDMAP; Cleanups

Driver Changes:

 * drm/bridge: Add TI SN65DSI83 and SN65DSI84 + DT bindings

 * drm/hyperv: Add DRM driver for HyperV graphics output

 * drm/msm: Fix module dependencies

 * drm/panel: KD53T133: Support rotation

 * drm/pl111: Fix module dependencies

 * drm/qxl: Fixes

 * drm/stm: Cleanups

 * drm/sun4i: Be explicit about format modifiers

 * drm/vc4: Use struct gpio_desc; Cleanups

 * drm/vgem: Cleanups

 * drm/vmwgfx: Use ttm_bo_move_null() if there's nothing to copy

 * fbdev/mach64: Cleanups

 * fbdev/mb862xx: Use DEVICE_ATTR_RO

----------------------------------------------------------------
Alyssa Rosenzweig (2):
      drm/sched: Fix inverted comment for hang_limit
      drm/panfrost: Add AFBC_FEATURES parameter

Arnd Bergmann (1):
      drm/msm/a6xx: add CONFIG_QCOM_LLCC dependency

Chris Morgan (1):
      drm/panel: add rotation support for Elida KD35T133 panels

Christian König (25):
      drm/ttm: rename bo->mem and make it a pointer
      dma-buf: fix inconsistent debug print v2
      dma-buf: add SPDX header and fix style in dma-resv.c
      dma-buf: cleanup dma-resv shared fence debugging a bit v2
      drm/ttm: allocate resource object instead of embedding it v2
      drm/ttm: flip over the range manager to self allocated nodes
      drm/ttm: flip over the sys manager to self allocated nodes
      drm/amdgpu: revert "drm/amdgpu: stop allocating dummy GTT nodes"
      drm/amdkfd: use resource cursor in svm_migrate_copy_to_vram v2
      drm/amdgpu: switch the GTT backend to self alloc
      drm/amdgpu: switch the VRAM backend to self alloc
      drm/nouveau: switch the TTM backends to self alloc
      drm/vmwgfx: switch the TTM backends to self alloc
      drm/ttm: flip the switch for driver allocated resources v2
      dma-buf: add missing EXPORT_SYMBOL
      dma-buf: rename and cleanup dma_resv_get_excl v3
      dma-buf: rename and cleanup dma_resv_get_list v2
      dma-buf: rename dma_resv_get_excl_rcu to _unlocked
      dma-buf: drop the _rcu postfix on function names v3
      drm/ttm: fix missing res assignment in ttm_range_man_alloc
      RDMA/umem: fix missing automated rename
      drm/ttm: fix access to uninitialized variable.
      drm/ttm: fix warning after moving resource to ghost obj
      drm/ttm: fix pipelined gutting v2
      drm/ttm: nuke VM_MIXEDMAP on BO mappings v3

Colin Ian King (1):
      drm: qxl: ensure surf.data is ininitialized

Daniel Vetter (1):
      drm/doc: Include fence chain api

Deepak Rawat (3):
      drm/hyperv: Add DRM driver for hyperv synthetic video device
      drm/hyperv: Handle feature change message from device
      MAINTAINERS: Add maintainer for hyperv video device

Kees Cook (3):
      drm: Avoid circular dependencies for CONFIG_FB
      drm/pl111: depend on CONFIG_VEXPRESS_CONFIG
      drm/pl111: Actually fix CONFIG_VEXPRESS_CONFIG depends

Lee Jones (17):
      drm/vgem/vgem_drv: Standard comment blocks should not use kernel-doc format
      drm/mediatek/mtk_disp_color: Strip incorrect doc and demote header
      drm/mediatek/mtk_disp_gamma: Strip and demote non-conformant kernel-doc header
      drm/mediatek/mtk_disp_ovl: Strip and demote non-conformant header
      drm/mediatek/mtk_disp_rdma: Strip and demote non-conformant kernel-doc header
      drm/sti/sti_hdmi_tx3g4c28phy: Provide function names for kernel-doc headers
      drm/sti/sti_hda: Provide missing function names
      drm/sti/sti_tvout: Provide a bunch of missing function names
      drm/sti/sti_hqvdp: Fix incorrectly named function 'sti_hqvdp_vtg_cb()'
      drm/nouveau/nvkm/subdev/mc/tu102: Make functions called by reference static
      drm/ttm/ttm_tt: Demote non-conformant kernel-doc header
      drm/panel/panel-raspberrypi-touchscreen: Demote kernel-doc abuse
      drm/panel/panel-sitronix-st7701: Demote kernel-doc abuse
      drm/exynos/exynos7_drm_decon: Fix incorrect naming of 'decon_shadow_protect_win()'
      drm/exynos/exynos_drm_ipp: Fix documentation for 'exynos_drm_ipp_get_{caps,res}_ioctl()'
      drm/vboxvideo/hgsmi_base: Place function names into headers
      drm/vboxvideo/modesetting: Provide function names for prototype headers

Marek Vasut (4):
      dt-bindings: drm/bridge: ti-sn65dsi83: Add TI SN65DSI83 and SN65DSI84 bindings
      drm/bridge: ti-sn65dsi83: Add TI SN65DSI83 and SN65DSI84 driver
      drm/bridge: ti-sn65dsi83: Fix syntax formatting issues
      drm/stm: Remove usage of drm_display_mode_to_videomode()

Maxime Ripard (2):
      drm/vc4: hdmi: Fix error path of hpd-gpios
      drm/vc4: hdmi: Convert to gpiod

Nirmoy Das (1):
      drm/vmwgfx: use ttm_bo_move_null() when there is nothing to move

Paul Cercueil (1):
      drm: Fix misleading documentation of drm_gem_cma_create()

Piotr Oniszczuk (1):
      drm/sun4i: de3: Be explicit about supported modifiers

Thomas Hellström (5):
      drm/ttm: Add a generic TTM memcpy move for page-based iomem
      drm: Add a prefetching memcpy_from_wc
      drm/ttm: Use drm_memcpy_from_wc for TTM bo moves
      drm/ttm: Document and optimize ttm_bo_pipeline_gutting()
      drm/ttm, drm/amdgpu: Allow the driver some control over swapping

Zhen Lei (1):
      video: fbdev: mb862xx: use DEVICE_ATTR_RO macro

lijian (1):
      video: fbdev: atyfb: mach64_cursor.c: deleted the repeated word

 .../bindings/display/bridge/ti,sn65dsi83.yaml      | 159 +++++
 Documentation/driver-api/dma-buf.rst               |   9 +
 Documentation/gpu/drm-mm.rst                       |   4 +-
 MAINTAINERS                                        |   8 +
 drivers/dma-buf/dma-buf.c                          |  31 +-
 drivers/dma-buf/dma-resv.c                         | 211 +++---
 drivers/gpu/drm/Kconfig                            |  15 +-
 drivers/gpu/drm/Makefile                           |   1 +
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c   |   4 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c         |   6 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_display.c        |   5 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.c        |  15 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c            |   5 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c            |   4 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.c        |  92 +--
 drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c            |   5 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_mn.c             |   4 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_object.c         |  54 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_object.h         |   4 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_res_cursor.h     |   5 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c           |   4 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h          |   4 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c            |  96 +--
 drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c            |   5 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c             |  23 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c       |  97 +--
 drivers/gpu/drm/amd/amdkfd/kfd_migrate.c           |  68 +-
 drivers/gpu/drm/amd/amdkfd/kfd_svm.c               |   4 +-
 drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c  |   5 +-
 drivers/gpu/drm/bridge/Kconfig                     |  10 +
 drivers/gpu/drm/bridge/Makefile                    |   1 +
 drivers/gpu/drm/bridge/ti-sn65dsi83.c              | 709 +++++++++++++++++++++
 drivers/gpu/drm/drm_cache.c                        | 148 +++++
 drivers/gpu/drm/drm_drv.c                          |   2 +
 drivers/gpu/drm/drm_gem.c                          |   7 +-
 drivers/gpu/drm/drm_gem_atomic_helper.c            |   2 +-
 drivers/gpu/drm/drm_gem_cma_helper.c               |   3 +-
 drivers/gpu/drm/drm_gem_ttm_helper.c               |   6 +-
 drivers/gpu/drm/drm_gem_vram_helper.c              |   7 +-
 drivers/gpu/drm/etnaviv/etnaviv_gem.c              |  10 +-
 drivers/gpu/drm/etnaviv/etnaviv_gem_submit.c       |   8 +-
 drivers/gpu/drm/exynos/exynos7_drm_decon.c         |   2 +-
 drivers/gpu/drm/exynos/exynos_drm_ipp.c            |   4 +-
 drivers/gpu/drm/hyperv/Makefile                    |   8 +
 drivers/gpu/drm/hyperv/hyperv_drm.h                |  52 ++
 drivers/gpu/drm/hyperv/hyperv_drm_drv.c            | 311 +++++++++
 drivers/gpu/drm/hyperv/hyperv_drm_modeset.c        | 231 +++++++
 drivers/gpu/drm/hyperv/hyperv_drm_proto.c          | 485 ++++++++++++++
 drivers/gpu/drm/i915/display/intel_display.c       |   2 +-
 drivers/gpu/drm/i915/dma_resv_utils.c              |   2 +-
 drivers/gpu/drm/i915/gem/i915_gem_busy.c           |   7 +-
 drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c     |   2 +-
 drivers/gpu/drm/i915/gem/i915_gem_object.h         |   2 +-
 drivers/gpu/drm/i915/gem/i915_gem_userptr.c        |   4 +-
 drivers/gpu/drm/i915/gem/i915_gem_wait.c           |  10 +-
 drivers/gpu/drm/i915/i915_request.c                |   6 +-
 drivers/gpu/drm/i915/i915_sw_fence.c               |   4 +-
 drivers/gpu/drm/mediatek/mtk_disp_color.c          |   3 +-
 drivers/gpu/drm/mediatek/mtk_disp_gamma.c          |   4 +-
 drivers/gpu/drm/mediatek/mtk_disp_ovl.c            |   3 +-
 drivers/gpu/drm/mediatek/mtk_disp_rdma.c           |   4 +-
 drivers/gpu/drm/msm/Kconfig                        |   3 +-
 drivers/gpu/drm/msm/msm_gem.c                      |  11 +-
 drivers/gpu/drm/nouveau/dispnv50/wndw.c            |   2 +-
 drivers/gpu/drm/nouveau/nouveau_abi16.c            |   2 +-
 drivers/gpu/drm/nouveau/nouveau_bo.c               |  40 +-
 drivers/gpu/drm/nouveau/nouveau_chan.c             |   2 +-
 drivers/gpu/drm/nouveau/nouveau_fbcon.c            |   2 +-
 drivers/gpu/drm/nouveau/nouveau_fence.c            |   4 +-
 drivers/gpu/drm/nouveau/nouveau_gem.c              |  20 +-
 drivers/gpu/drm/nouveau/nouveau_mem.c              |  11 +-
 drivers/gpu/drm/nouveau/nouveau_mem.h              |  15 +-
 drivers/gpu/drm/nouveau/nouveau_ttm.c              |  32 +-
 drivers/gpu/drm/nouveau/nouveau_vmm.c              |   4 +-
 drivers/gpu/drm/nouveau/nv17_fence.c               |   2 +-
 drivers/gpu/drm/nouveau/nv50_fence.c               |   2 +-
 drivers/gpu/drm/nouveau/nvkm/subdev/mc/tu102.c     |   6 +-
 drivers/gpu/drm/panel/panel-elida-kd35t133.c       |   8 +
 .../gpu/drm/panel/panel-raspberrypi-touchscreen.c  |   2 +-
 drivers/gpu/drm/panel/panel-sitronix-st7701.c      |   2 +-
 drivers/gpu/drm/panfrost/panfrost_device.h         |   1 +
 drivers/gpu/drm/panfrost/panfrost_drv.c            |   7 +-
 drivers/gpu/drm/panfrost/panfrost_gpu.c            |   1 +
 drivers/gpu/drm/panfrost/panfrost_job.c            |   2 +-
 drivers/gpu/drm/panfrost/panfrost_regs.h           |   1 +
 drivers/gpu/drm/pl111/Kconfig                      |   1 +
 drivers/gpu/drm/qxl/qxl_debugfs.c                  |   2 +-
 drivers/gpu/drm/qxl/qxl_drv.h                      |   6 +-
 drivers/gpu/drm/qxl/qxl_dumb.c                     |   2 +
 drivers/gpu/drm/qxl/qxl_object.c                   |  10 +-
 drivers/gpu/drm/qxl/qxl_ttm.c                      |   5 +-
 drivers/gpu/drm/radeon/radeon_cs.c                 |   8 +-
 drivers/gpu/drm/radeon/radeon_display.c            |   2 +-
 drivers/gpu/drm/radeon/radeon_gem.c                |  16 +-
 drivers/gpu/drm/radeon/radeon_mn.c                 |   4 +-
 drivers/gpu/drm/radeon/radeon_object.c             |  22 +-
 drivers/gpu/drm/radeon/radeon_object.h             |   4 +-
 drivers/gpu/drm/radeon/radeon_pm.c                 |   2 +-
 drivers/gpu/drm/radeon/radeon_sync.c               |   4 +-
 drivers/gpu/drm/radeon/radeon_trace.h              |   2 +-
 drivers/gpu/drm/radeon/radeon_ttm.c                |   9 +-
 drivers/gpu/drm/radeon/radeon_uvd.c                |   2 +-
 drivers/gpu/drm/sti/sti_hda.c                      |   6 +-
 drivers/gpu/drm/sti/sti_hdmi_tx3g4c28phy.c         |   4 +-
 drivers/gpu/drm/sti/sti_hqvdp.c                    |   2 +-
 drivers/gpu/drm/sti/sti_tvout.c                    |  18 +-
 drivers/gpu/drm/stm/ltdc.c                         |  33 +-
 drivers/gpu/drm/sun4i/sun8i_ui_layer.c             |   7 +-
 drivers/gpu/drm/sun4i/sun8i_vi_layer.c             |   8 +-
 drivers/gpu/drm/ttm/ttm_bo.c                       | 202 +++---
 drivers/gpu/drm/ttm/ttm_bo_util.c                  | 377 +++++------
 drivers/gpu/drm/ttm/ttm_bo_vm.c                    |  64 +-
 drivers/gpu/drm/ttm/ttm_module.c                   |  35 +
 drivers/gpu/drm/ttm/ttm_range_manager.c            |  57 +-
 drivers/gpu/drm/ttm/ttm_resource.c                 | 228 ++++++-
 drivers/gpu/drm/ttm/ttm_sys_manager.c              |  11 +-
 drivers/gpu/drm/ttm/ttm_tt.c                       |  47 +-
 drivers/gpu/drm/vboxvideo/hgsmi_base.c             |  19 +-
 drivers/gpu/drm/vboxvideo/modesetting.c            |  20 +-
 drivers/gpu/drm/vc4/vc4_hdmi.c                     |  26 +-
 drivers/gpu/drm/vc4/vc4_hdmi.h                     |   3 +-
 drivers/gpu/drm/vgem/vgem_drv.c                    |   2 +-
 drivers/gpu/drm/vgem/vgem_fence.c                  |   3 +-
 drivers/gpu/drm/virtio/virtgpu_ioctl.c             |   5 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_blit.c               |   8 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_bo.c                 |  42 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_cmd.c                |  10 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf.c             |   2 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_context.c            |  12 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_cotable.c            |  10 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_execbuf.c            |  12 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c      |  30 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_page_dirty.c         |   8 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_resource.c           |   2 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_shader.c             |  12 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_streamoutput.c       |   6 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_surface.c            |   6 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_thp.c                |  46 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_ttm_buffer.c         |  12 +-
 drivers/infiniband/core/umem_dmabuf.c              |   2 +-
 drivers/video/fbdev/aty/mach64_cursor.c            |   2 +-
 drivers/video/fbdev/mb862xx/mb862xxfbdrv.c         |   6 +-
 include/drm/drm_cache.h                            |   7 +
 include/drm/gpu_scheduler.h                        |   2 +-
 include/drm/ttm/ttm_bo_api.h                       |   2 +-
 include/drm/ttm/ttm_bo_driver.h                    |  64 +-
 include/drm/ttm/ttm_caching.h                      |   2 +
 include/drm/ttm/ttm_kmap_iter.h                    |  61 ++
 include/drm/ttm/ttm_range_manager.h                |  42 ++
 include/drm/ttm/ttm_resource.h                     | 111 +++-
 include/drm/ttm/ttm_tt.h                           |  29 +
 include/linux/dma-resv.h                           |  75 +--
 include/uapi/drm/panfrost_drm.h                    |   1 +
 153 files changed, 3837 insertions(+), 1253 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/display/bridge/ti,sn65dsi83.yaml
 create mode 100644 drivers/gpu/drm/bridge/ti-sn65dsi83.c
 create mode 100644 drivers/gpu/drm/hyperv/Makefile
 create mode 100644 drivers/gpu/drm/hyperv/hyperv_drm.h
 create mode 100644 drivers/gpu/drm/hyperv/hyperv_drm_drv.c
 create mode 100644 drivers/gpu/drm/hyperv/hyperv_drm_modeset.c
 create mode 100644 drivers/gpu/drm/hyperv/hyperv_drm_proto.c
 create mode 100644 include/drm/ttm/ttm_kmap_iter.h
 create mode 100644 include/drm/ttm/ttm_range_manager.h

--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Felix Imendörffer


More information about the Intel-gfx mailing list