mbox series

[GIT,PULL] drm/imx: update image-convert with fixes for multi-tiled scaling

Message ID 1543835266.5647.1.camel@pengutronix.de (mailing list archive)
State New, archived
Headers show
Series [GIT,PULL] drm/imx: update image-convert with fixes for multi-tiled scaling | expand

Pull-request

git://git.pengutronix.de/git/pza/linux.git tags/imx-drm-next-2018-12-03

Message

Philipp Zabel Dec. 3, 2018, 11:07 a.m. UTC
Hi Dave,

please consider merging this update for the ipu-v3 mem2mem image
conversion code together with a few small cleanups and fixes.

regards
Philipp

The following changes since commit 651022382c7f8da46cb4872a545ee1da6d097d2a:

  Linux 4.20-rc1 (2018-11-04 15:37:52 -0800)

are available in the Git repository at:

  git://git.pengutronix.de/git/pza/linux.git tags/imx-drm-next-2018-12-03

for you to fetch changes up to 97c78f4d07e5033717c08b650462b3087ecfe8e8:

  drm/imx: ipuv3-plane: add IDMAC timeout warning (2018-11-05 14:56:04 +0100)

----------------------------------------------------------------
drm/imx: update image-convert with fixes for multi-tiled scaling

Update the ipu-v3 mem2mem image-convert code, with some fixes for race
conditions, alignment issues, and visual artifacts due to tile alignment
and scaling factor issues when scaling images larger than hardware
limitations in multiple tiles. This will allow the V4L2 mem2mem scaler
driver to write output images larger than 1024x1024 pixels.

Also switch drm/imx source files to SPDX license identifiers, constify
struct clk_ops in imx-tve, and add a timeout warning to the busy wait in
ipu_plane_disable().

----------------------------------------------------------------
Fabio Estevam (1):
      drm/imx: Switch to SPDX identifier

Julia Lawall (1):
      drm/imx: imx-tve: constify clk_ops structure

Philipp Zabel (15):
      gpu: ipu-v3: ipu-ic: allow to manually set resize coefficients
      gpu: ipu-v3: image-convert: prepare for per-tile configuration
      gpu: ipu-v3: image-convert: calculate per-tile resize coefficients
      gpu: ipu-v3: image-convert: reconfigure IC per tile
      gpu: ipu-v3: image-convert: store tile top/left position
      gpu: ipu-v3: image-convert: calculate tile dimensions and offsets outside fill_image
      gpu: ipu-v3: image-convert: move tile alignment helpers
      gpu: ipu-v3: image-convert: select optimal seam positions
      gpu: ipu-v3: image-convert: fix debug output for varying tile sizes
      gpu: ipu-v3: image-convert: relax alignment restrictions
      gpu: ipu-v3: image-convert: fix bytesperline adjustment
      gpu: ipu-v3: image-convert: add some ASCII art to the exposition
      gpu: ipu-v3: image-convert: disable double buffering if necessary
      gpu: ipu-v3: image-convert: allow three rows or columns
      drm/imx: ipuv3-plane: add IDMAC timeout warning

Steve Longerbeam (7):
      gpu: ipu-cpmem: add WARN_ON_ONCE() for unaligned dma buffers
      gpu: ipu-v3: Add chroma plane offset overrides to ipu_cpmem_set_image()
      gpu: ipu-v3: image-convert: Prevent race between run and unprepare
      gpu: ipu-v3: image-convert: Only wait for abort completion if active run
      gpu: ipu-v3: image-convert: Allow reentrancy into abort
      gpu: ipu-v3: image-convert: Remove need_abort flag
      gpu: ipu-v3: image-convert: Catch unaligned tile offsets

 drivers/gpu/drm/imx/dw_hdmi-imx.c      |    5 +-
 drivers/gpu/drm/imx/imx-drm-core.c     |   11 +-
 drivers/gpu/drm/imx/imx-ldb.c          |   10 +-
 drivers/gpu/drm/imx/imx-tve.c          |   12 +-
 drivers/gpu/drm/imx/ipuv3-crtc.c       |   10 +-
 drivers/gpu/drm/imx/ipuv3-plane.c      |   18 +-
 drivers/gpu/drm/imx/parallel-display.c |   10 +-
 drivers/gpu/ipu-v3/ipu-cpmem.c         |   52 +++--
 drivers/gpu/ipu-v3/ipu-ic.c            |   52 +++--
 drivers/gpu/ipu-v3/ipu-image-convert.c | 1019 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------
 include/video/imx-ipu-v3.h             |    9 +
 11 files changed, 940 insertions(+), 268 deletions(-)