On Tue Jul 28 14:58:58 2026 +0800, Laurentiu Palcu wrote:
> Add support for 16-bit raw Bayer formats (SBGGR16, SGBRG16, SGRBG16,
> SRGGB16) to both the pipeline subdev and video capture interface.
> 
> These formats are used by image sensors that output 16-bit raw data,
> enabling the ISI to capture full dynamic range from such sensors.
> 
> Signed-off-by: Laurentiu Palcu <[email protected]>
> Reviewed-by: Frank Li <[email protected]>
> Reviewed-by: Laurent Pinchart <[email protected]>
> Signed-off-by: Guoniu Zhou <[email protected]>
> Reviewed-by: Loic Poulain <[email protected]>
> Link: https://patch.msgid.link/[email protected]
> Signed-off-by: Laurent Pinchart <[email protected]>
> Signed-off-by: Hans Verkuil <[email protected]>

Patch committed.

Thanks,
Hans Verkuil

 .../media/platform/nxp/imx8-isi/imx8-isi-pipe.c    | 30 +++++++++++++++
 .../media/platform/nxp/imx8-isi/imx8-isi-video.c   | 45 ++++++++++++++++++++++
 2 files changed, 75 insertions(+)

---

diff --git a/drivers/media/platform/nxp/imx8-isi/imx8-isi-pipe.c 
b/drivers/media/platform/nxp/imx8-isi/imx8-isi-pipe.c
index c0ec59856374..934f7b356258 100644
--- a/drivers/media/platform/nxp/imx8-isi/imx8-isi-pipe.c
+++ b/drivers/media/platform/nxp/imx8-isi/imx8-isi-pipe.c
@@ -83,6 +83,12 @@ static const struct mxc_isi_bus_format_info 
mxc_isi_bus_formats[] = {
                .pads           = BIT(MXC_ISI_PIPE_PAD_SINK)
                                | BIT(MXC_ISI_PIPE_PAD_SOURCE),
                .encoding       = MXC_ISI_ENC_RAW,
+       }, {
+               .mbus_code      = MEDIA_BUS_FMT_Y16_1X16,
+               .output         = MEDIA_BUS_FMT_Y16_1X16,
+               .pads           = BIT(MXC_ISI_PIPE_PAD_SINK)
+                               | BIT(MXC_ISI_PIPE_PAD_SOURCE),
+               .encoding       = MXC_ISI_ENC_RAW,
        }, {
                .mbus_code      = MEDIA_BUS_FMT_SBGGR8_1X8,
                .output         = MEDIA_BUS_FMT_SBGGR8_1X8,
@@ -179,6 +185,30 @@ static const struct mxc_isi_bus_format_info 
mxc_isi_bus_formats[] = {
                .pads           = BIT(MXC_ISI_PIPE_PAD_SINK)
                                | BIT(MXC_ISI_PIPE_PAD_SOURCE),
                .encoding       = MXC_ISI_ENC_RAW,
+       }, {
+               .mbus_code      = MEDIA_BUS_FMT_SBGGR16_1X16,
+               .output         = MEDIA_BUS_FMT_SBGGR16_1X16,
+               .pads           = BIT(MXC_ISI_PIPE_PAD_SINK)
+                               | BIT(MXC_ISI_PIPE_PAD_SOURCE),
+               .encoding       = MXC_ISI_ENC_RAW,
+       }, {
+               .mbus_code      = MEDIA_BUS_FMT_SGBRG16_1X16,
+               .output         = MEDIA_BUS_FMT_SGBRG16_1X16,
+               .pads           = BIT(MXC_ISI_PIPE_PAD_SINK)
+                               | BIT(MXC_ISI_PIPE_PAD_SOURCE),
+               .encoding       = MXC_ISI_ENC_RAW,
+       }, {
+               .mbus_code      = MEDIA_BUS_FMT_SGRBG16_1X16,
+               .output         = MEDIA_BUS_FMT_SGRBG16_1X16,
+               .pads           = BIT(MXC_ISI_PIPE_PAD_SINK)
+                               | BIT(MXC_ISI_PIPE_PAD_SOURCE),
+               .encoding       = MXC_ISI_ENC_RAW,
+       }, {
+               .mbus_code      = MEDIA_BUS_FMT_SRGGB16_1X16,
+               .output         = MEDIA_BUS_FMT_SRGGB16_1X16,
+               .pads           = BIT(MXC_ISI_PIPE_PAD_SINK)
+                               | BIT(MXC_ISI_PIPE_PAD_SOURCE),
+               .encoding       = MXC_ISI_ENC_RAW,
        },
        /* JPEG */
        {
diff --git a/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c 
b/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c
index 056603055c81..a6e044056762 100644
--- a/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c
+++ b/drivers/media/platform/nxp/imx8-isi/imx8-isi-video.c
@@ -212,6 +212,15 @@ static const struct mxc_isi_format_info mxc_isi_formats[] 
= {
                .color_planes   = 1,
                .depth          = { 16 },
                .encoding       = MXC_ISI_ENC_RAW,
+       }, {
+               .mbus_code      = MEDIA_BUS_FMT_Y16_1X16,
+               .fourcc         = V4L2_PIX_FMT_Y16,
+               .type           = MXC_ISI_VIDEO_CAP,
+               .isi_out_format = CHNL_IMG_CTRL_FORMAT_RAW16,
+               .mem_planes     = 1,
+               .color_planes   = 1,
+               .depth          = { 16 },
+               .encoding       = MXC_ISI_ENC_RAW,
        }, {
                .mbus_code      = MEDIA_BUS_FMT_SBGGR8_1X8,
                .fourcc         = V4L2_PIX_FMT_SBGGR8,
@@ -356,6 +365,42 @@ static const struct mxc_isi_format_info mxc_isi_formats[] 
= {
                .color_planes   = 1,
                .depth          = { 16 },
                .encoding       = MXC_ISI_ENC_RAW,
+       }, {
+               .mbus_code      = MEDIA_BUS_FMT_SBGGR16_1X16,
+               .fourcc         = V4L2_PIX_FMT_SBGGR16,
+               .type           = MXC_ISI_VIDEO_CAP,
+               .isi_out_format = CHNL_IMG_CTRL_FORMAT_RAW16,
+               .mem_planes     = 1,
+               .color_planes   = 1,
+               .depth          = { 16 },
+               .encoding       = MXC_ISI_ENC_RAW,
+       }, {
+               .mbus_code      = MEDIA_BUS_FMT_SGBRG16_1X16,
+               .fourcc         = V4L2_PIX_FMT_SGBRG16,
+               .type           = MXC_ISI_VIDEO_CAP,
+               .isi_out_format = CHNL_IMG_CTRL_FORMAT_RAW16,
+               .mem_planes     = 1,
+               .color_planes   = 1,
+               .depth          = { 16 },
+               .encoding       = MXC_ISI_ENC_RAW,
+       }, {
+               .mbus_code      = MEDIA_BUS_FMT_SGRBG16_1X16,
+               .fourcc         = V4L2_PIX_FMT_SGRBG16,
+               .type           = MXC_ISI_VIDEO_CAP,
+               .isi_out_format = CHNL_IMG_CTRL_FORMAT_RAW16,
+               .mem_planes     = 1,
+               .color_planes   = 1,
+               .depth          = { 16 },
+               .encoding       = MXC_ISI_ENC_RAW,
+       }, {
+               .mbus_code      = MEDIA_BUS_FMT_SRGGB16_1X16,
+               .fourcc         = V4L2_PIX_FMT_SRGGB16,
+               .type           = MXC_ISI_VIDEO_CAP,
+               .isi_out_format = CHNL_IMG_CTRL_FORMAT_RAW16,
+               .mem_planes     = 1,
+               .color_planes   = 1,
+               .depth          = { 16 },
+               .encoding       = MXC_ISI_ENC_RAW,
        },
        /* JPEG */
        {
_______________________________________________
linuxtv-commits mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to