[libcamera-devel] [PATCH v4 00/10] Raspberry Pi: Conversion to media controller

Naushir Patuck naush at raspberrypi.com
Thu Oct 28 10:46:36 CEST 2021


Hi,

Version 4 of this series picks up a few more commits and changes:

- Patch 3/10 from Laurent added to use scoped enums for BayerFormat::Packing.
- Patch 4/10 adds formats::R10_CSI2P (10-bit mono packed) format. This can be
merged with 2/10 if folks think that is more appropriate.
- In 6/10 I've made the conversion table search success/failure return path
consistent with the rest of the file.
- I've moved the patch to setup h/v flips ahead of the other changes in 7/10.
This reduces code churn and avoids making the MC changes in parts of the code
that will eventually be deleted.
- In 8/10, reverted back to using the BayerFormat conversion table instead of
using a local one.
- In 8/10  merged the packing considations that were previously in a spearate
commit to reduce code churn in this series.
- In 8/10 added a new helper mbusCodeToPixelFormat() to replace the old mbusCodeToBayerFormat().
This reduces the number of overall lookups needed for our conversions, and also 
accounts for packing options.

Given the changes to 8/10, I've removed all existing tags for folk to have a re-review of
that change.

Thanks,
Naush

Laurent Pinchart (3):
  include: drm_fourcc: Add R10 and R12 FourCC
  libcamera: formats: Add R10 and R12 formats
  libcamera: bayer_format: Turn BayerFormat::Packing into scoped enum

Naushir Patuck (7):
  libcamera: formats: Add R10_CSI2P format
  libcamera: bayer_format: Rework BayerFormat conversion table
  libcamera: bayer_format: Add PixelFormat conversion helpers to
    BayerFormat class
  pipeline: raspberrypi: Apply sensor flips at the start of configure()
  pipeline: raspberrypi: Convert the pipeline handler to use media
    controller
  pipeline: raspberrypi: Remove "unpacked" format penalty in mode
    selection
  pipeline: raspberrypi: Account for a missing Unicam embedded data node

 include/libcamera/internal/bayer_format.h     |  10 +-
 include/linux/drm_fourcc.h                    |   6 +
 src/libcamera/bayer_format.cpp                | 219 ++++++++++------
 src/libcamera/formats.cpp                     |  39 +++
 src/libcamera/formats.yaml                    |   8 +
 .../pipeline/raspberrypi/raspberrypi.cpp      | 238 +++++++++++-------
 src/libcamera/v4l2_pixelformat.cpp            |   4 +
 test/bayer-format.cpp                         |  28 +--
 8 files changed, 363 insertions(+), 189 deletions(-)

-- 
2.25.1



More information about the libcamera-devel mailing list