mbox series

[v7,00/11] media: imx: Miscellaneous format-related cleanups

Message ID 20200406163905.24475-1-slongerbeam@gmail.com (mailing list archive)
Headers show
Series media: imx: Miscellaneous format-related cleanups | expand

Message

Steve Longerbeam April 6, 2020, 4:38 p.m. UTC
This series picks up Laurent Pinchart's series:

[PATCH 0/8] media: imx: Miscalleanous format-related cleanups

with a merge of two patches from Philipp Zabel's series:

[PATCH 1/3] media: imx: enable V4L2_PIX_FMT_XBGR32, _BGRX32, and _RGBX32

with an additional patch at the end that splits up the find_enum_format()
functions into separate functions for in-memory fourcc codes and mbus
codes, as requested by Hans Verkuil in the series from Philipp.

History:

v7:
- Patch "Handle Bayer format lookup through a selection flag" did not
  make equivalent translations of the format selection arguments in
  some cases. That patch in this version now makes sure all selection
  flags are equivalent to previous behavior. That is, SEL_ANY is
  translated to SEL_YUV_RGB in situations where allow_bayer was false,
  and to SEL_ANY where allow_bayer was true.
- Added a new patch that fixes the selection flags in a couple places,
  which in previous versions were sneaked into the "Handle Bayer format
  lookup through a selection flag" patch. Suggested by Laurent.
- Squashed the two constify patches into a single patch. Suggested by
  Laurent.
- Made imx_media_find_ipu_format() and imx_media_enum_ipu_formats()
  inline. Suggested by Laurent.
- Clarified the comment block language in the exported find/enum format
  functions. Suggested by Laurent.

v6:
- Moved the last patch, "Split find|enum_format into fourcc and mbus
  functions", up in the series, which makes the patches cleaner and
  reduces the patch count by 1.
- "if (sel_ipu && !fmt->ipufmt) ..." should be
  "if (sel_ipu != fmt->ipufmt) ...".

v5:
- Added a patch that renames the pixel format selection enums/flags.
- Added a patch that adds another format selection flag, to select
  the IPU-internal formats. This is an alternative to the previous
  patch "media: imx: utils: Simplify IPU format lookup and enumeration".
- Add comments for the struct imx_media_pixfmt members, with a
  warning that the codes pointer is NULL for the in-memory-only formats.

v4:
- Constify mbus arg to imx_media_mbus_fmt_to_ipu_image().
- Constify ipu_image arg to imx_media_ipu_image_to_mbus_fmt().
- Return -EINVAL in imx_media_ipu_image_to_mbus_fmt() if given
  image pixelformat does not have mbus codes.

v3:
- fixed derefencing a NULL cc->codes on return from imx_media_find_format()
  in several places.

v2:
- fixed a bug:
  "for (j=0; j < fmt->codes[j]; j++)" should be
  "for (j=0; fmt->codes[j]; j++)", in the mbus format enum functions.
  Caught by Laurent.
- move some local vars under the pixel_formats[] loop. Suggested by Laurent.
- decrement the index passed to the enum functions, instead of introducing
  a match_index local var. Suggested by Laurent.


Laurent Pinchart (5):
  media: imx: utils: Inline init_mbus_colorimetry() in its caller
  media: imx: utils: Handle Bayer format lookup through a selection flag
  media: imx: utils: Make imx_media_pixfmt handle variable number of
    codes
  media: imx: utils: Rename format lookup and enumeration functions
  media: imx: utils: Constify some mbus and ipu_image arguments

Philipp Zabel (2):
  media: imx: utils: fix and simplify pixel format enumeration
  media: imx: utils: fix media bus format enumeration

Steve Longerbeam (4):
  media: imx: Fix some pixel format selections
  media: imx: utils: Rename pixel format selection enumeration
  media: imx: utils: Introduce PIXFMT_SEL_IPU
  media: imx: utils: Split find|enum_format into fourcc and mbus
    functions

 drivers/staging/media/imx/imx-ic-prp.c        |  15 +-
 drivers/staging/media/imx/imx-ic-prpencvf.c   |  14 +-
 drivers/staging/media/imx/imx-media-capture.c |  42 +-
 .../staging/media/imx/imx-media-csc-scaler.c  |   3 +-
 drivers/staging/media/imx/imx-media-csi.c     |  42 +-
 drivers/staging/media/imx/imx-media-utils.c   | 518 ++++++++----------
 drivers/staging/media/imx/imx-media-vdic.c    |  12 +-
 drivers/staging/media/imx/imx-media.h         |  57 +-
 drivers/staging/media/imx/imx7-media-csi.c    |  17 +-
 9 files changed, 334 insertions(+), 386 deletions(-)