+++ /dev/null
-From 49a0627f025c62465563090dc7785ba6c9764bcd Mon Sep 17 00:00:00 2001
-From: Dave Stevenson <dave.stevenson@raspberrypi.com>
-Date: Thu, 7 Jan 2021 10:45:16 +0000
-Subject: [PATCH] staging/bcm2835-codec: Add the unpacked (16bpp) raw
- formats
-
-Now that the firmware supports the unpacked (16bpp) variants
-of the MIPI raw formats, add the mappings.
-
-Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
----
- .../bcm2835-codec/bcm2835-v4l2-codec.c | 128 +++++++++++++++++-
- 1 file changed, 126 insertions(+), 2 deletions(-)
-
---- a/drivers/staging/vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c
-+++ b/drivers/staging/vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c
-@@ -381,6 +381,106 @@ static const struct bcm2835_codec_fmt su
- .size_multiplier_x2 = 2,
- .is_bayer = true,
- }, {
-+ /* Bayer formats unpacked to 16bpp */
-+ /* 10 bit */
-+ .fourcc = V4L2_PIX_FMT_SRGGB10,
-+ .depth = 16,
-+ .bytesperline_align = 32,
-+ .flags = 0,
-+ .mmal_fmt = MMAL_ENCODING_BAYER_SRGGB10,
-+ .size_multiplier_x2 = 2,
-+ .is_bayer = true,
-+ }, {
-+ .fourcc = V4L2_PIX_FMT_SBGGR10,
-+ .depth = 16,
-+ .bytesperline_align = 32,
-+ .flags = 0,
-+ .mmal_fmt = MMAL_ENCODING_BAYER_SBGGR10,
-+ .size_multiplier_x2 = 2,
-+ .is_bayer = true,
-+ }, {
-+ .fourcc = V4L2_PIX_FMT_SGRBG10,
-+ .depth = 16,
-+ .bytesperline_align = 32,
-+ .flags = 0,
-+ .mmal_fmt = MMAL_ENCODING_BAYER_SGRBG10,
-+ .size_multiplier_x2 = 2,
-+ .is_bayer = true,
-+ }, {
-+ .fourcc = V4L2_PIX_FMT_SGBRG10,
-+ .depth = 16,
-+ .bytesperline_align = 32,
-+ .flags = 0,
-+ .mmal_fmt = MMAL_ENCODING_BAYER_SGBRG10,
-+ .size_multiplier_x2 = 2,
-+ .is_bayer = true,
-+ }, {
-+ /* 12 bit */
-+ .fourcc = V4L2_PIX_FMT_SRGGB12,
-+ .depth = 16,
-+ .bytesperline_align = 32,
-+ .flags = 0,
-+ .mmal_fmt = MMAL_ENCODING_BAYER_SRGGB12,
-+ .size_multiplier_x2 = 2,
-+ .is_bayer = true,
-+ }, {
-+ .fourcc = V4L2_PIX_FMT_SBGGR12,
-+ .depth = 16,
-+ .bytesperline_align = 32,
-+ .flags = 0,
-+ .mmal_fmt = MMAL_ENCODING_BAYER_SBGGR12,
-+ .size_multiplier_x2 = 2,
-+ .is_bayer = true,
-+ }, {
-+ .fourcc = V4L2_PIX_FMT_SGRBG12,
-+ .depth = 16,
-+ .bytesperline_align = 32,
-+ .flags = 0,
-+ .mmal_fmt = MMAL_ENCODING_BAYER_SGRBG12,
-+ .size_multiplier_x2 = 2,
-+ .is_bayer = true,
-+ }, {
-+ .fourcc = V4L2_PIX_FMT_SGBRG12,
-+ .depth = 16,
-+ .bytesperline_align = 32,
-+ .flags = 0,
-+ .mmal_fmt = MMAL_ENCODING_BAYER_SGBRG12,
-+ .size_multiplier_x2 = 2,
-+ .is_bayer = true,
-+ }, {
-+ /* 14 bit */
-+ .fourcc = V4L2_PIX_FMT_SRGGB14,
-+ .depth = 16,
-+ .bytesperline_align = 32,
-+ .flags = 0,
-+ .mmal_fmt = MMAL_ENCODING_BAYER_SRGGB14,
-+ .size_multiplier_x2 = 2,
-+ .is_bayer = true,
-+ }, {
-+ .fourcc = V4L2_PIX_FMT_SBGGR14,
-+ .depth = 16,
-+ .bytesperline_align = 32,
-+ .flags = 0,
-+ .mmal_fmt = MMAL_ENCODING_BAYER_SBGGR14,
-+ .size_multiplier_x2 = 2,
-+ .is_bayer = true,
-+ }, {
-+ .fourcc = V4L2_PIX_FMT_SGRBG14,
-+ .depth = 16,
-+ .bytesperline_align = 32,
-+ .flags = 0,
-+ .mmal_fmt = MMAL_ENCODING_BAYER_SGRBG14,
-+ .size_multiplier_x2 = 2,
-+ .is_bayer = true,
-+ }, {
-+ .fourcc = V4L2_PIX_FMT_SGBRG14,
-+ .depth = 16,
-+ .bytesperline_align = 32,
-+ .flags = 0,
-+ .mmal_fmt = MMAL_ENCODING_BAYER_SGBRG14,
-+ .size_multiplier_x2 = 2,
-+ .is_bayer = true,
-+ }, {
- /* Monochrome MIPI formats */
- /* 8 bit */
- .fourcc = V4L2_PIX_FMT_GREY,
-@@ -422,6 +522,30 @@ static const struct bcm2835_codec_fmt su
- .mmal_fmt = MMAL_ENCODING_Y16,
- .size_multiplier_x2 = 2,
- }, {
-+ /* 10 bit as 16bpp */
-+ .fourcc = V4L2_PIX_FMT_Y10,
-+ .depth = 16,
-+ .bytesperline_align = 32,
-+ .flags = 0,
-+ .mmal_fmt = MMAL_ENCODING_Y10,
-+ .size_multiplier_x2 = 2,
-+ }, {
-+ /* 12 bit as 16bpp */
-+ .fourcc = V4L2_PIX_FMT_Y12,
-+ .depth = 16,
-+ .bytesperline_align = 32,
-+ .flags = 0,
-+ .mmal_fmt = MMAL_ENCODING_Y12,
-+ .size_multiplier_x2 = 2,
-+ }, {
-+ /* 14 bit as 16bpp */
-+ .fourcc = V4L2_PIX_FMT_Y14,
-+ .depth = 16,
-+ .bytesperline_align = 32,
-+ .flags = 0,
-+ .mmal_fmt = MMAL_ENCODING_Y14,
-+ .size_multiplier_x2 = 2,
-+ }, {
- /* Compressed formats */
- .fourcc = V4L2_PIX_FMT_H264,
- .depth = 0,
-@@ -2681,10 +2805,10 @@ static const struct v4l2_m2m_ops m2m_ops
-
- /* Size of the array to provide to the VPU when asking for the list of supported
- * formats.
-- * The ISP component currently advertises 44 input formats, so add a small
-+ * The ISP component currently advertises 62 input formats, so add a small
- * overhead on that.
- */
--#define MAX_SUPPORTED_ENCODINGS 50
-+#define MAX_SUPPORTED_ENCODINGS 70
-
- /* Populate dev->supported_fmts with the formats supported by those ports. */
- static int bcm2835_codec_get_supported_fmts(struct bcm2835_codec_dev *dev)