Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp384481pxb; Tue, 19 Oct 2021 05:02:41 -0700 (PDT) X-Google-Smtp-Source: ABdhPJymxQgKuniOS5TRot5KhOZsmOUqikV9WjgnG+npHdfuF5ClueWUMtQECIwJrFBaV/GztcM8 X-Received: by 2002:a17:90b:3a88:: with SMTP id om8mr6055561pjb.164.1634644961110; Tue, 19 Oct 2021 05:02:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1634644961; cv=none; d=google.com; s=arc-20160816; b=VDQpktriReqPq5w26SdGok6DhaMkdwwyFWR1RoazOv+i/PRwhM+kAQZ1ihT1DLGksD M8ij8iGv/RtFdZNKj3sYzHuU5P3oLfEYmJXphD4yyz1eiBv8s8AlWej2ymtbrkgedjLp FZ/WzhYDPw9lkAHDriZTdq/X2/10OFVAptMbBHEfMO1//DfZem+e6aOPidV3vewNdn7c qyL14YCNeGYdKCJ0IxBztI3aiC5OQoJS9h976G/SbRiA2jWfLBwuOcQVhDQ37vIkItJR uIiOJx/2yxPYUmoyekKU04a5VaCR0Z8XndGw1Q7W22F8faXB6ySezIGkleA4j2nRYNed d0XA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:organization:message-id:subject:to :from:date; bh=GHtVcvxMluh50NhH3h2RxWDuhDlIBIgDff7ydAc3370=; b=fxRPeDInPtTy5EKOWmcEv1HyQp7N7dcD1jJ3buZ1RPBHh8Ta31rYpGMReLpCGNGQ0N 7GGn+HvXhSxv4vGfnD4vVgYgXl+HKS0O5TO/cKYN+qbbtq+L6vAD2DVBE8fO7wMKnHuT lnsCldJGPr41K5VzuNL6kL+ObOHAscjk0QTJ6vC0OdH+Q2w2oZ8n6akb36PjwsshMzx5 MdteADmaZD7JE0iXlpHjV6MJU7xpu8U+4b47nIH/cooOgpWdzLuxqxySX19mddLSv8LR mQd3x97n7bPHVlp07WRvjgkUDOCDaf++qehlG5m5FszOr8zNu5c73lJ+Iw8S47uwkVnk H3kg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=puri.sm Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id u13si19295684pfi.122.2021.10.19.05.02.27; Tue, 19 Oct 2021 05:02:41 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=puri.sm Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235534AbhJSMCF (ORCPT + 99 others); Tue, 19 Oct 2021 08:02:05 -0400 Received: from comms.puri.sm ([159.203.221.185]:49260 "EHLO comms.puri.sm" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235389AbhJSMB7 (ORCPT ); Tue, 19 Oct 2021 08:01:59 -0400 Received: from localhost (localhost [127.0.0.1]) by comms.puri.sm (Postfix) with ESMTP id 0C42ADF854; Tue, 19 Oct 2021 04:59:46 -0700 (PDT) Received: from comms.puri.sm ([127.0.0.1]) by localhost (comms.puri.sm [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id guT2m-3wI9ko; Tue, 19 Oct 2021 04:59:45 -0700 (PDT) Date: Tue, 19 Oct 2021 13:59:29 +0200 From: Dorota Czaplejewicz To: Mauro Carvalho Chehab , Sakari Ailus , Laurent Pinchart , Jacopo Mondi , Andrey Konovalov , linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, kernel@purism Subject: [PATCH] media: Add 16-bit Bayer formats Message-ID: <20211019114718.827400-1-dorota.czaplejewicz@puri.sm> Organization: Purism MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/wpPNuNnC_Dn6UWVV0uU2aGA"; protocol="application/pgp-signature"; micalg=pgp-sha256 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --Sig_/wpPNuNnC_Dn6UWVV0uU2aGA Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable 16-bit bayer formats are used by the i.MX driver. Signed-off-by: Dorota Czaplejewicz --- Hello, While working on the i.MX8 video driver, I discovered that `v4l2_fill_pixfm= t` will fail when using 10-bit sensor formats. (For background, see the con= versation at https://lkml.org/lkml/2021/10/17/93 .) It appears that the video hardware will fill a 16-bit-per-pixel buffer when= fed 10-bit-per-pixel Bayer data, making `v4l2_fill_pixfmt` effectively bro= ken for this case. This change adds the relevant entries to the format info structure. Difference in behaviour observed using the i846 driver on the Librem 5. Regards, Dorota Czaplejewicz drivers/media/v4l2-core/v4l2-common.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/media/v4l2-core/v4l2-common.c b/drivers/media/v4l2-cor= e/v4l2-common.c index 04af03285a20..d2e61538e979 100644 --- a/drivers/media/v4l2-core/v4l2-common.c +++ b/drivers/media/v4l2-core/v4l2-common.c @@ -309,6 +309,10 @@ const struct v4l2_format_info *v4l2_format_info(u32 fo= rmat) { .format =3D V4L2_PIX_FMT_SGBRG12, .pixel_enc =3D V4L2_PIXEL_ENC_BAYER,= .mem_planes =3D 1, .comp_planes =3D 1, .bpp =3D { 2, 0, 0, 0 }, .hdiv =3D = 1, .vdiv =3D 1 }, { .format =3D V4L2_PIX_FMT_SGRBG12, .pixel_enc =3D V4L2_PIXEL_ENC_BAYER,= .mem_planes =3D 1, .comp_planes =3D 1, .bpp =3D { 2, 0, 0, 0 }, .hdiv =3D = 1, .vdiv =3D 1 }, { .format =3D V4L2_PIX_FMT_SRGGB12, .pixel_enc =3D V4L2_PIXEL_ENC_BAYER,= .mem_planes =3D 1, .comp_planes =3D 1, .bpp =3D { 2, 0, 0, 0 }, .hdiv =3D = 1, .vdiv =3D 1 }, + { .format =3D V4L2_PIX_FMT_SBGGR16, .pixel_enc =3D V4L2_PIXEL_ENC_BAYER,= .mem_planes =3D 1, .comp_planes =3D 1, .bpp =3D { 2, 0, 0, 0 }, .hdiv =3D = 1, .vdiv =3D 1 }, + { .format =3D V4L2_PIX_FMT_SGBRG16, .pixel_enc =3D V4L2_PIXEL_ENC_BAYER,= .mem_planes =3D 1, .comp_planes =3D 1, .bpp =3D { 2, 0, 0, 0 }, .hdiv =3D = 1, .vdiv =3D 1 }, + { .format =3D V4L2_PIX_FMT_SGRBG16, .pixel_enc =3D V4L2_PIXEL_ENC_BAYER,= .mem_planes =3D 1, .comp_planes =3D 1, .bpp =3D { 2, 0, 0, 0 }, .hdiv =3D = 1, .vdiv =3D 1 }, + { .format =3D V4L2_PIX_FMT_SRGGB16, .pixel_enc =3D V4L2_PIXEL_ENC_BAYER,= .mem_planes =3D 1, .comp_planes =3D 1, .bpp =3D { 2, 0, 0, 0 }, .hdiv =3D = 1, .vdiv =3D 1 }, }; unsigned int i; =20 --=20 2.31.1 --Sig_/wpPNuNnC_Dn6UWVV0uU2aGA Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEExKRqtqfFqmh+lu1oADBpX4S8ZncFAmFusyEACgkQADBpX4S8 ZndwxQ/+LzSvfUPU6hgPC3U3pA2+klpV5QsqXz+Ikai/azH38h3ZdVe5JbXiI6MH p4TjBi2fteQHms0MyqRI9PAMcY9DtL67NOI9DUAxo8XQxjpft8f0Z9d6gWGXt/Su jLDaBBzGxbeSN0dPYs7l2CwjYHou4S0dMYF0iQZV280tb/qOj5GEc+qlIrtb10t8 Vl3Ws7mNhUvezFzRstZwGuXtM1e4EXh1g1k2R5UDliIKEhYgWq24m8iuuJtPNCaH fFlhMyNrR4cqRT/P0Aoe2bViujhN8itmXLjI3P2uue2sflsGIB/ZnW6Wc7/eKuyd lp0llnEsIdbSdIguvYrX2U2B3ktayKX0BT4qC2tFr3ye9WQONv3GEHxonQo1qGXZ ovAezDI0ZGshOf4+cbLPGIMewR32tBJkG6//87J7PNznO+sCQ1JT83E2QJvIrqaQ vAaPGTkdrwUjCI3SjD6AyW8cC4NmLPL0d3XKRfIh+0i/KShhYFqoVdF18CDYQpbX Z+2Jl4xuLiEUeb5xsq5e9U5MWwkxY4GcWSuR5ttI0CS8bBigU8eim5YsIuwauZvI 0PNn0wldmb6zjNZ4HXE3mZxbBeISJAG+Cf12uGWXtyE5TsRf+1oUBao2viukFKyj MlN7Trs9NEHconaL0Ivu1ghDoGSNawc2sHgUIM8feDILQa0+E6Q= =V9Ml -----END PGP SIGNATURE----- --Sig_/wpPNuNnC_Dn6UWVV0uU2aGA--