mbox series

[GIT,PULL] drm/tegra: Changes for v5.15-rc1

Message ID 20210813163616.2822355-1-thierry.reding@gmail.com (mailing list archive)
State New, archived
Headers show
Series [GIT,PULL] drm/tegra: Changes for v5.15-rc1 | expand

Pull-request

ssh://git.freedesktop.org/git/tegra/linux.git tags/drm/tegra/for-5.15-rc1

Message

Thierry Reding Aug. 13, 2021, 4:36 p.m. UTC
Hi Dave,

The following changes since commit e73f0f0ee7541171d89f2e2491130c7771ba58d3:

  Linux 5.14-rc1 (2021-07-11 15:07:40 -0700)

are available in the Git repository at:

  ssh://git.freedesktop.org/git/tegra/linux.git tags/drm/tegra/for-5.15-rc1

for you to fetch changes up to fed0289394173509b3150617e17739d0094ce88e:

  gpu: host1x: debug: Dump DMASTART and DMAEND register (2021-08-13 18:23:32 +0200)

Once you've merged these I plan to push the libdrm changes which are
going to use this new ABI and which also contain some basic sanity tests
that we want to start running for regression testing.

Thanks,
Thierry

----------------------------------------------------------------
drm/tegra: Changes for v5.15-rc1

The bulk of these changes is a more modern ABI that can be efficiently
used on newer SoCs as well as older ones. The userspace parts for this
are available here:

  - libdrm support: https://gitlab.freedesktop.org/tagr/drm/-/commits/drm-tegra-uabi-v8
  - VAAPI driver: https://github.com/cyndis/vaapi-tegra-driver

In addition, existing userspace from the grate reverse-engineering
project has been updated to use this new ABI:

  - X11 driver: https://github.com/grate-driver/xf86-video-opentegra
  - 3D driver: https://github.com/grate-driver/grate

Other than that, there's also support for display memory bandwidth
management for various generations and a bit of cleanup.

----------------------------------------------------------------
Dmitry Osipenko (2):
      drm/tegra: dc: Support memory bandwidth management
      drm/tegra: dc: Extend debug stats with total number of events

Mikko Perttunen (15):
      gpu: host1x: Add DMA fence implementation
      gpu: host1x: Add no-recovery mode
      gpu: host1x: Add job release callback
      gpu: host1x: Add support for syncpoint waits in CDMA pushbuffer
      gpu: host1x: Add option to skip firewall for a job
      drm/tegra: Extract tegra_gem_lookup()
      drm/tegra: Add new UAPI to header
      drm/tegra: Boot VIC during runtime PM resume
      drm/tegra: Allocate per-engine channel in core code
      drm/tegra: Implement new UAPI
      drm/tegra: Implement syncpoint management UAPI
      drm/tegra: Implement syncpoint wait UAPI
      drm/tegra: Implement job submission part of new UAPI
      drm/tegra: Add job firewall
      drm/tegra: Bump driver version

Thierry Reding (3):
      gpu: host1x: debug: Use dma_addr_t more consistently
      gpu: host1x: debug: Dump only relevant parts of CDMA push buffer
      gpu: host1x: debug: Dump DMASTART and DMAEND register

 drivers/gpu/drm/tegra/Kconfig              |   1 +
 drivers/gpu/drm/tegra/Makefile             |   3 +
 drivers/gpu/drm/tegra/dc.c                 | 358 ++++++++++++++++-
 drivers/gpu/drm/tegra/dc.h                 |  17 +
 drivers/gpu/drm/tegra/drm.c                |  98 +++--
 drivers/gpu/drm/tegra/drm.h                |  12 +
 drivers/gpu/drm/tegra/firewall.c           | 254 ++++++++++++
 drivers/gpu/drm/tegra/gem.c                |  13 +
 drivers/gpu/drm/tegra/gem.h                |   2 +
 drivers/gpu/drm/tegra/plane.c              | 117 ++++++
 drivers/gpu/drm/tegra/plane.h              |  16 +
 drivers/gpu/drm/tegra/submit.c             | 625 +++++++++++++++++++++++++++++
 drivers/gpu/drm/tegra/submit.h             |  21 +
 drivers/gpu/drm/tegra/uapi.c               | 338 ++++++++++++++++
 drivers/gpu/drm/tegra/uapi.h               |  58 +++
 drivers/gpu/drm/tegra/vic.c                | 112 +++---
 drivers/gpu/host1x/Makefile                |   1 +
 drivers/gpu/host1x/cdma.c                  |  58 ++-
 drivers/gpu/host1x/fence.c                 | 168 ++++++++
 drivers/gpu/host1x/fence.h                 |  13 +
 drivers/gpu/host1x/hw/channel_hw.c         |  87 +++-
 drivers/gpu/host1x/hw/debug_hw.c           |  32 +-
 drivers/gpu/host1x/hw/debug_hw_1x01.c      |   8 +-
 drivers/gpu/host1x/hw/debug_hw_1x06.c      |  16 +-
 drivers/gpu/host1x/hw/hw_host1x02_uclass.h |  12 +
 drivers/gpu/host1x/hw/hw_host1x04_uclass.h |  12 +
 drivers/gpu/host1x/hw/hw_host1x05_uclass.h |  12 +
 drivers/gpu/host1x/hw/hw_host1x06_uclass.h |  12 +
 drivers/gpu/host1x/hw/hw_host1x07_uclass.h |  12 +
 drivers/gpu/host1x/intr.c                  |   9 +
 drivers/gpu/host1x/intr.h                  |   2 +
 drivers/gpu/host1x/job.c                   |  98 +++--
 drivers/gpu/host1x/job.h                   |  16 +
 drivers/gpu/host1x/syncpt.c                |   2 +
 drivers/gpu/host1x/syncpt.h                |  12 +
 include/linux/host1x.h                     |  27 +-
 include/uapi/drm/tegra_drm.h               | 425 ++++++++++++++++++--
 37 files changed, 2882 insertions(+), 197 deletions(-)
 create mode 100644 drivers/gpu/drm/tegra/firewall.c
 create mode 100644 drivers/gpu/drm/tegra/submit.c
 create mode 100644 drivers/gpu/drm/tegra/submit.h
 create mode 100644 drivers/gpu/drm/tegra/uapi.c
 create mode 100644 drivers/gpu/drm/tegra/uapi.h
 create mode 100644 drivers/gpu/host1x/fence.c
 create mode 100644 drivers/gpu/host1x/fence.h