From patchwork Wed May 4 13:15:54 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Pinchart X-Patchwork-Id: 15768 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 30EA0C326C for ; Wed, 4 May 2022 13:16:08 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 8A6806564A; Wed, 4 May 2022 15:16:06 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org; s=mail; t=1651670166; bh=01wWz7uXaGAOnjr8VOez3q9MtUO9GTK+uO99FM5XhZE=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=neksaW3U3YeIau8p5FT7OeCvmRSVvLwCj1d4misd/HNY6FOKNg4ceiDO2rwBraVR5 beHZ/aW4RuSV+OkqhoakdhKaq00oOt2s6gNWSxfv7aBsj9cDOHrwFmioxILTRrOmJK AE17IyIaQAQPM87KJ8yUweE6bjOkukYaGxCBW6PwNk4ECzyTZOo/vuyb5V8IQfC+xR raJyvAaDAUeSALoIE/xkjRcSkYcn8YOHs7DA/oCiOtB0GDrWh6ifvy9X0awj1nAzlT kack04FN8xyKE4KxZitMZJwyq9gBTLk9my/AHUtxPobD3sYIX89i4Fb/esP9wZ1gxd 9RdzeLh3frEYw== Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 2B52E65641 for ; Wed, 4 May 2022 15:16:04 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="qE6Y/NUX"; dkim-atps=neutral Received: from pendragon.lan (62-78-145-57.bb.dnainternet.fi [62.78.145.57]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id BD75B835 for ; Wed, 4 May 2022 15:16:03 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1651670163; bh=01wWz7uXaGAOnjr8VOez3q9MtUO9GTK+uO99FM5XhZE=; h=From:To:Subject:Date:In-Reply-To:References:From; b=qE6Y/NUXih9EaKk+BayJlQxyXLbEyiPrixRWJATCug9QgEPX3/Bt+zR3kZ4Y/kc2X plYYdafrlReLLkqUXRNlhIEB3iZMd9g5K1+EEjGBUd1oR/2eOHouztT/Szj5TaHgjx 7o+sqpIQgkkGcnZ5sMBxlsB7ufHxNN4nXgzL3qIc= To: libcamera-devel@lists.libcamera.org Date: Wed, 4 May 2022 16:15:54 +0300 Message-Id: <20220504131558.9498-2-laurent.pinchart@ideasonboard.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220504131558.9498-1-laurent.pinchart@ideasonboard.com> References: <20220504131558.9498-1-laurent.pinchart@ideasonboard.com> MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH 1/5] libcamera: formats: Add YVU422 pixel format X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Laurent Pinchart via libcamera-devel From: Laurent Pinchart Reply-To: Laurent Pinchart Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" The YVU422 pixel format is defined in both DRM and V4L2. libcamera already supports YUV422, add support for the opposite chroma order. Signed-off-by: Laurent Pinchart --- src/libcamera/formats.cpp | 13 +++++++++++++ src/libcamera/formats.yaml | 2 ++ src/libcamera/v4l2_pixelformat.cpp | 2 ++ 3 files changed, 17 insertions(+) diff --git a/src/libcamera/formats.cpp b/src/libcamera/formats.cpp index afcaabc519f7..c5cca37b02c2 100644 --- a/src/libcamera/formats.cpp +++ b/src/libcamera/formats.cpp @@ -469,6 +469,19 @@ const std::map pixelFormatInfo{ .pixelsPerGroup = 2, .planes = {{ { 2, 1 }, { 1, 1 }, { 1, 1 } }}, } }, + { formats::YVU422, { + .name = "YVU422", + .format = formats::YVU422, + .v4l2Formats = { + .single = V4L2PixelFormat(), + .multi = V4L2PixelFormat(V4L2_PIX_FMT_YVU422M), + }, + .bitsPerPixel = 16, + .colourEncoding = PixelFormatInfo::ColourEncodingYUV, + .packed = false, + .pixelsPerGroup = 2, + .planes = {{ { 2, 1 }, { 1, 1 }, { 1, 1 } }}, + } }, /* Greyscale formats. */ { formats::R8, { diff --git a/src/libcamera/formats.yaml b/src/libcamera/formats.yaml index 1f3f043302c3..0b527dbefe32 100644 --- a/src/libcamera/formats.yaml +++ b/src/libcamera/formats.yaml @@ -69,6 +69,8 @@ formats: fourcc: DRM_FORMAT_YVU420 - YUV422: fourcc: DRM_FORMAT_YUV422 + - YVU422: + fourcc: DRM_FORMAT_YVU422 - MJPEG: fourcc: DRM_FORMAT_MJPEG diff --git a/src/libcamera/v4l2_pixelformat.cpp b/src/libcamera/v4l2_pixelformat.cpp index 1dd93baa7a64..818bd1037e14 100644 --- a/src/libcamera/v4l2_pixelformat.cpp +++ b/src/libcamera/v4l2_pixelformat.cpp @@ -113,6 +113,8 @@ const std::map vpf2pf{ { formats::YUV422, "Planar YUV 4:2:2" } }, { V4L2PixelFormat(V4L2_PIX_FMT_YUV422M), { formats::YUV422, "Planar YUV 4:2:2 (N-C)" } }, + { V4L2PixelFormat(V4L2_PIX_FMT_YUV422M), + { formats::YVU422, "Planar YVU 4:2:2 (N-C)" } }, /* Greyscale formats. */ { V4L2PixelFormat(V4L2_PIX_FMT_GREY), From patchwork Wed May 4 13:15:55 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Pinchart X-Patchwork-Id: 15769 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id F3766C0F2A for ; Wed, 4 May 2022 13:16:08 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id D99FB65654; Wed, 4 May 2022 15:16:06 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org; s=mail; t=1651670166; bh=fWt404U56kVZzAAy/pmDiT2ZgDHZxGo0VUAC6a9H31o=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=F2BVOhDfXAl1UcHQbKeKo013aNy/8E8TtNDtSvFYTVRmZ4OdNxQn1aR4N7M73338I bKvqm5f9nH50tyqBxQ/AhsETnLCDQfT0chl6npFY3CZevPGjRwsD+29U4X37PtsD0z AUfzpwdMXiTVVy2n2Bu1ippjR5KCGJQPM0qHH7/VJOTSK26EHgLBHwXYdL/iPEdUgS fGfg/SeVp8U2zVpA8owhYGHn1BHhwuNJe6j+AWjcKCzYTMDOca2ozJmFydrL7ucKME sVFdAtZyTBhikI790UVK6hWuFn7kJVDtNG7Y6po/Ht1mj6qNZfcYsMZGKq0Hi1LROe p/7D9cScOqzQg== Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 7E54E65642 for ; Wed, 4 May 2022 15:16:04 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="F6k0Et+u"; dkim-atps=neutral Received: from pendragon.lan (62-78-145-57.bb.dnainternet.fi [62.78.145.57]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 25FA14A8 for ; Wed, 4 May 2022 15:16:04 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1651670164; bh=fWt404U56kVZzAAy/pmDiT2ZgDHZxGo0VUAC6a9H31o=; h=From:To:Subject:Date:In-Reply-To:References:From; b=F6k0Et+u/qQPeKQJhunCihSaCFRG6hQJaRs1D5kejZKUK3yfWzfN/0F4OoE81WOd0 +p7FD29SLxF4VZt/F+szhyom6xJ87O+//heU5LwZ9Qtfhuh2Snl1GNAlv1ok/L+8Nx bdJK7C1sO9miWEUvlkwvyRw8bMo/AwNmITaIOMVM= To: libcamera-devel@lists.libcamera.org Date: Wed, 4 May 2022 16:15:55 +0300 Message-Id: <20220504131558.9498-3-laurent.pinchart@ideasonboard.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220504131558.9498-1-laurent.pinchart@ideasonboard.com> References: <20220504131558.9498-1-laurent.pinchart@ideasonboard.com> MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH 2/5] libcamera: formats: Add YUV444 and YVU444 pixel formats X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Laurent Pinchart via libcamera-devel From: Laurent Pinchart Reply-To: Laurent Pinchart Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" Extend planar YUV format support with 4:4:4 formats. Those formats are used by the i.MX8 ISI driver that will be supported by the simple pipeline handler. Signed-off-by: Laurent Pinchart Reviewed-by: Jacopo Mondi --- src/libcamera/formats.cpp | 26 ++++++++++++++++++++++++++ src/libcamera/formats.yaml | 4 ++++ src/libcamera/v4l2_pixelformat.cpp | 4 ++++ 3 files changed, 34 insertions(+) diff --git a/src/libcamera/formats.cpp b/src/libcamera/formats.cpp index c5cca37b02c2..e205df0529ba 100644 --- a/src/libcamera/formats.cpp +++ b/src/libcamera/formats.cpp @@ -482,6 +482,32 @@ const std::map pixelFormatInfo{ .pixelsPerGroup = 2, .planes = {{ { 2, 1 }, { 1, 1 }, { 1, 1 } }}, } }, + { formats::YUV444, { + .name = "YUV444", + .format = formats::YUV444, + .v4l2Formats = { + .single = V4L2PixelFormat(), + .multi = V4L2PixelFormat(V4L2_PIX_FMT_YUV444M), + }, + .bitsPerPixel = 24, + .colourEncoding = PixelFormatInfo::ColourEncodingYUV, + .packed = false, + .pixelsPerGroup = 1, + .planes = {{ { 1, 1 }, { 1, 1 }, { 1, 1 } }}, + } }, + { formats::YVU444, { + .name = "YVU444", + .format = formats::YVU444, + .v4l2Formats = { + .single = V4L2PixelFormat(), + .multi = V4L2PixelFormat(V4L2_PIX_FMT_YVU444M), + }, + .bitsPerPixel = 24, + .colourEncoding = PixelFormatInfo::ColourEncodingYUV, + .packed = false, + .pixelsPerGroup = 1, + .planes = {{ { 1, 1 }, { 1, 1 }, { 1, 1 } }}, + } }, /* Greyscale formats. */ { formats::R8, { diff --git a/src/libcamera/formats.yaml b/src/libcamera/formats.yaml index 0b527dbefe32..7dda01325f33 100644 --- a/src/libcamera/formats.yaml +++ b/src/libcamera/formats.yaml @@ -71,6 +71,10 @@ formats: fourcc: DRM_FORMAT_YUV422 - YVU422: fourcc: DRM_FORMAT_YVU422 + - YUV444: + fourcc: DRM_FORMAT_YUV444 + - YVU444: + fourcc: DRM_FORMAT_YVU444 - MJPEG: fourcc: DRM_FORMAT_MJPEG diff --git a/src/libcamera/v4l2_pixelformat.cpp b/src/libcamera/v4l2_pixelformat.cpp index 818bd1037e14..8d409943e2d3 100644 --- a/src/libcamera/v4l2_pixelformat.cpp +++ b/src/libcamera/v4l2_pixelformat.cpp @@ -115,6 +115,10 @@ const std::map vpf2pf{ { formats::YUV422, "Planar YUV 4:2:2 (N-C)" } }, { V4L2PixelFormat(V4L2_PIX_FMT_YUV422M), { formats::YVU422, "Planar YVU 4:2:2 (N-C)" } }, + { V4L2PixelFormat(V4L2_PIX_FMT_YUV444M), + { formats::YUV444, "Planar YUV 4:4:4 (N-C)" } }, + { V4L2PixelFormat(V4L2_PIX_FMT_YUV444M), + { formats::YVU444, "Planar YVU 4:4:4 (N-C)" } }, /* Greyscale formats. */ { V4L2PixelFormat(V4L2_PIX_FMT_GREY), From patchwork Wed May 4 13:15:56 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Pinchart X-Patchwork-Id: 15770 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 9F773C326D for ; Wed, 4 May 2022 13:16:09 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 844AD6564B; Wed, 4 May 2022 15:16:07 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org; s=mail; t=1651670167; bh=+3DZOjT4McxSsi44ACUnpOIt8++7UhX2jVKPuHCQhcw=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=hoKbmYCqOMn24AlWwC5iTPQaaIOu2e+mgJM6DXjr9uywPqK8Owfc/NzjYVKw3QrrM c/zI3ICjI3+14R+zvDYZvTTaDtUApUQvhwoEm8tOrer+ttngBbwLRx8GJS+cVn1XVd YkO3UTZrzwIre12EEMBYOpTEDRQhXtditu36EmnbozwzjDjkwQUd3KafeOvIYf4TW0 EVKZaFhWb9TEdusMr7nG+qS9yHvturZJE8MEsAxtqSrH8y824uDxgTH9UZz/3IqlVM RA5eXZWnon3ul2v4Pk3RGKX5mHmFx2cVW8SG7/82JTwO2nQ5gNKOmmsExL4CdEs9jY 8xSIqBoyTVajw== Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id E75B0604A4 for ; Wed, 4 May 2022 15:16:04 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="jYKJ1rD2"; dkim-atps=neutral Received: from pendragon.lan (62-78-145-57.bb.dnainternet.fi [62.78.145.57]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 805CD835 for ; Wed, 4 May 2022 15:16:04 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1651670164; bh=+3DZOjT4McxSsi44ACUnpOIt8++7UhX2jVKPuHCQhcw=; h=From:To:Subject:Date:In-Reply-To:References:From; b=jYKJ1rD2EaC8IAD/gHLDUsxspG2vtyYT7Z/YSvSKwfp03j0OtUBnmPon3PHGWImmR fSfhHoQxvlToV4BlmJg8wWf+TCRdmQxVXdYUImB88/H0sin8YA+6ZYI9qaF/gIg3h+ 5oe2gWEYlUucnhJiikV52rZEzqlWOSGNrCt0Zg3s= To: libcamera-devel@lists.libcamera.org Date: Wed, 4 May 2022 16:15:56 +0300 Message-Id: <20220504131558.9498-4-laurent.pinchart@ideasonboard.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220504131558.9498-1-laurent.pinchart@ideasonboard.com> References: <20220504131558.9498-1-laurent.pinchart@ideasonboard.com> MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH 3/5] libcamera: v4l2_subdevice: Use MEDIA_BUS_FMT_* macros X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Laurent Pinchart via libcamera-devel From: Laurent Pinchart Reply-To: Laurent Pinchart Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" The V4L2_MBUS_FMT_* macros that define media bus formats are deprecated. Use the MEDIA_BUS_FMT_* macros instead. Signed-off-by: Laurent Pinchart Reviewed-by: Jacopo Mondi --- src/libcamera/v4l2_subdevice.cpp | 146 +++++++++++++++---------------- 1 file changed, 73 insertions(+), 73 deletions(-) diff --git a/src/libcamera/v4l2_subdevice.cpp b/src/libcamera/v4l2_subdevice.cpp index ca6b43cea5f1..ef79359e3e5f 100644 --- a/src/libcamera/v4l2_subdevice.cpp +++ b/src/libcamera/v4l2_subdevice.cpp @@ -54,79 +54,79 @@ struct V4L2SubdeviceFormatInfo { * bus codes */ const std::map formatInfoMap = { - { V4L2_MBUS_FMT_RGB444_2X8_PADHI_BE, { 16, "RGB444_2X8_PADHI_BE" } }, - { V4L2_MBUS_FMT_RGB444_2X8_PADHI_LE, { 16, "RGB444_2X8_PADHI_LE" } }, - { V4L2_MBUS_FMT_RGB555_2X8_PADHI_BE, { 16, "RGB555_2X8_PADHI_BE" } }, - { V4L2_MBUS_FMT_RGB555_2X8_PADHI_LE, { 16, "RGB555_2X8_PADHI_LE" } }, - { V4L2_MBUS_FMT_BGR565_2X8_BE, { 16, "BGR565_2X8_BE" } }, - { V4L2_MBUS_FMT_BGR565_2X8_LE, { 16, "BGR565_2X8_LE" } }, - { V4L2_MBUS_FMT_RGB565_2X8_BE, { 16, "RGB565_2X8_BE" } }, - { V4L2_MBUS_FMT_RGB565_2X8_LE, { 16, "RGB565_2X8_LE" } }, - { V4L2_MBUS_FMT_RGB666_1X18, { 18, "RGB666_1X18" } }, - { V4L2_MBUS_FMT_RGB888_1X24, { 24, "RGB888_1X24" } }, - { V4L2_MBUS_FMT_RGB888_2X12_BE, { 24, "RGB888_2X12_BE" } }, - { V4L2_MBUS_FMT_RGB888_2X12_LE, { 24, "RGB888_2X12_LE" } }, - { V4L2_MBUS_FMT_ARGB8888_1X32, { 32, "ARGB8888_1X32" } }, - { V4L2_MBUS_FMT_Y8_1X8, { 8, "Y8_1X8" } }, - { V4L2_MBUS_FMT_UV8_1X8, { 8, "UV8_1X8" } }, - { V4L2_MBUS_FMT_UYVY8_1_5X8, { 12, "UYVY8_1_5X8" } }, - { V4L2_MBUS_FMT_VYUY8_1_5X8, { 12, "VYUY8_1_5X8" } }, - { V4L2_MBUS_FMT_YUYV8_1_5X8, { 12, "YUYV8_1_5X8" } }, - { V4L2_MBUS_FMT_YVYU8_1_5X8, { 12, "YVYU8_1_5X8" } }, - { V4L2_MBUS_FMT_UYVY8_2X8, { 16, "UYVY8_2X8" } }, - { V4L2_MBUS_FMT_VYUY8_2X8, { 16, "VYUY8_2X8" } }, - { V4L2_MBUS_FMT_YUYV8_2X8, { 16, "YUYV8_2X8" } }, - { V4L2_MBUS_FMT_YVYU8_2X8, { 16, "YVYU8_2X8" } }, - { V4L2_MBUS_FMT_Y10_1X10, { 10, "Y10_1X10" } }, - { V4L2_MBUS_FMT_UYVY10_2X10, { 20, "UYVY10_2X10" } }, - { V4L2_MBUS_FMT_VYUY10_2X10, { 20, "VYUY10_2X10" } }, - { V4L2_MBUS_FMT_YUYV10_2X10, { 20, "YUYV10_2X10" } }, - { V4L2_MBUS_FMT_YVYU10_2X10, { 20, "YVYU10_2X10" } }, - { V4L2_MBUS_FMT_Y12_1X12, { 12, "Y12_1X12" } }, - { V4L2_MBUS_FMT_UYVY8_1X16, { 16, "UYVY8_1X16" } }, - { V4L2_MBUS_FMT_VYUY8_1X16, { 16, "VYUY8_1X16" } }, - { V4L2_MBUS_FMT_YUYV8_1X16, { 16, "YUYV8_1X16" } }, - { V4L2_MBUS_FMT_YVYU8_1X16, { 16, "YVYU8_1X16" } }, - { V4L2_MBUS_FMT_YDYUYDYV8_1X16, { 16, "YDYUYDYV8_1X16" } }, - { V4L2_MBUS_FMT_UYVY10_1X20, { 20, "UYVY10_1X20" } }, - { V4L2_MBUS_FMT_VYUY10_1X20, { 20, "VYUY10_1X20" } }, - { V4L2_MBUS_FMT_YUYV10_1X20, { 20, "YUYV10_1X20" } }, - { V4L2_MBUS_FMT_YVYU10_1X20, { 20, "YVYU10_1X20" } }, - { V4L2_MBUS_FMT_YUV10_1X30, { 30, "YUV10_1X30" } }, - { V4L2_MBUS_FMT_AYUV8_1X32, { 32, "AYUV8_1X32" } }, - { V4L2_MBUS_FMT_UYVY12_2X12, { 24, "UYVY12_2X12" } }, - { V4L2_MBUS_FMT_VYUY12_2X12, { 24, "VYUY12_2X12" } }, - { V4L2_MBUS_FMT_YUYV12_2X12, { 24, "YUYV12_2X12" } }, - { V4L2_MBUS_FMT_YVYU12_2X12, { 24, "YVYU12_2X12" } }, - { V4L2_MBUS_FMT_UYVY12_1X24, { 24, "UYVY12_1X24" } }, - { V4L2_MBUS_FMT_VYUY12_1X24, { 24, "VYUY12_1X24" } }, - { V4L2_MBUS_FMT_YUYV12_1X24, { 24, "YUYV12_1X24" } }, - { V4L2_MBUS_FMT_YVYU12_1X24, { 24, "YVYU12_1X24" } }, - { V4L2_MBUS_FMT_SBGGR8_1X8, { 8, "SBGGR8_1X8" } }, - { V4L2_MBUS_FMT_SGBRG8_1X8, { 8, "SGBRG8_1X8" } }, - { V4L2_MBUS_FMT_SGRBG8_1X8, { 8, "SGRBG8_1X8" } }, - { V4L2_MBUS_FMT_SRGGB8_1X8, { 8, "SRGGB8_1X8" } }, - { V4L2_MBUS_FMT_SBGGR10_ALAW8_1X8, { 8, "SBGGR10_ALAW8_1X8" } }, - { V4L2_MBUS_FMT_SGBRG10_ALAW8_1X8, { 8, "SGBRG10_ALAW8_1X8" } }, - { V4L2_MBUS_FMT_SGRBG10_ALAW8_1X8, { 8, "SGRBG10_ALAW8_1X8" } }, - { V4L2_MBUS_FMT_SRGGB10_ALAW8_1X8, { 8, "SRGGB10_ALAW8_1X8" } }, - { V4L2_MBUS_FMT_SBGGR10_DPCM8_1X8, { 8, "SBGGR10_DPCM8_1X8" } }, - { V4L2_MBUS_FMT_SGBRG10_DPCM8_1X8, { 8, "SGBRG10_DPCM8_1X8" } }, - { V4L2_MBUS_FMT_SGRBG10_DPCM8_1X8, { 8, "SGRBG10_DPCM8_1X8" } }, - { V4L2_MBUS_FMT_SRGGB10_DPCM8_1X8, { 8, "SRGGB10_DPCM8_1X8" } }, - { V4L2_MBUS_FMT_SBGGR10_2X8_PADHI_BE, { 16, "SBGGR10_2X8_PADHI_BE" } }, - { V4L2_MBUS_FMT_SBGGR10_2X8_PADHI_LE, { 16, "SBGGR10_2X8_PADHI_LE" } }, - { V4L2_MBUS_FMT_SBGGR10_2X8_PADLO_BE, { 16, "SBGGR10_2X8_PADLO_BE" } }, - { V4L2_MBUS_FMT_SBGGR10_2X8_PADLO_LE, { 16, "SBGGR10_2X8_PADLO_LE" } }, - { V4L2_MBUS_FMT_SBGGR10_1X10, { 10, "SBGGR10_1X10" } }, - { V4L2_MBUS_FMT_SGBRG10_1X10, { 10, "SGBRG10_1X10" } }, - { V4L2_MBUS_FMT_SGRBG10_1X10, { 10, "SGRBG10_1X10" } }, - { V4L2_MBUS_FMT_SRGGB10_1X10, { 10, "SRGGB10_1X10" } }, - { V4L2_MBUS_FMT_SBGGR12_1X12, { 12, "SBGGR12_1X12" } }, - { V4L2_MBUS_FMT_SGBRG12_1X12, { 12, "SGBRG12_1X12" } }, - { V4L2_MBUS_FMT_SGRBG12_1X12, { 12, "SGRBG12_1X12" } }, - { V4L2_MBUS_FMT_SRGGB12_1X12, { 12, "SRGGB12_1X12" } }, - { V4L2_MBUS_FMT_AHSV8888_1X32, { 32, "AHSV8888_1X32" } }, + { MEDIA_BUS_FMT_RGB444_2X8_PADHI_BE, { 16, "RGB444_2X8_PADHI_BE" } }, + { MEDIA_BUS_FMT_RGB444_2X8_PADHI_LE, { 16, "RGB444_2X8_PADHI_LE" } }, + { MEDIA_BUS_FMT_RGB555_2X8_PADHI_BE, { 16, "RGB555_2X8_PADHI_BE" } }, + { MEDIA_BUS_FMT_RGB555_2X8_PADHI_LE, { 16, "RGB555_2X8_PADHI_LE" } }, + { MEDIA_BUS_FMT_BGR565_2X8_BE, { 16, "BGR565_2X8_BE" } }, + { MEDIA_BUS_FMT_BGR565_2X8_LE, { 16, "BGR565_2X8_LE" } }, + { MEDIA_BUS_FMT_RGB565_2X8_BE, { 16, "RGB565_2X8_BE" } }, + { MEDIA_BUS_FMT_RGB565_2X8_LE, { 16, "RGB565_2X8_LE" } }, + { MEDIA_BUS_FMT_RGB666_1X18, { 18, "RGB666_1X18" } }, + { MEDIA_BUS_FMT_RGB888_1X24, { 24, "RGB888_1X24" } }, + { MEDIA_BUS_FMT_RGB888_2X12_BE, { 24, "RGB888_2X12_BE" } }, + { MEDIA_BUS_FMT_RGB888_2X12_LE, { 24, "RGB888_2X12_LE" } }, + { MEDIA_BUS_FMT_ARGB8888_1X32, { 32, "ARGB8888_1X32" } }, + { MEDIA_BUS_FMT_Y8_1X8, { 8, "Y8_1X8" } }, + { MEDIA_BUS_FMT_UV8_1X8, { 8, "UV8_1X8" } }, + { MEDIA_BUS_FMT_UYVY8_1_5X8, { 12, "UYVY8_1_5X8" } }, + { MEDIA_BUS_FMT_VYUY8_1_5X8, { 12, "VYUY8_1_5X8" } }, + { MEDIA_BUS_FMT_YUYV8_1_5X8, { 12, "YUYV8_1_5X8" } }, + { MEDIA_BUS_FMT_YVYU8_1_5X8, { 12, "YVYU8_1_5X8" } }, + { MEDIA_BUS_FMT_UYVY8_2X8, { 16, "UYVY8_2X8" } }, + { MEDIA_BUS_FMT_VYUY8_2X8, { 16, "VYUY8_2X8" } }, + { MEDIA_BUS_FMT_YUYV8_2X8, { 16, "YUYV8_2X8" } }, + { MEDIA_BUS_FMT_YVYU8_2X8, { 16, "YVYU8_2X8" } }, + { MEDIA_BUS_FMT_Y10_1X10, { 10, "Y10_1X10" } }, + { MEDIA_BUS_FMT_UYVY10_2X10, { 20, "UYVY10_2X10" } }, + { MEDIA_BUS_FMT_VYUY10_2X10, { 20, "VYUY10_2X10" } }, + { MEDIA_BUS_FMT_YUYV10_2X10, { 20, "YUYV10_2X10" } }, + { MEDIA_BUS_FMT_YVYU10_2X10, { 20, "YVYU10_2X10" } }, + { MEDIA_BUS_FMT_Y12_1X12, { 12, "Y12_1X12" } }, + { MEDIA_BUS_FMT_UYVY8_1X16, { 16, "UYVY8_1X16" } }, + { MEDIA_BUS_FMT_VYUY8_1X16, { 16, "VYUY8_1X16" } }, + { MEDIA_BUS_FMT_YUYV8_1X16, { 16, "YUYV8_1X16" } }, + { MEDIA_BUS_FMT_YVYU8_1X16, { 16, "YVYU8_1X16" } }, + { MEDIA_BUS_FMT_YDYUYDYV8_1X16, { 16, "YDYUYDYV8_1X16" } }, + { MEDIA_BUS_FMT_UYVY10_1X20, { 20, "UYVY10_1X20" } }, + { MEDIA_BUS_FMT_VYUY10_1X20, { 20, "VYUY10_1X20" } }, + { MEDIA_BUS_FMT_YUYV10_1X20, { 20, "YUYV10_1X20" } }, + { MEDIA_BUS_FMT_YVYU10_1X20, { 20, "YVYU10_1X20" } }, + { MEDIA_BUS_FMT_YUV10_1X30, { 30, "YUV10_1X30" } }, + { MEDIA_BUS_FMT_AYUV8_1X32, { 32, "AYUV8_1X32" } }, + { MEDIA_BUS_FMT_UYVY12_2X12, { 24, "UYVY12_2X12" } }, + { MEDIA_BUS_FMT_VYUY12_2X12, { 24, "VYUY12_2X12" } }, + { MEDIA_BUS_FMT_YUYV12_2X12, { 24, "YUYV12_2X12" } }, + { MEDIA_BUS_FMT_YVYU12_2X12, { 24, "YVYU12_2X12" } }, + { MEDIA_BUS_FMT_UYVY12_1X24, { 24, "UYVY12_1X24" } }, + { MEDIA_BUS_FMT_VYUY12_1X24, { 24, "VYUY12_1X24" } }, + { MEDIA_BUS_FMT_YUYV12_1X24, { 24, "YUYV12_1X24" } }, + { MEDIA_BUS_FMT_YVYU12_1X24, { 24, "YVYU12_1X24" } }, + { MEDIA_BUS_FMT_SBGGR8_1X8, { 8, "SBGGR8_1X8" } }, + { MEDIA_BUS_FMT_SGBRG8_1X8, { 8, "SGBRG8_1X8" } }, + { MEDIA_BUS_FMT_SGRBG8_1X8, { 8, "SGRBG8_1X8" } }, + { MEDIA_BUS_FMT_SRGGB8_1X8, { 8, "SRGGB8_1X8" } }, + { MEDIA_BUS_FMT_SBGGR10_ALAW8_1X8, { 8, "SBGGR10_ALAW8_1X8" } }, + { MEDIA_BUS_FMT_SGBRG10_ALAW8_1X8, { 8, "SGBRG10_ALAW8_1X8" } }, + { MEDIA_BUS_FMT_SGRBG10_ALAW8_1X8, { 8, "SGRBG10_ALAW8_1X8" } }, + { MEDIA_BUS_FMT_SRGGB10_ALAW8_1X8, { 8, "SRGGB10_ALAW8_1X8" } }, + { MEDIA_BUS_FMT_SBGGR10_DPCM8_1X8, { 8, "SBGGR10_DPCM8_1X8" } }, + { MEDIA_BUS_FMT_SGBRG10_DPCM8_1X8, { 8, "SGBRG10_DPCM8_1X8" } }, + { MEDIA_BUS_FMT_SGRBG10_DPCM8_1X8, { 8, "SGRBG10_DPCM8_1X8" } }, + { MEDIA_BUS_FMT_SRGGB10_DPCM8_1X8, { 8, "SRGGB10_DPCM8_1X8" } }, + { MEDIA_BUS_FMT_SBGGR10_2X8_PADHI_BE, { 16, "SBGGR10_2X8_PADHI_BE" } }, + { MEDIA_BUS_FMT_SBGGR10_2X8_PADHI_LE, { 16, "SBGGR10_2X8_PADHI_LE" } }, + { MEDIA_BUS_FMT_SBGGR10_2X8_PADLO_BE, { 16, "SBGGR10_2X8_PADLO_BE" } }, + { MEDIA_BUS_FMT_SBGGR10_2X8_PADLO_LE, { 16, "SBGGR10_2X8_PADLO_LE" } }, + { MEDIA_BUS_FMT_SBGGR10_1X10, { 10, "SBGGR10_1X10" } }, + { MEDIA_BUS_FMT_SGBRG10_1X10, { 10, "SGBRG10_1X10" } }, + { MEDIA_BUS_FMT_SGRBG10_1X10, { 10, "SGRBG10_1X10" } }, + { MEDIA_BUS_FMT_SRGGB10_1X10, { 10, "SRGGB10_1X10" } }, + { MEDIA_BUS_FMT_SBGGR12_1X12, { 12, "SBGGR12_1X12" } }, + { MEDIA_BUS_FMT_SGBRG12_1X12, { 12, "SGBRG12_1X12" } }, + { MEDIA_BUS_FMT_SGRBG12_1X12, { 12, "SGRBG12_1X12" } }, + { MEDIA_BUS_FMT_SRGGB12_1X12, { 12, "SRGGB12_1X12" } }, + { MEDIA_BUS_FMT_AHSV8888_1X32, { 32, "AHSV8888_1X32" } }, }; } /* namespace */ From patchwork Wed May 4 13:15:57 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Pinchart X-Patchwork-Id: 15771 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id E5827C326E for ; Wed, 4 May 2022 13:16:09 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id F2D2265650; Wed, 4 May 2022 15:16:07 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org; s=mail; t=1651670168; bh=IT3iOsKKLhLgsse+ToiLD/chcqGbdHVBa2hSepnLgr0=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=CL/WuikyR36HWHCtTzUeAFYEehIXbJzQBFHkT+wNmHVGQM6Y1Al1lbdizNacfXcCY +EyGMLKNQgb04DvF8QaCjd9QDptSPTGSaZF63jQKiat+CP9lRE97KnItrR94PFBF6I fySr1E9zEHe2HwEbPTAahVKVakrlcbdgyxVeZkqv5zoXpRW00I1y5Ae6j9txb/TvSO s3DKWMKXaiJRAwVyc7hwWSDROFCpZYILuTtOF1ujPfARXk5rfMse0kujvw5jGL77L9 rFkPH8WH47T8nMI/2gTbuI7g2LVohuKPT5Sup0YdwpTiXk0lLeGu5VXDAryM+ADDdI TbN8wbmiCoiuA== Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 4D8676564C for ; Wed, 4 May 2022 15:16:05 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="pUH5YVBV"; dkim-atps=neutral Received: from pendragon.lan (62-78-145-57.bb.dnainternet.fi [62.78.145.57]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id E3E314A8 for ; Wed, 4 May 2022 15:16:04 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1651670165; bh=IT3iOsKKLhLgsse+ToiLD/chcqGbdHVBa2hSepnLgr0=; h=From:To:Subject:Date:In-Reply-To:References:From; b=pUH5YVBVHoYjJ0cc0Ysq+eJh2wcq2hu+vr3EH4Y37tkSLH5LtXhQF5bTR9OvKzCk7 llwECNaWKoKH2HPIs+hH6SyXt3cVotIFdWeVVRPHTRXi07qGej2KuRfdXUWKRICRtH 1VmiWJ/ZZI6jPwPBu6ZLVyLSdqH3xV/1l6b5IScI= To: libcamera-devel@lists.libcamera.org Date: Wed, 4 May 2022 16:15:57 +0300 Message-Id: <20220504131558.9498-5-laurent.pinchart@ideasonboard.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220504131558.9498-1-laurent.pinchart@ideasonboard.com> References: <20220504131558.9498-1-laurent.pinchart@ideasonboard.com> MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH 4/5] libcamera: v4l2_subdevice: Add RGB565_1X16 media bus format X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Laurent Pinchart via libcamera-devel From: Laurent Pinchart Reply-To: Laurent Pinchart Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" The format is used by the i.MX8 ISI driver that will be supported by the simple pipeline handler. Signed-off-by: Laurent Pinchart Reviewed-by: Jacopo Mondi --- src/libcamera/v4l2_subdevice.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/libcamera/v4l2_subdevice.cpp b/src/libcamera/v4l2_subdevice.cpp index ef79359e3e5f..81d84ae8a9ee 100644 --- a/src/libcamera/v4l2_subdevice.cpp +++ b/src/libcamera/v4l2_subdevice.cpp @@ -58,6 +58,7 @@ const std::map formatInfoMap = { { MEDIA_BUS_FMT_RGB444_2X8_PADHI_LE, { 16, "RGB444_2X8_PADHI_LE" } }, { MEDIA_BUS_FMT_RGB555_2X8_PADHI_BE, { 16, "RGB555_2X8_PADHI_BE" } }, { MEDIA_BUS_FMT_RGB555_2X8_PADHI_LE, { 16, "RGB555_2X8_PADHI_LE" } }, + { MEDIA_BUS_FMT_RGB565_1X16, { 16, "RGB565_1X16" } }, { MEDIA_BUS_FMT_BGR565_2X8_BE, { 16, "BGR565_2X8_BE" } }, { MEDIA_BUS_FMT_BGR565_2X8_LE, { 16, "BGR565_2X8_LE" } }, { MEDIA_BUS_FMT_RGB565_2X8_BE, { 16, "RGB565_2X8_BE" } }, From patchwork Wed May 4 13:15:58 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Pinchart X-Patchwork-Id: 15772 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id AF884C326C for ; Wed, 4 May 2022 13:16:10 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 68E3865651; Wed, 4 May 2022 15:16:10 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org; s=mail; t=1651670170; bh=a8LBihn2G6vHXf+korxb39GyTwgbrEepfzNzESdvEuk=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=O9yfzw9DMc02da5pD/DYV9ixWBwIjEdjHg4zoeSAV/NGYsiLayrhgh8rFm2uE5Uew HAJ2iRxpNDmCyJx6v2dwJvqMm+ujJ7dPEypxZXUKosDzIwBxc3YFttUYUqEMqeiYDi Ir3h3FLrh6neVMhMOB6eaU4HXF53BhshZvvJkyhfPGqpZDPhGdCxFWnTffquliOgbw CCMFh/Butb/WmMIYZQcTLWpXhC5dg3991B5oEXeSMbFfLxR7FRsH3kKs/iXm141E78 ht+jQOnmfI3C8/5yHk3DpRWaxAa8CKoCXDpnFEGu6M4aWvgoUoITV4CiJYXkIhMoKU fAInr78bkREAQ== Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id B67E265649 for ; Wed, 4 May 2022 15:16:05 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="CZFdRH4x"; dkim-atps=neutral Received: from pendragon.lan (62-78-145-57.bb.dnainternet.fi [62.78.145.57]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 618544A8 for ; Wed, 4 May 2022 15:16:05 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1651670165; bh=a8LBihn2G6vHXf+korxb39GyTwgbrEepfzNzESdvEuk=; h=From:To:Subject:Date:In-Reply-To:References:From; b=CZFdRH4xlUkHxa0S5ZmgYwZqVOKZxntxVpbGEB8O96lw7IDFTIVWEzmeS7X/KF+1I 1R0+pVsw2q2YoqExaK9gDx9gdiO3dh4M1SLKZIALVmWPJeCdiDQUfxH3n2peTbPy8F r+Hxj3v7xWiSeq8BQtVZTaXIF8TJE/ycSJ7+Zgd4= To: libcamera-devel@lists.libcamera.org Date: Wed, 4 May 2022 16:15:58 +0300 Message-Id: <20220504131558.9498-6-laurent.pinchart@ideasonboard.com> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220504131558.9498-1-laurent.pinchart@ideasonboard.com> References: <20220504131558.9498-1-laurent.pinchart@ideasonboard.com> MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH 5/5] libcamera: v4l2_subdevice: Add YUV8_1X24 media bus format X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Laurent Pinchart via libcamera-devel From: Laurent Pinchart Reply-To: Laurent Pinchart Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" The format is used by the i.MX8 ISI driver that will be supported by the simple pipeline handler. Signed-off-by: Laurent Pinchart Reviewed-by: Jacopo Mondi --- src/libcamera/v4l2_subdevice.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/libcamera/v4l2_subdevice.cpp b/src/libcamera/v4l2_subdevice.cpp index 81d84ae8a9ee..98a3911aa7df 100644 --- a/src/libcamera/v4l2_subdevice.cpp +++ b/src/libcamera/v4l2_subdevice.cpp @@ -93,6 +93,7 @@ const std::map formatInfoMap = { { MEDIA_BUS_FMT_VYUY10_1X20, { 20, "VYUY10_1X20" } }, { MEDIA_BUS_FMT_YUYV10_1X20, { 20, "YUYV10_1X20" } }, { MEDIA_BUS_FMT_YVYU10_1X20, { 20, "YVYU10_1X20" } }, + { MEDIA_BUS_FMT_YUV8_1X24, { 24, "YUV8_1X24" } }, { MEDIA_BUS_FMT_YUV10_1X30, { 30, "YUV10_1X30" } }, { MEDIA_BUS_FMT_AYUV8_1X32, { 32, "AYUV8_1X32" } }, { MEDIA_BUS_FMT_UYVY12_2X12, { 24, "UYVY12_2X12" } },