From nobody Sun Feb 8 15:42:25 2026 Received: from mail-lj1-f169.google.com (mail-lj1-f169.google.com [209.85.208.169]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 83A2F22AE7E for ; Wed, 14 May 2025 09:46:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.169 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747215980; cv=none; b=ptxkax4hLNCo1/JGFaw/5EHGdvA1bJQ0dZVtXSU7wjyRrNlLE4zuIfyu5qs8Y4hRNfSikr/tzKg9VO6Wh+FIaHe3D59STZXlrKe7XXkI7J5P9gTic2Y9tTFgjoUmrCnI49cgfX6Nq8Mrem7r+Bq8hOGU8EGuDQ/pRJ+okxD76QI= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1747215980; c=relaxed/simple; bh=+qa4lp+Sb9Yg1SKIJ4cbG6y2Crm6aCx2dQ6//wZ08eQ=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:To:Cc; b=GFzkPtBhHAxXxsYfzFtG0oXkyrxAW7MgDiHjG9XDI16brOtINPXZnrF7bhd145dB6oOEqq5DC7KXrv8XbLQDzMsoAVAyebIsLaLpmOo+yfFop9NRIzqLQWFEEMabBdRdR5qPvtsGRzS29xQqzdC4/Y3xdE4sqKcjlVqLbv+0DF4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org; spf=pass smtp.mailfrom=chromium.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b=l8VRYqMp; arc=none smtp.client-ip=209.85.208.169 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=chromium.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=chromium.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=chromium.org header.i=@chromium.org header.b="l8VRYqMp" Received: by mail-lj1-f169.google.com with SMTP id 38308e7fff4ca-326ca53a7f1so50929321fa.2 for ; Wed, 14 May 2025 02:46:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1747215974; x=1747820774; darn=vger.kernel.org; h=cc:to:message-id:content-transfer-encoding:mime-version:subject :date:from:from:to:cc:subject:date:message-id:reply-to; bh=2sX0HHZRpBPYWqg+FSIWnLTT/3tMu0V4jVSaZ53ioqA=; b=l8VRYqMprP42bJJdvzfIeusUz3zIbohn/rgMj8Cby9BL93bBpFp8J9dzqQVtNk1p33 PY5R6baT3N+P5uc37yGQO33WIjgPp5eSXuJqKY+Jci6cX4zzFbipvd5frAea0m2sId/7 YMaXNn4WdxhGa/QCDvHul/TSo2cZiLewqCGiY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747215974; x=1747820774; h=cc:to:message-id:content-transfer-encoding:mime-version:subject :date:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=2sX0HHZRpBPYWqg+FSIWnLTT/3tMu0V4jVSaZ53ioqA=; b=NA/TCKs6ltWfxhAb7yC91FsEXy76/k+2ia94G2iRj3JSkeiosjpyqL5uP3IAQTTblU NWQHG4wxjQmOowm/sQhmc09FYJgiDfnU4g0eY0QEYBe4sfceXO6Py0zZb/GV8b+SkQQA 93625JbdGsfG7TRRE7HSGnqLgUvsI2ZZ1VynT/53xWQ4/chaJFsBR2l30TjtrxrbK7sB D/Xr8HXYIbmpPScUKq7h1fSLoxEAns80tLmIwrrvnHbuP2/zkz/wxUIOa+nR002zsLTU w9Mv+LRTe1qHRnfonUxdE6O486d7m/dBWe0j6aGDRMYiVYN5SEnRjFI+Lu4mrrEbwm5i n1Wg== X-Forwarded-Encrypted: i=1; AJvYcCVqZn+Z03tHvl+LFRW+LLwEdRjeFJ5ahIJ813FUXCYb7gkgW1Lbsj7Vme2hZ61XZzdDgxUGrFzrQhOtmw4=@vger.kernel.org X-Gm-Message-State: AOJu0YzzQmyMLtffZDuBjQdFhUfh2SKsh5YfpJtU8gUrQkhd2gIz7T4F AkzSMl4Q6DXvv8wwuFDi0yT8Pynbs708nXT0BzqYcnfZ884qb4YE5zKlXnAVOg== X-Gm-Gg: ASbGncuZdPTUWLfYYnBqK8RbX1/X5MhgLA/h+WjrPcdRX4FlVuO6ak7pMI5InyjfpmM yxVml0CHrusAQQeKP6Us/xPPgAtzLkxlqACVlDy3POQOp+pDrpQDhHkpwIoe3bT8moc1aZWuq3X w8N77raMxYlXz6iVYILQQjKoqFMt/3SEIRzP5bXv/oW8PyMckQsbUSRl/cigOdJ9rPfppVjCmi7 TAwlwFpjhlFW/SB6YtOkZDrqRg6+0/LS+f6x2UIVJ/58ELkGokWT2nBFBLnWoaE298e+8vI7SSy 2dArjmURlHN5dYNLC5JhLocAosGw4GEMuSAHf1QbrjmT+KcT1mvzrB93CTnJ5LSmxi8AQoF704W znQRRE7l2tG0WktVsXnzlPWkecFs1IuQ= X-Google-Smtp-Source: AGHT+IEAV+pdUty06KcHwr7xqvQ9YRhS6xK+ZwcsfixKP4Ab76RwE/Ce0+Ff1bDv9wf/V93A2ra9BQ== X-Received: by 2002:a05:651c:544:b0:30b:b7c3:ea71 with SMTP id 38308e7fff4ca-327ed0deacemr8466351fa.15.1747215974149; Wed, 14 May 2025 02:46:14 -0700 (PDT) Received: from ribalda.c.googlers.com (228.231.88.34.bc.googleusercontent.com. [34.88.231.228]) by smtp.gmail.com with ESMTPSA id 38308e7fff4ca-326c339a319sm19599451fa.7.2025.05.14.02.46.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 May 2025 02:46:13 -0700 (PDT) From: Ricardo Ribalda Date: Wed, 14 May 2025 09:46:12 +0000 Subject: [PATCH] media: ioctl: Order some code alphabetically Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20250514-keep-sorted-ioctl-v1-1-0d66585c6ce5@chromium.org> X-B4-Tracking: v=1; b=H4sIAGNmJGgC/x3MQQqAIBBG4avErBvQKJKuEi3K/mooNDQikO6et PwW7yWKCIJIXZEo4JYo3mXosiC7jW4Fy5xNlaoa1eiad+Dk6MOFmcXb6+BpmUyrAW1NS7k7AxZ 5/mc/vO8HpdyZK2MAAAA= X-Change-ID: 20250514-keep-sorted-ioctl-bfb871ee1c87 To: Hans Verkuil , Mauro Carvalho Chehab Cc: linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, Ricardo Ribalda X-Mailer: b4 0.14.2 This limits the chances for duplicates. Use keep-sorted comments to avoid future disordered via media-ci tooling. Signed-off-by: Ricardo Ribalda --- Follow-up from media-summit. This is a example for how keep-sorted looks like. --- drivers/media/v4l2-core/v4l2-ioctl.c | 646 ++++++++++++++++++-------------= ---- 1 file changed, 328 insertions(+), 318 deletions(-) diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l2-core= /v4l2-ioctl.c index 650dc1956f73d2f1943b56c42140c7b8d757259f..45dfadb1233f24697e1b3deaab3= 4f3134de421f9 100644 --- a/drivers/media/v4l2-core/v4l2-ioctl.c +++ b/drivers/media/v4l2-core/v4l2-ioctl.c @@ -40,36 +40,38 @@ struct std_descr { }; =20 static const struct std_descr standards[] =3D { + /* keep-sorted start */ { V4L2_STD_NTSC, "NTSC" }, + { V4L2_STD_NTSC_443, "NTSC-443" }, { V4L2_STD_NTSC_M, "NTSC-M" }, { V4L2_STD_NTSC_M_JP, "NTSC-M-JP" }, { V4L2_STD_NTSC_M_KR, "NTSC-M-KR" }, - { V4L2_STD_NTSC_443, "NTSC-443" }, { V4L2_STD_PAL, "PAL" }, - { V4L2_STD_PAL_BG, "PAL-BG" }, + { V4L2_STD_PAL_60, "PAL-60" }, { V4L2_STD_PAL_B, "PAL-B" }, { V4L2_STD_PAL_B1, "PAL-B1" }, + { V4L2_STD_PAL_BG, "PAL-BG" }, + { V4L2_STD_PAL_D, "PAL-D" }, + { V4L2_STD_PAL_D1, "PAL-D1" }, + { V4L2_STD_PAL_DK, "PAL-DK" }, { V4L2_STD_PAL_G, "PAL-G" }, { V4L2_STD_PAL_H, "PAL-H" }, { V4L2_STD_PAL_I, "PAL-I" }, - { V4L2_STD_PAL_DK, "PAL-DK" }, - { V4L2_STD_PAL_D, "PAL-D" }, - { V4L2_STD_PAL_D1, "PAL-D1" }, { V4L2_STD_PAL_K, "PAL-K" }, { V4L2_STD_PAL_M, "PAL-M" }, { V4L2_STD_PAL_N, "PAL-N" }, { V4L2_STD_PAL_Nc, "PAL-Nc" }, - { V4L2_STD_PAL_60, "PAL-60" }, { V4L2_STD_SECAM, "SECAM" }, { V4L2_STD_SECAM_B, "SECAM-B" }, + { V4L2_STD_SECAM_D, "SECAM-D" }, + { V4L2_STD_SECAM_DK, "SECAM-DK" }, { V4L2_STD_SECAM_G, "SECAM-G" }, { V4L2_STD_SECAM_H, "SECAM-H" }, - { V4L2_STD_SECAM_DK, "SECAM-DK" }, - { V4L2_STD_SECAM_D, "SECAM-D" }, { V4L2_STD_SECAM_K, "SECAM-K" }, { V4L2_STD_SECAM_K1, "SECAM-K1" }, { V4L2_STD_SECAM_L, "SECAM-L" }, { V4L2_STD_SECAM_LC, "SECAM-Lc" }, + /* keep-sorted end */ { 0, "Unknown" } }; =20 @@ -1269,289 +1271,293 @@ static void v4l_fill_fmtdesc(struct v4l2_fmtdesc = *fmt) */ switch (fmt->pixelformat) { /* Max description length mask: descr =3D "012345678901234567890123456789= 0" */ - case V4L2_PIX_FMT_RGB332: descr =3D "8-bit RGB 3-3-2"; break; - case V4L2_PIX_FMT_RGB444: descr =3D "16-bit A/XRGB 4-4-4-4"; break; - case V4L2_PIX_FMT_ARGB444: descr =3D "16-bit ARGB 4-4-4-4"; break; - case V4L2_PIX_FMT_XRGB444: descr =3D "16-bit XRGB 4-4-4-4"; break; - case V4L2_PIX_FMT_RGBA444: descr =3D "16-bit RGBA 4-4-4-4"; break; - case V4L2_PIX_FMT_RGBX444: descr =3D "16-bit RGBX 4-4-4-4"; break; + /* keep-sorted start */ + case V4L2_META_FMT_C3ISP_PARAMS: descr =3D "Amlogic C3 ISP Parameters"; b= reak; + case V4L2_META_FMT_C3ISP_STATS: descr =3D "Amlogic C3 ISP Statistics"; b= reak; + case V4L2_META_FMT_D4XX: descr =3D "Intel D4xx UVC Metadata"; break; + case V4L2_META_FMT_GENERIC_8: descr =3D "8-bit Generic Metadata"; break; + case V4L2_META_FMT_GENERIC_CSI2_10: descr =3D "8-bit Generic Meta, 10b CS= I-2"; break; + case V4L2_META_FMT_GENERIC_CSI2_12: descr =3D "8-bit Generic Meta, 12b CS= I-2"; break; + case V4L2_META_FMT_GENERIC_CSI2_14: descr =3D "8-bit Generic Meta, 14b CS= I-2"; break; + case V4L2_META_FMT_GENERIC_CSI2_16: descr =3D "8-bit Generic Meta, 16b CS= I-2"; break; + case V4L2_META_FMT_GENERIC_CSI2_20: descr =3D "8-bit Generic Meta, 20b CS= I-2"; break; + case V4L2_META_FMT_GENERIC_CSI2_24: descr =3D "8-bit Generic Meta, 24b CS= I-2"; break; + case V4L2_META_FMT_RK_ISP1_EXT_PARAMS: descr =3D "Rockchip ISP1 Ext 3A Pa= rams"; break; + case V4L2_META_FMT_RK_ISP1_PARAMS: descr =3D "Rockchip ISP1 3A Parameters= "; break; + case V4L2_META_FMT_RK_ISP1_STAT_3A: descr =3D "Rockchip ISP1 3A Statistic= s"; break; + case V4L2_META_FMT_RPI_BE_CFG: descr =3D "RPi PiSP BE Config format"; bre= ak; + case V4L2_META_FMT_RPI_FE_CFG: descr =3D "RPi PiSP FE Config format"; br= eak; + case V4L2_META_FMT_RPI_FE_STATS: descr =3D "RPi PiSP FE Statistics format= "; break; + case V4L2_META_FMT_UVC: descr =3D "UVC Payload Header Metadata"; break; + case V4L2_META_FMT_VIVID: descr =3D "Vivid Metadata"; break; + case V4L2_META_FMT_VSP1_HGO: descr =3D "R-Car VSP1 1-D Histogram"; break; + case V4L2_META_FMT_VSP1_HGT: descr =3D "R-Car VSP1 2-D Histogram"; break; + case V4L2_PIX_FMT_ABGR32: descr =3D "32-bit BGRA 8-8-8-8"; break; case V4L2_PIX_FMT_ABGR444: descr =3D "16-bit ABGR 4-4-4-4"; break; - case V4L2_PIX_FMT_XBGR444: descr =3D "16-bit XBGR 4-4-4-4"; break; - case V4L2_PIX_FMT_BGRA444: descr =3D "16-bit BGRA 4-4-4-4"; break; - case V4L2_PIX_FMT_BGRX444: descr =3D "16-bit BGRX 4-4-4-4"; break; - case V4L2_PIX_FMT_RGB555: descr =3D "16-bit A/XRGB 1-5-5-5"; break; - case V4L2_PIX_FMT_ARGB555: descr =3D "16-bit ARGB 1-5-5-5"; break; - case V4L2_PIX_FMT_XRGB555: descr =3D "16-bit XRGB 1-5-5-5"; break; case V4L2_PIX_FMT_ABGR555: descr =3D "16-bit ABGR 1-5-5-5"; break; - case V4L2_PIX_FMT_XBGR555: descr =3D "16-bit XBGR 1-5-5-5"; break; - case V4L2_PIX_FMT_RGBA555: descr =3D "16-bit RGBA 5-5-5-1"; break; - case V4L2_PIX_FMT_RGBX555: descr =3D "16-bit RGBX 5-5-5-1"; break; - case V4L2_PIX_FMT_BGRA555: descr =3D "16-bit BGRA 5-5-5-1"; break; - case V4L2_PIX_FMT_BGRX555: descr =3D "16-bit BGRX 5-5-5-1"; break; - case V4L2_PIX_FMT_RGB565: descr =3D "16-bit RGB 5-6-5"; break; - case V4L2_PIX_FMT_RGB555X: descr =3D "16-bit A/XRGB 1-5-5-5 BE"; break; + case V4L2_PIX_FMT_ABGR64_12: descr =3D "12-bit Depth BGRA"; break; + case V4L2_PIX_FMT_ARGB2101010: descr =3D "32-bit ARGB 2-10-10-10"; break; + case V4L2_PIX_FMT_ARGB32: descr =3D "32-bit ARGB 8-8-8-8"; break; + case V4L2_PIX_FMT_ARGB444: descr =3D "16-bit ARGB 4-4-4-4"; break; + case V4L2_PIX_FMT_ARGB555: descr =3D "16-bit ARGB 1-5-5-5"; break; case V4L2_PIX_FMT_ARGB555X: descr =3D "16-bit ARGB 1-5-5-5 BE"; break; - case V4L2_PIX_FMT_XRGB555X: descr =3D "16-bit XRGB 1-5-5-5 BE"; break; - case V4L2_PIX_FMT_RGB565X: descr =3D "16-bit RGB 5-6-5 BE"; break; - case V4L2_PIX_FMT_BGR666: descr =3D "18-bit BGRX 6-6-6-14"; break; + case V4L2_PIX_FMT_AYUV32: descr =3D "32-bit AYUV 8-8-8-8"; break; case V4L2_PIX_FMT_BGR24: descr =3D "24-bit BGR 8-8-8"; break; - case V4L2_PIX_FMT_RGB24: descr =3D "24-bit RGB 8-8-8"; break; case V4L2_PIX_FMT_BGR32: descr =3D "32-bit BGRA/X 8-8-8-8"; break; - case V4L2_PIX_FMT_ABGR32: descr =3D "32-bit BGRA 8-8-8-8"; break; - case V4L2_PIX_FMT_XBGR32: descr =3D "32-bit BGRX 8-8-8-8"; break; - case V4L2_PIX_FMT_RGB32: descr =3D "32-bit A/XRGB 8-8-8-8"; break; - case V4L2_PIX_FMT_ARGB32: descr =3D "32-bit ARGB 8-8-8-8"; break; - case V4L2_PIX_FMT_XRGB32: descr =3D "32-bit XRGB 8-8-8-8"; break; - case V4L2_PIX_FMT_BGRA32: descr =3D "32-bit ABGR 8-8-8-8"; break; - case V4L2_PIX_FMT_BGRX32: descr =3D "32-bit XBGR 8-8-8-8"; break; - case V4L2_PIX_FMT_RGBA32: descr =3D "32-bit RGBA 8-8-8-8"; break; - case V4L2_PIX_FMT_RGBX32: descr =3D "32-bit RGBX 8-8-8-8"; break; - case V4L2_PIX_FMT_RGBX1010102: descr =3D "32-bit RGBX 10-10-10-2"; break; - case V4L2_PIX_FMT_RGBA1010102: descr =3D "32-bit RGBA 10-10-10-2"; break; - case V4L2_PIX_FMT_ARGB2101010: descr =3D "32-bit ARGB 2-10-10-10"; break; case V4L2_PIX_FMT_BGR48: descr =3D "48-bit BGR 16-16-16"; break; - case V4L2_PIX_FMT_RGB48: descr =3D "48-bit RGB 16-16-16"; break; case V4L2_PIX_FMT_BGR48_12: descr =3D "12-bit Depth BGR"; break; - case V4L2_PIX_FMT_ABGR64_12: descr =3D "12-bit Depth BGRA"; break; - case V4L2_PIX_FMT_GREY: descr =3D "8-bit Greyscale"; break; - case V4L2_PIX_FMT_Y4: descr =3D "4-bit Greyscale"; break; - case V4L2_PIX_FMT_Y6: descr =3D "6-bit Greyscale"; break; - case V4L2_PIX_FMT_Y10: descr =3D "10-bit Greyscale"; break; - case V4L2_PIX_FMT_Y12: descr =3D "12-bit Greyscale"; break; - case V4L2_PIX_FMT_Y012: descr =3D "12-bit Greyscale (bits 15-4)"; break; - case V4L2_PIX_FMT_Y14: descr =3D "14-bit Greyscale"; break; - case V4L2_PIX_FMT_Y16: descr =3D "16-bit Greyscale"; break; - case V4L2_PIX_FMT_Y16_BE: descr =3D "16-bit Greyscale BE"; break; - case V4L2_PIX_FMT_Y10BPACK: descr =3D "10-bit Greyscale (Packed)"; break; - case V4L2_PIX_FMT_Y10P: descr =3D "10-bit Greyscale (MIPI Packed)"; brea= k; - case V4L2_PIX_FMT_IPU3_Y10: descr =3D "10-bit greyscale (IPU3 Packed)"; b= reak; - case V4L2_PIX_FMT_Y12P: descr =3D "12-bit Greyscale (MIPI Packed)"; brea= k; - case V4L2_PIX_FMT_Y14P: descr =3D "14-bit Greyscale (MIPI Packed)"; brea= k; - case V4L2_PIX_FMT_Y8I: descr =3D "Interleaved 8-bit Greyscale"; break; - case V4L2_PIX_FMT_Y12I: descr =3D "Interleaved 12-bit Greyscale"; break; - case V4L2_PIX_FMT_Y16I: descr =3D "Interleaved 16-bit Greyscale"; break; - case V4L2_PIX_FMT_Z16: descr =3D "16-bit Depth"; break; - case V4L2_PIX_FMT_INZI: descr =3D "Planar 10:16 Greyscale Depth"; break; + case V4L2_PIX_FMT_BGR666: descr =3D "18-bit BGRX 6-6-6-14"; break; + case V4L2_PIX_FMT_BGRA32: descr =3D "32-bit ABGR 8-8-8-8"; break; + case V4L2_PIX_FMT_BGRA444: descr =3D "16-bit BGRA 4-4-4-4"; break; + case V4L2_PIX_FMT_BGRA555: descr =3D "16-bit BGRA 5-5-5-1"; break; + case V4L2_PIX_FMT_BGRX32: descr =3D "32-bit XBGR 8-8-8-8"; break; + case V4L2_PIX_FMT_BGRX444: descr =3D "16-bit BGRX 4-4-4-4"; break; + case V4L2_PIX_FMT_BGRX555: descr =3D "16-bit BGRX 5-5-5-1"; break; + case V4L2_PIX_FMT_CIT_YYVYUY: descr =3D "GSPCA CIT YYVYUY"; break; case V4L2_PIX_FMT_CNF4: descr =3D "4-bit Depth Confidence (Packed)"; bre= ak; - case V4L2_PIX_FMT_PAL8: descr =3D "8-bit Palette"; break; - case V4L2_PIX_FMT_UV8: descr =3D "8-bit Chrominance UV 4-4"; break; - case V4L2_PIX_FMT_YVU410: descr =3D "Planar YVU 4:1:0"; break; - case V4L2_PIX_FMT_YVU420: descr =3D "Planar YVU 4:2:0"; break; - case V4L2_PIX_FMT_YUYV: descr =3D "YUYV 4:2:2"; break; - case V4L2_PIX_FMT_YYUV: descr =3D "YYUV 4:2:2"; break; - case V4L2_PIX_FMT_YVYU: descr =3D "YVYU 4:2:2"; break; - case V4L2_PIX_FMT_UYVY: descr =3D "UYVY 4:2:2"; break; - case V4L2_PIX_FMT_VYUY: descr =3D "VYUY 4:2:2"; break; - case V4L2_PIX_FMT_YUV422P: descr =3D "Planar YUV 4:2:2"; break; - case V4L2_PIX_FMT_YUV411P: descr =3D "Planar YUV 4:1:1"; break; - case V4L2_PIX_FMT_Y41P: descr =3D "YUV 4:1:1 (Packed)"; break; - case V4L2_PIX_FMT_YUV444: descr =3D "16-bit A/XYUV 4-4-4-4"; break; - case V4L2_PIX_FMT_YUV555: descr =3D "16-bit A/XYUV 1-5-5-5"; break; - case V4L2_PIX_FMT_YUV565: descr =3D "16-bit YUV 5-6-5"; break; - case V4L2_PIX_FMT_YUV24: descr =3D "24-bit YUV 4:4:4 8-8-8"; break; - case V4L2_PIX_FMT_YUV32: descr =3D "32-bit A/XYUV 8-8-8-8"; break; - case V4L2_PIX_FMT_AYUV32: descr =3D "32-bit AYUV 8-8-8-8"; break; - case V4L2_PIX_FMT_XYUV32: descr =3D "32-bit XYUV 8-8-8-8"; break; - case V4L2_PIX_FMT_VUYA32: descr =3D "32-bit VUYA 8-8-8-8"; break; - case V4L2_PIX_FMT_VUYX32: descr =3D "32-bit VUYX 8-8-8-8"; break; - case V4L2_PIX_FMT_YUVA32: descr =3D "32-bit YUVA 8-8-8-8"; break; - case V4L2_PIX_FMT_YUVX32: descr =3D "32-bit YUVX 8-8-8-8"; break; - case V4L2_PIX_FMT_YUV410: descr =3D "Planar YUV 4:1:0"; break; - case V4L2_PIX_FMT_YUV420: descr =3D "Planar YUV 4:2:0"; break; + case V4L2_PIX_FMT_GREY: descr =3D "8-bit Greyscale"; break; case V4L2_PIX_FMT_HI240: descr =3D "8-bit Dithered RGB (BTTV)"; break; + case V4L2_PIX_FMT_HSV24: descr =3D "24-bit HSV 8-8-8"; break; + case V4L2_PIX_FMT_HSV32: descr =3D "32-bit XHSV 8-8-8-8"; break; + case V4L2_PIX_FMT_INZI: descr =3D "Planar 10:16 Greyscale Depth"; break; + case V4L2_PIX_FMT_IPU3_SBGGR10: descr =3D "10-bit bayer BGGR IPU3 Packed"= ; break; + case V4L2_PIX_FMT_IPU3_SGBRG10: descr =3D "10-bit bayer GBRG IPU3 Packed"= ; break; + case V4L2_PIX_FMT_IPU3_SGRBG10: descr =3D "10-bit bayer GRBG IPU3 Packed"= ; break; + case V4L2_PIX_FMT_IPU3_SRGGB10: descr =3D "10-bit bayer RGGB IPU3 Packed"= ; break; + case V4L2_PIX_FMT_IPU3_Y10: descr =3D "10-bit greyscale (IPU3 Packed)"; b= reak; + case V4L2_PIX_FMT_KONICA420: descr =3D "GSPCA KONICA420"; break; case V4L2_PIX_FMT_M420: descr =3D "YUV 4:2:0 (M420)"; break; - case V4L2_PIX_FMT_YUV48_12: descr =3D "12-bit YUV 4:4:4 Packed"; break; + case V4L2_PIX_FMT_MM21: descr =3D "Mediatek 8-bit Block Format"; break; case V4L2_PIX_FMT_NV12: descr =3D "Y/UV 4:2:0"; break; - case V4L2_PIX_FMT_NV21: descr =3D "Y/VU 4:2:0"; break; + case V4L2_PIX_FMT_NV12M: descr =3D "Y/UV 4:2:0 (N-C)"; break; + case V4L2_PIX_FMT_NV12MT: descr =3D "Y/UV 4:2:0 (64x32 MB, N-C)"; break; + case V4L2_PIX_FMT_NV12MT_16X16: descr =3D "Y/UV 4:2:0 (16x16 MB, N-C)"; b= reak; + case V4L2_PIX_FMT_NV12M_10BE_8L128: descr =3D "10-bit NV12M (8x128 Linear= , BE)"; break; + case V4L2_PIX_FMT_NV12M_8L128: descr =3D "NV12M (8x128 Linear)"; break; + case V4L2_PIX_FMT_NV12_10BE_8L128: descr =3D "10-bit NV12 (8x128 Linear, = BE)"; break; + case V4L2_PIX_FMT_NV12_16L16: descr =3D "Y/UV 4:2:0 (16x16 Linear)"; brea= k; + case V4L2_PIX_FMT_NV12_32L32: descr =3D "Y/UV 4:2:0 (32x32 Linear)"; br= eak; + case V4L2_PIX_FMT_NV12_4L4: descr =3D "Y/UV 4:2:0 (4x4 Linear)"; break; + case V4L2_PIX_FMT_NV12_8L128: descr =3D "NV12 (8x128 Linear)"; break; case V4L2_PIX_FMT_NV15: descr =3D "10-bit Y/UV 4:2:0 (Packed)"; break; + case V4L2_PIX_FMT_NV15_4L4: descr =3D "10-bit Y/UV 4:2:0 (4x4 Linear)"; b= reak; case V4L2_PIX_FMT_NV16: descr =3D "Y/UV 4:2:2"; break; - case V4L2_PIX_FMT_NV61: descr =3D "Y/VU 4:2:2"; break; + case V4L2_PIX_FMT_NV16M: descr =3D "Y/UV 4:2:2 (N-C)"; break; case V4L2_PIX_FMT_NV20: descr =3D "10-bit Y/UV 4:2:2 (Packed)"; break; + case V4L2_PIX_FMT_NV21: descr =3D "Y/VU 4:2:0"; break; + case V4L2_PIX_FMT_NV21M: descr =3D "Y/VU 4:2:0 (N-C)"; break; case V4L2_PIX_FMT_NV24: descr =3D "Y/UV 4:4:4"; break; case V4L2_PIX_FMT_NV42: descr =3D "Y/VU 4:4:4"; break; + case V4L2_PIX_FMT_NV61: descr =3D "Y/VU 4:2:2"; break; + case V4L2_PIX_FMT_NV61M: descr =3D "Y/VU 4:2:2 (N-C)"; break; case V4L2_PIX_FMT_P010: descr =3D "10-bit Y/UV 4:2:0"; break; - case V4L2_PIX_FMT_P012: descr =3D "12-bit Y/UV 4:2:0"; break; - case V4L2_PIX_FMT_NV12_4L4: descr =3D "Y/UV 4:2:0 (4x4 Linear)"; break; - case V4L2_PIX_FMT_NV12_16L16: descr =3D "Y/UV 4:2:0 (16x16 Linear)"; brea= k; - case V4L2_PIX_FMT_NV12_32L32: descr =3D "Y/UV 4:2:0 (32x32 Linear)"; br= eak; - case V4L2_PIX_FMT_NV15_4L4: descr =3D "10-bit Y/UV 4:2:0 (4x4 Linear)"; b= reak; case V4L2_PIX_FMT_P010_4L4: descr =3D "10-bit Y/UV 4:2:0 (4x4 Linear)"; b= reak; - case V4L2_PIX_FMT_NV12M: descr =3D "Y/UV 4:2:0 (N-C)"; break; - case V4L2_PIX_FMT_NV21M: descr =3D "Y/VU 4:2:0 (N-C)"; break; - case V4L2_PIX_FMT_NV16M: descr =3D "Y/UV 4:2:2 (N-C)"; break; - case V4L2_PIX_FMT_NV61M: descr =3D "Y/VU 4:2:2 (N-C)"; break; - case V4L2_PIX_FMT_NV12MT: descr =3D "Y/UV 4:2:0 (64x32 MB, N-C)"; break; - case V4L2_PIX_FMT_NV12MT_16X16: descr =3D "Y/UV 4:2:0 (16x16 MB, N-C)"; b= reak; + case V4L2_PIX_FMT_P012: descr =3D "12-bit Y/UV 4:2:0"; break; case V4L2_PIX_FMT_P012M: descr =3D "12-bit Y/UV 4:2:0 (N-C)"; break; - case V4L2_PIX_FMT_YUV420M: descr =3D "Planar YUV 4:2:0 (N-C)"; break; - case V4L2_PIX_FMT_YVU420M: descr =3D "Planar YVU 4:2:0 (N-C)"; break; - case V4L2_PIX_FMT_YUV422M: descr =3D "Planar YUV 4:2:2 (N-C)"; break; - case V4L2_PIX_FMT_YVU422M: descr =3D "Planar YVU 4:2:2 (N-C)"; break; - case V4L2_PIX_FMT_YUV444M: descr =3D "Planar YUV 4:4:4 (N-C)"; break; - case V4L2_PIX_FMT_YVU444M: descr =3D "Planar YVU 4:4:4 (N-C)"; break; - case V4L2_PIX_FMT_SBGGR8: descr =3D "8-bit Bayer BGBG/GRGR"; break; - case V4L2_PIX_FMT_SGBRG8: descr =3D "8-bit Bayer GBGB/RGRG"; break; - case V4L2_PIX_FMT_SGRBG8: descr =3D "8-bit Bayer GRGR/BGBG"; break; - case V4L2_PIX_FMT_SRGGB8: descr =3D "8-bit Bayer RGRG/GBGB"; break; + case V4L2_PIX_FMT_PAL8: descr =3D "8-bit Palette"; break; + case V4L2_PIX_FMT_RGB24: descr =3D "24-bit RGB 8-8-8"; break; + case V4L2_PIX_FMT_RGB32: descr =3D "32-bit A/XRGB 8-8-8-8"; break; + case V4L2_PIX_FMT_RGB332: descr =3D "8-bit RGB 3-3-2"; break; + case V4L2_PIX_FMT_RGB444: descr =3D "16-bit A/XRGB 4-4-4-4"; break; + case V4L2_PIX_FMT_RGB48: descr =3D "48-bit RGB 16-16-16"; break; + case V4L2_PIX_FMT_RGB555: descr =3D "16-bit A/XRGB 1-5-5-5"; break; + case V4L2_PIX_FMT_RGB555X: descr =3D "16-bit A/XRGB 1-5-5-5 BE"; break; + case V4L2_PIX_FMT_RGB565: descr =3D "16-bit RGB 5-6-5"; break; + case V4L2_PIX_FMT_RGB565X: descr =3D "16-bit RGB 5-6-5 BE"; break; + case V4L2_PIX_FMT_RGBA1010102: descr =3D "32-bit RGBA 10-10-10-2"; break; + case V4L2_PIX_FMT_RGBA32: descr =3D "32-bit RGBA 8-8-8-8"; break; + case V4L2_PIX_FMT_RGBA444: descr =3D "16-bit RGBA 4-4-4-4"; break; + case V4L2_PIX_FMT_RGBA555: descr =3D "16-bit RGBA 5-5-5-1"; break; + case V4L2_PIX_FMT_RGBX1010102: descr =3D "32-bit RGBX 10-10-10-2"; break; + case V4L2_PIX_FMT_RGBX32: descr =3D "32-bit RGBX 8-8-8-8"; break; + case V4L2_PIX_FMT_RGBX444: descr =3D "16-bit RGBX 4-4-4-4"; break; + case V4L2_PIX_FMT_RGBX555: descr =3D "16-bit RGBX 5-5-5-1"; break; case V4L2_PIX_FMT_SBGGR10: descr =3D "10-bit Bayer BGBG/GRGR"; break; - case V4L2_PIX_FMT_SGBRG10: descr =3D "10-bit Bayer GBGB/RGRG"; break; - case V4L2_PIX_FMT_SGRBG10: descr =3D "10-bit Bayer GRGR/BGBG"; break; - case V4L2_PIX_FMT_SRGGB10: descr =3D "10-bit Bayer RGRG/GBGB"; break; - case V4L2_PIX_FMT_SBGGR10P: descr =3D "10-bit Bayer BGBG/GRGR Packed"; br= eak; - case V4L2_PIX_FMT_SGBRG10P: descr =3D "10-bit Bayer GBGB/RGRG Packed"; br= eak; - case V4L2_PIX_FMT_SGRBG10P: descr =3D "10-bit Bayer GRGR/BGBG Packed"; br= eak; - case V4L2_PIX_FMT_SRGGB10P: descr =3D "10-bit Bayer RGRG/GBGB Packed"; br= eak; - case V4L2_PIX_FMT_IPU3_SBGGR10: descr =3D "10-bit bayer BGGR IPU3 Packed"= ; break; - case V4L2_PIX_FMT_IPU3_SGBRG10: descr =3D "10-bit bayer GBRG IPU3 Packed"= ; break; - case V4L2_PIX_FMT_IPU3_SGRBG10: descr =3D "10-bit bayer GRBG IPU3 Packed"= ; break; - case V4L2_PIX_FMT_IPU3_SRGGB10: descr =3D "10-bit bayer RGGB IPU3 Packed"= ; break; case V4L2_PIX_FMT_SBGGR10ALAW8: descr =3D "8-bit Bayer BGBG/GRGR (A-law)"= ; break; - case V4L2_PIX_FMT_SGBRG10ALAW8: descr =3D "8-bit Bayer GBGB/RGRG (A-law)"= ; break; - case V4L2_PIX_FMT_SGRBG10ALAW8: descr =3D "8-bit Bayer GRGR/BGBG (A-law)"= ; break; - case V4L2_PIX_FMT_SRGGB10ALAW8: descr =3D "8-bit Bayer RGRG/GBGB (A-law)"= ; break; case V4L2_PIX_FMT_SBGGR10DPCM8: descr =3D "8-bit Bayer BGBG/GRGR (DPCM)";= break; - case V4L2_PIX_FMT_SGBRG10DPCM8: descr =3D "8-bit Bayer GBGB/RGRG (DPCM)";= break; - case V4L2_PIX_FMT_SGRBG10DPCM8: descr =3D "8-bit Bayer GRGR/BGBG (DPCM)";= break; - case V4L2_PIX_FMT_SRGGB10DPCM8: descr =3D "8-bit Bayer RGRG/GBGB (DPCM)";= break; + case V4L2_PIX_FMT_SBGGR10P: descr =3D "10-bit Bayer BGBG/GRGR Packed"; br= eak; case V4L2_PIX_FMT_SBGGR12: descr =3D "12-bit Bayer BGBG/GRGR"; break; - case V4L2_PIX_FMT_SGBRG12: descr =3D "12-bit Bayer GBGB/RGRG"; break; - case V4L2_PIX_FMT_SGRBG12: descr =3D "12-bit Bayer GRGR/BGBG"; break; - case V4L2_PIX_FMT_SRGGB12: descr =3D "12-bit Bayer RGRG/GBGB"; break; case V4L2_PIX_FMT_SBGGR12P: descr =3D "12-bit Bayer BGBG/GRGR Packed"; br= eak; - case V4L2_PIX_FMT_SGBRG12P: descr =3D "12-bit Bayer GBGB/RGRG Packed"; br= eak; - case V4L2_PIX_FMT_SGRBG12P: descr =3D "12-bit Bayer GRGR/BGBG Packed"; br= eak; - case V4L2_PIX_FMT_SRGGB12P: descr =3D "12-bit Bayer RGRG/GBGB Packed"; br= eak; case V4L2_PIX_FMT_SBGGR14: descr =3D "14-bit Bayer BGBG/GRGR"; break; - case V4L2_PIX_FMT_SGBRG14: descr =3D "14-bit Bayer GBGB/RGRG"; break; - case V4L2_PIX_FMT_SGRBG14: descr =3D "14-bit Bayer GRGR/BGBG"; break; - case V4L2_PIX_FMT_SRGGB14: descr =3D "14-bit Bayer RGRG/GBGB"; break; case V4L2_PIX_FMT_SBGGR14P: descr =3D "14-bit Bayer BGBG/GRGR Packed"; br= eak; - case V4L2_PIX_FMT_SGBRG14P: descr =3D "14-bit Bayer GBGB/RGRG Packed"; br= eak; - case V4L2_PIX_FMT_SGRBG14P: descr =3D "14-bit Bayer GRGR/BGBG Packed"; br= eak; - case V4L2_PIX_FMT_SRGGB14P: descr =3D "14-bit Bayer RGRG/GBGB Packed"; br= eak; case V4L2_PIX_FMT_SBGGR16: descr =3D "16-bit Bayer BGBG/GRGR"; break; + case V4L2_PIX_FMT_SBGGR8: descr =3D "8-bit Bayer BGBG/GRGR"; break; + case V4L2_PIX_FMT_SGBRG10: descr =3D "10-bit Bayer GBGB/RGRG"; break; + case V4L2_PIX_FMT_SGBRG10ALAW8: descr =3D "8-bit Bayer GBGB/RGRG (A-law)"= ; break; + case V4L2_PIX_FMT_SGBRG10DPCM8: descr =3D "8-bit Bayer GBGB/RGRG (DPCM)";= break; + case V4L2_PIX_FMT_SGBRG10P: descr =3D "10-bit Bayer GBGB/RGRG Packed"; br= eak; + case V4L2_PIX_FMT_SGBRG12: descr =3D "12-bit Bayer GBGB/RGRG"; break; + case V4L2_PIX_FMT_SGBRG12P: descr =3D "12-bit Bayer GBGB/RGRG Packed"; br= eak; + case V4L2_PIX_FMT_SGBRG14: descr =3D "14-bit Bayer GBGB/RGRG"; break; + case V4L2_PIX_FMT_SGBRG14P: descr =3D "14-bit Bayer GBGB/RGRG Packed"; br= eak; case V4L2_PIX_FMT_SGBRG16: descr =3D "16-bit Bayer GBGB/RGRG"; break; + case V4L2_PIX_FMT_SGBRG8: descr =3D "8-bit Bayer GBGB/RGRG"; break; + case V4L2_PIX_FMT_SGRBG10: descr =3D "10-bit Bayer GRGR/BGBG"; break; + case V4L2_PIX_FMT_SGRBG10ALAW8: descr =3D "8-bit Bayer GRGR/BGBG (A-law)"= ; break; + case V4L2_PIX_FMT_SGRBG10DPCM8: descr =3D "8-bit Bayer GRGR/BGBG (DPCM)";= break; + case V4L2_PIX_FMT_SGRBG10P: descr =3D "10-bit Bayer GRGR/BGBG Packed"; br= eak; + case V4L2_PIX_FMT_SGRBG12: descr =3D "12-bit Bayer GRGR/BGBG"; break; + case V4L2_PIX_FMT_SGRBG12P: descr =3D "12-bit Bayer GRGR/BGBG Packed"; br= eak; + case V4L2_PIX_FMT_SGRBG14: descr =3D "14-bit Bayer GRGR/BGBG"; break; + case V4L2_PIX_FMT_SGRBG14P: descr =3D "14-bit Bayer GRGR/BGBG Packed"; br= eak; case V4L2_PIX_FMT_SGRBG16: descr =3D "16-bit Bayer GRGR/BGBG"; break; - case V4L2_PIX_FMT_SRGGB16: descr =3D "16-bit Bayer RGRG/GBGB"; break; + case V4L2_PIX_FMT_SGRBG8: descr =3D "8-bit Bayer GRGR/BGBG"; break; case V4L2_PIX_FMT_SN9C20X_I420: descr =3D "GSPCA SN9C20X I420"; break; case V4L2_PIX_FMT_SPCA501: descr =3D "GSPCA SPCA501"; break; case V4L2_PIX_FMT_SPCA505: descr =3D "GSPCA SPCA505"; break; case V4L2_PIX_FMT_SPCA508: descr =3D "GSPCA SPCA508"; break; + case V4L2_PIX_FMT_SRGGB10: descr =3D "10-bit Bayer RGRG/GBGB"; break; + case V4L2_PIX_FMT_SRGGB10ALAW8: descr =3D "8-bit Bayer RGRG/GBGB (A-law)"= ; break; + case V4L2_PIX_FMT_SRGGB10DPCM8: descr =3D "8-bit Bayer RGRG/GBGB (DPCM)";= break; + case V4L2_PIX_FMT_SRGGB10P: descr =3D "10-bit Bayer RGRG/GBGB Packed"; br= eak; + case V4L2_PIX_FMT_SRGGB12: descr =3D "12-bit Bayer RGRG/GBGB"; break; + case V4L2_PIX_FMT_SRGGB12P: descr =3D "12-bit Bayer RGRG/GBGB Packed"; br= eak; + case V4L2_PIX_FMT_SRGGB14: descr =3D "14-bit Bayer RGRG/GBGB"; break; + case V4L2_PIX_FMT_SRGGB14P: descr =3D "14-bit Bayer RGRG/GBGB Packed"; br= eak; + case V4L2_PIX_FMT_SRGGB16: descr =3D "16-bit Bayer RGRG/GBGB"; break; + case V4L2_PIX_FMT_SRGGB8: descr =3D "8-bit Bayer RGRG/GBGB"; break; case V4L2_PIX_FMT_STV0680: descr =3D "GSPCA STV0680"; break; case V4L2_PIX_FMT_TM6000: descr =3D "A/V + VBI Mux Packet"; break; - case V4L2_PIX_FMT_CIT_YYVYUY: descr =3D "GSPCA CIT YYVYUY"; break; - case V4L2_PIX_FMT_KONICA420: descr =3D "GSPCA KONICA420"; break; - case V4L2_PIX_FMT_MM21: descr =3D "Mediatek 8-bit Block Format"; break; - case V4L2_PIX_FMT_HSV24: descr =3D "24-bit HSV 8-8-8"; break; - case V4L2_PIX_FMT_HSV32: descr =3D "32-bit XHSV 8-8-8-8"; break; - case V4L2_SDR_FMT_CU8: descr =3D "Complex U8"; break; - case V4L2_SDR_FMT_CU16LE: descr =3D "Complex U16LE"; break; - case V4L2_SDR_FMT_CS8: descr =3D "Complex S8"; break; + case V4L2_PIX_FMT_UV8: descr =3D "8-bit Chrominance UV 4-4"; break; + case V4L2_PIX_FMT_UYVY: descr =3D "UYVY 4:2:2"; break; + case V4L2_PIX_FMT_VUYA32: descr =3D "32-bit VUYA 8-8-8-8"; break; + case V4L2_PIX_FMT_VUYX32: descr =3D "32-bit VUYX 8-8-8-8"; break; + case V4L2_PIX_FMT_VYUY: descr =3D "VYUY 4:2:2"; break; + case V4L2_PIX_FMT_XBGR32: descr =3D "32-bit BGRX 8-8-8-8"; break; + case V4L2_PIX_FMT_XBGR444: descr =3D "16-bit XBGR 4-4-4-4"; break; + case V4L2_PIX_FMT_XBGR555: descr =3D "16-bit XBGR 1-5-5-5"; break; + case V4L2_PIX_FMT_XRGB32: descr =3D "32-bit XRGB 8-8-8-8"; break; + case V4L2_PIX_FMT_XRGB444: descr =3D "16-bit XRGB 4-4-4-4"; break; + case V4L2_PIX_FMT_XRGB555: descr =3D "16-bit XRGB 1-5-5-5"; break; + case V4L2_PIX_FMT_XRGB555X: descr =3D "16-bit XRGB 1-5-5-5 BE"; break; + case V4L2_PIX_FMT_XYUV32: descr =3D "32-bit XYUV 8-8-8-8"; break; + case V4L2_PIX_FMT_Y012: descr =3D "12-bit Greyscale (bits 15-4)"; break; + case V4L2_PIX_FMT_Y10: descr =3D "10-bit Greyscale"; break; + case V4L2_PIX_FMT_Y10BPACK: descr =3D "10-bit Greyscale (Packed)"; break; + case V4L2_PIX_FMT_Y10P: descr =3D "10-bit Greyscale (MIPI Packed)"; brea= k; + case V4L2_PIX_FMT_Y12: descr =3D "12-bit Greyscale"; break; + case V4L2_PIX_FMT_Y12I: descr =3D "Interleaved 12-bit Greyscale"; break; + case V4L2_PIX_FMT_Y12P: descr =3D "12-bit Greyscale (MIPI Packed)"; brea= k; + case V4L2_PIX_FMT_Y14: descr =3D "14-bit Greyscale"; break; + case V4L2_PIX_FMT_Y14P: descr =3D "14-bit Greyscale (MIPI Packed)"; brea= k; + case V4L2_PIX_FMT_Y16: descr =3D "16-bit Greyscale"; break; + case V4L2_PIX_FMT_Y16I: descr =3D "Interleaved 16-bit Greyscale"; break; + case V4L2_PIX_FMT_Y16_BE: descr =3D "16-bit Greyscale BE"; break; + case V4L2_PIX_FMT_Y210: descr =3D "10-bit YUYV Packed"; break; + case V4L2_PIX_FMT_Y212: descr =3D "12-bit YUYV Packed"; break; + case V4L2_PIX_FMT_Y216: descr =3D "16-bit YUYV Packed"; break; + case V4L2_PIX_FMT_Y41P: descr =3D "YUV 4:1:1 (Packed)"; break; + case V4L2_PIX_FMT_Y4: descr =3D "4-bit Greyscale"; break; + case V4L2_PIX_FMT_Y6: descr =3D "6-bit Greyscale"; break; + case V4L2_PIX_FMT_Y8I: descr =3D "Interleaved 8-bit Greyscale"; break; + case V4L2_PIX_FMT_YUV24: descr =3D "24-bit YUV 4:4:4 8-8-8"; break; + case V4L2_PIX_FMT_YUV32: descr =3D "32-bit A/XYUV 8-8-8-8"; break; + case V4L2_PIX_FMT_YUV410: descr =3D "Planar YUV 4:1:0"; break; + case V4L2_PIX_FMT_YUV411P: descr =3D "Planar YUV 4:1:1"; break; + case V4L2_PIX_FMT_YUV420: descr =3D "Planar YUV 4:2:0"; break; + case V4L2_PIX_FMT_YUV420M: descr =3D "Planar YUV 4:2:0 (N-C)"; break; + case V4L2_PIX_FMT_YUV422M: descr =3D "Planar YUV 4:2:2 (N-C)"; break; + case V4L2_PIX_FMT_YUV422P: descr =3D "Planar YUV 4:2:2"; break; + case V4L2_PIX_FMT_YUV444: descr =3D "16-bit A/XYUV 4-4-4-4"; break; + case V4L2_PIX_FMT_YUV444M: descr =3D "Planar YUV 4:4:4 (N-C)"; break; + case V4L2_PIX_FMT_YUV48_12: descr =3D "12-bit YUV 4:4:4 Packed"; break; + case V4L2_PIX_FMT_YUV555: descr =3D "16-bit A/XYUV 1-5-5-5"; break; + case V4L2_PIX_FMT_YUV565: descr =3D "16-bit YUV 5-6-5"; break; + case V4L2_PIX_FMT_YUVA32: descr =3D "32-bit YUVA 8-8-8-8"; break; + case V4L2_PIX_FMT_YUVX32: descr =3D "32-bit YUVX 8-8-8-8"; break; + case V4L2_PIX_FMT_YUYV: descr =3D "YUYV 4:2:2"; break; + case V4L2_PIX_FMT_YVU410: descr =3D "Planar YVU 4:1:0"; break; + case V4L2_PIX_FMT_YVU420: descr =3D "Planar YVU 4:2:0"; break; + case V4L2_PIX_FMT_YVU420M: descr =3D "Planar YVU 4:2:0 (N-C)"; break; + case V4L2_PIX_FMT_YVU422M: descr =3D "Planar YVU 4:2:2 (N-C)"; break; + case V4L2_PIX_FMT_YVU444M: descr =3D "Planar YVU 4:4:4 (N-C)"; break; + case V4L2_PIX_FMT_YVYU: descr =3D "YVYU 4:2:2"; break; + case V4L2_PIX_FMT_YYUV: descr =3D "YYUV 4:2:2"; break; + case V4L2_PIX_FMT_Z16: descr =3D "16-bit Depth"; break; case V4L2_SDR_FMT_CS14LE: descr =3D "Complex S14LE"; break; - case V4L2_SDR_FMT_RU12LE: descr =3D "Real U12LE"; break; + case V4L2_SDR_FMT_CS8: descr =3D "Complex S8"; break; + case V4L2_SDR_FMT_CU16LE: descr =3D "Complex U16LE"; break; + case V4L2_SDR_FMT_CU8: descr =3D "Complex U8"; break; case V4L2_SDR_FMT_PCU16BE: descr =3D "Planar Complex U16BE"; break; case V4L2_SDR_FMT_PCU18BE: descr =3D "Planar Complex U18BE"; break; case V4L2_SDR_FMT_PCU20BE: descr =3D "Planar Complex U20BE"; break; - case V4L2_TCH_FMT_DELTA_TD16: descr =3D "16-bit Signed Deltas"; break; + case V4L2_SDR_FMT_RU12LE: descr =3D "Real U12LE"; break; case V4L2_TCH_FMT_DELTA_TD08: descr =3D "8-bit Signed Deltas"; break; - case V4L2_TCH_FMT_TU16: descr =3D "16-bit Unsigned Touch Data"; break; + case V4L2_TCH_FMT_DELTA_TD16: descr =3D "16-bit Signed Deltas"; break; case V4L2_TCH_FMT_TU08: descr =3D "8-bit Unsigned Touch Data"; break; - case V4L2_META_FMT_VSP1_HGO: descr =3D "R-Car VSP1 1-D Histogram"; break; - case V4L2_META_FMT_VSP1_HGT: descr =3D "R-Car VSP1 2-D Histogram"; break; - case V4L2_META_FMT_UVC: descr =3D "UVC Payload Header Metadata"; break; - case V4L2_META_FMT_D4XX: descr =3D "Intel D4xx UVC Metadata"; break; - case V4L2_META_FMT_VIVID: descr =3D "Vivid Metadata"; break; - case V4L2_META_FMT_RK_ISP1_PARAMS: descr =3D "Rockchip ISP1 3A Parameters= "; break; - case V4L2_META_FMT_RK_ISP1_STAT_3A: descr =3D "Rockchip ISP1 3A Statistic= s"; break; - case V4L2_META_FMT_RK_ISP1_EXT_PARAMS: descr =3D "Rockchip ISP1 Ext 3A Pa= rams"; break; - case V4L2_META_FMT_C3ISP_PARAMS: descr =3D "Amlogic C3 ISP Parameters"; b= reak; - case V4L2_META_FMT_C3ISP_STATS: descr =3D "Amlogic C3 ISP Statistics"; b= reak; - case V4L2_PIX_FMT_NV12_8L128: descr =3D "NV12 (8x128 Linear)"; break; - case V4L2_PIX_FMT_NV12M_8L128: descr =3D "NV12M (8x128 Linear)"; break; - case V4L2_PIX_FMT_NV12_10BE_8L128: descr =3D "10-bit NV12 (8x128 Linear, = BE)"; break; - case V4L2_PIX_FMT_NV12M_10BE_8L128: descr =3D "10-bit NV12M (8x128 Linear= , BE)"; break; - case V4L2_PIX_FMT_Y210: descr =3D "10-bit YUYV Packed"; break; - case V4L2_PIX_FMT_Y212: descr =3D "12-bit YUYV Packed"; break; - case V4L2_PIX_FMT_Y216: descr =3D "16-bit YUYV Packed"; break; - case V4L2_META_FMT_RPI_BE_CFG: descr =3D "RPi PiSP BE Config format"; bre= ak; - case V4L2_META_FMT_RPI_FE_CFG: descr =3D "RPi PiSP FE Config format"; br= eak; - case V4L2_META_FMT_RPI_FE_STATS: descr =3D "RPi PiSP FE Statistics format= "; break; - case V4L2_META_FMT_GENERIC_8: descr =3D "8-bit Generic Metadata"; break; - case V4L2_META_FMT_GENERIC_CSI2_10: descr =3D "8-bit Generic Meta, 10b CS= I-2"; break; - case V4L2_META_FMT_GENERIC_CSI2_12: descr =3D "8-bit Generic Meta, 12b CS= I-2"; break; - case V4L2_META_FMT_GENERIC_CSI2_14: descr =3D "8-bit Generic Meta, 14b CS= I-2"; break; - case V4L2_META_FMT_GENERIC_CSI2_16: descr =3D "8-bit Generic Meta, 16b CS= I-2"; break; - case V4L2_META_FMT_GENERIC_CSI2_20: descr =3D "8-bit Generic Meta, 20b CS= I-2"; break; - case V4L2_META_FMT_GENERIC_CSI2_24: descr =3D "8-bit Generic Meta, 24b CS= I-2"; break; + case V4L2_TCH_FMT_TU16: descr =3D "16-bit Unsigned Touch Data"; break; + /* keep-sorted end */ =20 default: /* Compressed formats */ flags =3D V4L2_FMT_FLAG_COMPRESSED; switch (fmt->pixelformat) { /* Max description length mask: descr =3D "01234567890123456789012345678= 90" */ - case V4L2_PIX_FMT_MJPEG: descr =3D "Motion-JPEG"; break; - case V4L2_PIX_FMT_JPEG: descr =3D "JFIF JPEG"; break; + /* keep-sorted start */ + case V4L2_PIX_FMT_AJPG: descr =3D "Aspeed JPEG"; break; + case V4L2_PIX_FMT_AV1_FRAME: descr =3D "AV1 Frame"; break; + case V4L2_PIX_FMT_CPIA1: descr =3D "GSPCA CPiA YUV"; break; case V4L2_PIX_FMT_DV: descr =3D "1394"; break; - case V4L2_PIX_FMT_MPEG: descr =3D "MPEG-1/2/4"; break; + case V4L2_PIX_FMT_ET61X251: descr =3D "GSPCA ET61X251"; break; + case V4L2_PIX_FMT_FWHT: descr =3D "FWHT"; break; /* used in vicodec */ + case V4L2_PIX_FMT_FWHT_STATELESS: descr =3D "FWHT Stateless"; break; /* = used in vicodec */ + case V4L2_PIX_FMT_H263: descr =3D "H.263"; break; case V4L2_PIX_FMT_H264: descr =3D "H.264"; break; - case V4L2_PIX_FMT_H264_NO_SC: descr =3D "H.264 (No Start Codes)"; break; case V4L2_PIX_FMT_H264_MVC: descr =3D "H.264 MVC"; break; + case V4L2_PIX_FMT_H264_NO_SC: descr =3D "H.264 (No Start Codes)"; break; case V4L2_PIX_FMT_H264_SLICE: descr =3D "H.264 Parsed Slice Data"; break; - case V4L2_PIX_FMT_H263: descr =3D "H.263"; break; + case V4L2_PIX_FMT_HEVC: descr =3D "HEVC"; break; /* aka H.265 */ + case V4L2_PIX_FMT_HEVC_SLICE: descr =3D "HEVC Parsed Slice Data"; break; + case V4L2_PIX_FMT_HEXTILE: descr =3D "Hextile Compressed Format"; break; + case V4L2_PIX_FMT_JL2005BCD: descr =3D "GSPCA JL2005BCD"; break; + case V4L2_PIX_FMT_JPEG: descr =3D "JFIF JPEG"; break; + case V4L2_PIX_FMT_JPGL: descr =3D "JPEG Lite"; break; + case V4L2_PIX_FMT_MJPEG: descr =3D "Motion-JPEG"; break; case V4L2_PIX_FMT_MPEG1: descr =3D "MPEG-1 ES"; break; case V4L2_PIX_FMT_MPEG2: descr =3D "MPEG-2 ES"; break; case V4L2_PIX_FMT_MPEG2_SLICE: descr =3D "MPEG-2 Parsed Slice Data"; bre= ak; case V4L2_PIX_FMT_MPEG4: descr =3D "MPEG-4 Part 2 ES"; break; - case V4L2_PIX_FMT_XVID: descr =3D "Xvid"; break; - case V4L2_PIX_FMT_VC1_ANNEX_G: descr =3D "VC-1 (SMPTE 412M Annex G)"; br= eak; - case V4L2_PIX_FMT_VC1_ANNEX_L: descr =3D "VC-1 (SMPTE 412M Annex L)"; br= eak; - case V4L2_PIX_FMT_VP8: descr =3D "VP8"; break; - case V4L2_PIX_FMT_VP8_FRAME: descr =3D "VP8 Frame"; break; - case V4L2_PIX_FMT_VP9: descr =3D "VP9"; break; - case V4L2_PIX_FMT_VP9_FRAME: descr =3D "VP9 Frame"; break; - case V4L2_PIX_FMT_HEVC: descr =3D "HEVC"; break; /* aka H.265 */ - case V4L2_PIX_FMT_HEVC_SLICE: descr =3D "HEVC Parsed Slice Data"; break; - case V4L2_PIX_FMT_FWHT: descr =3D "FWHT"; break; /* used in vicodec */ - case V4L2_PIX_FMT_FWHT_STATELESS: descr =3D "FWHT Stateless"; break; /* = used in vicodec */ - case V4L2_PIX_FMT_SPK: descr =3D "Sorenson Spark"; break; - case V4L2_PIX_FMT_RV30: descr =3D "RealVideo 8"; break; - case V4L2_PIX_FMT_RV40: descr =3D "RealVideo 9 & 10"; break; - case V4L2_PIX_FMT_CPIA1: descr =3D "GSPCA CPiA YUV"; break; - case V4L2_PIX_FMT_WNVA: descr =3D "WNVA"; break; - case V4L2_PIX_FMT_SN9C10X: descr =3D "GSPCA SN9C10X"; break; - case V4L2_PIX_FMT_PWC1: descr =3D "Raw Philips Webcam Type (Old)"; brea= k; - case V4L2_PIX_FMT_PWC2: descr =3D "Raw Philips Webcam Type (New)"; brea= k; - case V4L2_PIX_FMT_ET61X251: descr =3D "GSPCA ET61X251"; break; - case V4L2_PIX_FMT_SPCA561: descr =3D "GSPCA SPCA561"; break; - case V4L2_PIX_FMT_PAC207: descr =3D "GSPCA PAC207"; break; + case V4L2_PIX_FMT_MPEG: descr =3D "MPEG-1/2/4"; break; case V4L2_PIX_FMT_MR97310A: descr =3D "GSPCA MR97310A"; break; - case V4L2_PIX_FMT_JL2005BCD: descr =3D "GSPCA JL2005BCD"; break; - case V4L2_PIX_FMT_SN9C2028: descr =3D "GSPCA SN9C2028"; break; - case V4L2_PIX_FMT_SQ905C: descr =3D "GSPCA SQ905C"; break; - case V4L2_PIX_FMT_PJPG: descr =3D "GSPCA PJPG"; break; + case V4L2_PIX_FMT_MT2110R: descr =3D "Mediatek 10bit Raster Mode"; break; + case V4L2_PIX_FMT_MT2110T: descr =3D "Mediatek 10bit Tile Mode"; break; + case V4L2_PIX_FMT_MT21C: descr =3D "Mediatek Compressed Format"; break; case V4L2_PIX_FMT_OV511: descr =3D "GSPCA OV511"; break; case V4L2_PIX_FMT_OV518: descr =3D "GSPCA OV518"; break; - case V4L2_PIX_FMT_JPGL: descr =3D "JPEG Lite"; break; - case V4L2_PIX_FMT_SE401: descr =3D "GSPCA SE401"; break; - case V4L2_PIX_FMT_S5C_UYVY_JPG: descr =3D "S5C73MX interleaved UYVY/JPEG= "; break; - case V4L2_PIX_FMT_MT21C: descr =3D "Mediatek Compressed Format"; break; - case V4L2_PIX_FMT_QC08C: descr =3D "QCOM Compressed 8-bit Format"; break; - case V4L2_PIX_FMT_QC10C: descr =3D "QCOM Compressed 10-bit Format"; brea= k; - case V4L2_PIX_FMT_AJPG: descr =3D "Aspeed JPEG"; break; - case V4L2_PIX_FMT_AV1_FRAME: descr =3D "AV1 Frame"; break; - case V4L2_PIX_FMT_MT2110T: descr =3D "Mediatek 10bit Tile Mode"; break; - case V4L2_PIX_FMT_MT2110R: descr =3D "Mediatek 10bit Raster Mode"; break; - case V4L2_PIX_FMT_HEXTILE: descr =3D "Hextile Compressed Format"; break; - case V4L2_PIX_FMT_PISP_COMP1_RGGB: descr =3D "PiSP 8b RGRG/GBGB mode1 co= mpr"; break; - case V4L2_PIX_FMT_PISP_COMP1_GRBG: descr =3D "PiSP 8b GRGR/BGBG mode1 co= mpr"; break; - case V4L2_PIX_FMT_PISP_COMP1_GBRG: descr =3D "PiSP 8b GBGB/RGRG mode1 co= mpr"; break; + case V4L2_PIX_FMT_PAC207: descr =3D "GSPCA PAC207"; break; case V4L2_PIX_FMT_PISP_COMP1_BGGR: descr =3D "PiSP 8b BGBG/GRGR mode1 co= mpr"; break; + case V4L2_PIX_FMT_PISP_COMP1_GBRG: descr =3D "PiSP 8b GBGB/RGRG mode1 co= mpr"; break; + case V4L2_PIX_FMT_PISP_COMP1_GRBG: descr =3D "PiSP 8b GRGR/BGBG mode1 co= mpr"; break; case V4L2_PIX_FMT_PISP_COMP1_MONO: descr =3D "PiSP 8b monochrome mode1 c= ompr"; break; - case V4L2_PIX_FMT_PISP_COMP2_RGGB: descr =3D "PiSP 8b RGRG/GBGB mode2 co= mpr"; break; - case V4L2_PIX_FMT_PISP_COMP2_GRBG: descr =3D "PiSP 8b GRGR/BGBG mode2 co= mpr"; break; - case V4L2_PIX_FMT_PISP_COMP2_GBRG: descr =3D "PiSP 8b GBGB/RGRG mode2 co= mpr"; break; + case V4L2_PIX_FMT_PISP_COMP1_RGGB: descr =3D "PiSP 8b RGRG/GBGB mode1 co= mpr"; break; case V4L2_PIX_FMT_PISP_COMP2_BGGR: descr =3D "PiSP 8b BGBG/GRGR mode2 co= mpr"; break; + case V4L2_PIX_FMT_PISP_COMP2_GBRG: descr =3D "PiSP 8b GBGB/RGRG mode2 co= mpr"; break; + case V4L2_PIX_FMT_PISP_COMP2_GRBG: descr =3D "PiSP 8b GRGR/BGBG mode2 co= mpr"; break; case V4L2_PIX_FMT_PISP_COMP2_MONO: descr =3D "PiSP 8b monochrome mode2 c= ompr"; break; + case V4L2_PIX_FMT_PISP_COMP2_RGGB: descr =3D "PiSP 8b RGRG/GBGB mode2 co= mpr"; break; + case V4L2_PIX_FMT_PJPG: descr =3D "GSPCA PJPG"; break; + case V4L2_PIX_FMT_PWC1: descr =3D "Raw Philips Webcam Type (Old)"; brea= k; + case V4L2_PIX_FMT_PWC2: descr =3D "Raw Philips Webcam Type (New)"; brea= k; + case V4L2_PIX_FMT_QC08C: descr =3D "QCOM Compressed 8-bit Format"; break; + case V4L2_PIX_FMT_QC10C: descr =3D "QCOM Compressed 10-bit Format"; brea= k; + case V4L2_PIX_FMT_RV30: descr =3D "RealVideo 8"; break; + case V4L2_PIX_FMT_RV40: descr =3D "RealVideo 9 & 10"; break; + case V4L2_PIX_FMT_S5C_UYVY_JPG: descr =3D "S5C73MX interleaved UYVY/JPEG= "; break; + case V4L2_PIX_FMT_SE401: descr =3D "GSPCA SE401"; break; + case V4L2_PIX_FMT_SN9C10X: descr =3D "GSPCA SN9C10X"; break; + case V4L2_PIX_FMT_SN9C2028: descr =3D "GSPCA SN9C2028"; break; + case V4L2_PIX_FMT_SPCA561: descr =3D "GSPCA SPCA561"; break; + case V4L2_PIX_FMT_SPK: descr =3D "Sorenson Spark"; break; + case V4L2_PIX_FMT_SQ905C: descr =3D "GSPCA SQ905C"; break; + case V4L2_PIX_FMT_VC1_ANNEX_G: descr =3D "VC-1 (SMPTE 412M Annex G)"; br= eak; + case V4L2_PIX_FMT_VC1_ANNEX_L: descr =3D "VC-1 (SMPTE 412M Annex L)"; br= eak; + case V4L2_PIX_FMT_VP8: descr =3D "VP8"; break; + case V4L2_PIX_FMT_VP8_FRAME: descr =3D "VP8 Frame"; break; + case V4L2_PIX_FMT_VP9: descr =3D "VP9"; break; + case V4L2_PIX_FMT_VP9_FRAME: descr =3D "VP9 Frame"; break; + case V4L2_PIX_FMT_WNVA: descr =3D "WNVA"; break; + case V4L2_PIX_FMT_XVID: descr =3D "Xvid"; break; + /* keep-sorted end */ default: if (fmt->description[0]) return; @@ -2883,117 +2889,121 @@ struct v4l2_ioctl_info { .debug =3D _debug, \ } =20 -DEFINE_V4L_STUB_FUNC(g_fbuf) +/* keep-sorted start */ +DEFINE_V4L_STUB_FUNC(decoder_cmd) +DEFINE_V4L_STUB_FUNC(dv_timings_cap) +DEFINE_V4L_STUB_FUNC(encoder_cmd) +DEFINE_V4L_STUB_FUNC(enum_dv_timings) +DEFINE_V4L_STUB_FUNC(enum_frameintervals) +DEFINE_V4L_STUB_FUNC(enum_framesizes) +DEFINE_V4L_STUB_FUNC(enumaudio) +DEFINE_V4L_STUB_FUNC(enumaudout) DEFINE_V4L_STUB_FUNC(expbuf) -DEFINE_V4L_STUB_FUNC(g_std) DEFINE_V4L_STUB_FUNC(g_audio) -DEFINE_V4L_STUB_FUNC(s_audio) -DEFINE_V4L_STUB_FUNC(g_edid) -DEFINE_V4L_STUB_FUNC(s_edid) DEFINE_V4L_STUB_FUNC(g_audout) -DEFINE_V4L_STUB_FUNC(s_audout) +DEFINE_V4L_STUB_FUNC(g_dv_timings) +DEFINE_V4L_STUB_FUNC(g_edid) +DEFINE_V4L_STUB_FUNC(g_enc_index) +DEFINE_V4L_STUB_FUNC(g_fbuf) DEFINE_V4L_STUB_FUNC(g_jpegcomp) +DEFINE_V4L_STUB_FUNC(g_std) +DEFINE_V4L_STUB_FUNC(query_dv_timings) +DEFINE_V4L_STUB_FUNC(s_audio) +DEFINE_V4L_STUB_FUNC(s_audout) +DEFINE_V4L_STUB_FUNC(s_dv_timings) +DEFINE_V4L_STUB_FUNC(s_edid) DEFINE_V4L_STUB_FUNC(s_jpegcomp) -DEFINE_V4L_STUB_FUNC(enumaudio) -DEFINE_V4L_STUB_FUNC(enumaudout) -DEFINE_V4L_STUB_FUNC(enum_framesizes) -DEFINE_V4L_STUB_FUNC(enum_frameintervals) -DEFINE_V4L_STUB_FUNC(g_enc_index) -DEFINE_V4L_STUB_FUNC(encoder_cmd) -DEFINE_V4L_STUB_FUNC(try_encoder_cmd) -DEFINE_V4L_STUB_FUNC(decoder_cmd) DEFINE_V4L_STUB_FUNC(try_decoder_cmd) -DEFINE_V4L_STUB_FUNC(s_dv_timings) -DEFINE_V4L_STUB_FUNC(g_dv_timings) -DEFINE_V4L_STUB_FUNC(enum_dv_timings) -DEFINE_V4L_STUB_FUNC(query_dv_timings) -DEFINE_V4L_STUB_FUNC(dv_timings_cap) +DEFINE_V4L_STUB_FUNC(try_encoder_cmd) +/* keep-sorted end */ =20 static const struct v4l2_ioctl_info v4l2_ioctls[] =3D { - IOCTL_INFO(VIDIOC_QUERYCAP, v4l_querycap, v4l_print_querycap, 0), - IOCTL_INFO(VIDIOC_ENUM_FMT, v4l_enum_fmt, v4l_print_fmtdesc, 0), - IOCTL_INFO(VIDIOC_G_FMT, v4l_g_fmt, v4l_print_format, 0), - IOCTL_INFO(VIDIOC_S_FMT, v4l_s_fmt, v4l_print_format, INFO_FL_PRIO), - IOCTL_INFO(VIDIOC_REQBUFS, v4l_reqbufs, v4l_print_requestbuffers, INFO_FL= _PRIO | INFO_FL_QUEUE), - IOCTL_INFO(VIDIOC_QUERYBUF, v4l_querybuf, v4l_print_buffer, INFO_FL_QUEUE= | INFO_FL_CLEAR(v4l2_buffer, length)), - IOCTL_INFO(VIDIOC_G_FBUF, v4l_stub_g_fbuf, v4l_print_framebuffer, 0), - IOCTL_INFO(VIDIOC_S_FBUF, v4l_s_fbuf, v4l_print_framebuffer, INFO_FL_PRIO= ), - IOCTL_INFO(VIDIOC_OVERLAY, v4l_overlay, v4l_print_u32, INFO_FL_PRIO), - IOCTL_INFO(VIDIOC_QBUF, v4l_qbuf, v4l_print_buffer, INFO_FL_QUEUE), - IOCTL_INFO(VIDIOC_EXPBUF, v4l_stub_expbuf, v4l_print_exportbuffer, INFO_F= L_QUEUE | INFO_FL_CLEAR(v4l2_exportbuffer, flags)), + /* keep-sorted start */ + IOCTL_INFO(VIDIOC_CREATE_BUFS, v4l_create_bufs, v4l_print_create_buffers,= INFO_FL_PRIO | INFO_FL_QUEUE), + IOCTL_INFO(VIDIOC_CROPCAP, v4l_cropcap, v4l_print_cropcap, INFO_FL_CLEAR(= v4l2_cropcap, type)), + IOCTL_INFO(VIDIOC_DBG_G_CHIP_INFO, v4l_dbg_g_chip_info, v4l_print_dbg_chi= p_info, INFO_FL_CLEAR(v4l2_dbg_chip_info, match)), + IOCTL_INFO(VIDIOC_DBG_G_REGISTER, v4l_dbg_g_register, v4l_print_dbg_regis= ter, 0), + IOCTL_INFO(VIDIOC_DBG_S_REGISTER, v4l_dbg_s_register, v4l_print_dbg_regis= ter, 0), + IOCTL_INFO(VIDIOC_DECODER_CMD, v4l_stub_decoder_cmd, v4l_print_decoder_cm= d, INFO_FL_PRIO), IOCTL_INFO(VIDIOC_DQBUF, v4l_dqbuf, v4l_print_buffer, INFO_FL_QUEUE), - IOCTL_INFO(VIDIOC_STREAMON, v4l_streamon, v4l_print_buftype, INFO_FL_PRIO= | INFO_FL_QUEUE), - IOCTL_INFO(VIDIOC_STREAMOFF, v4l_streamoff, v4l_print_buftype, INFO_FL_PR= IO | INFO_FL_QUEUE), - IOCTL_INFO(VIDIOC_G_PARM, v4l_g_parm, v4l_print_streamparm, INFO_FL_CLEAR= (v4l2_streamparm, type)), - IOCTL_INFO(VIDIOC_S_PARM, v4l_s_parm, v4l_print_streamparm, INFO_FL_PRIO), - IOCTL_INFO(VIDIOC_G_STD, v4l_stub_g_std, v4l_print_std, 0), - IOCTL_INFO(VIDIOC_S_STD, v4l_s_std, v4l_print_std, INFO_FL_PRIO), - IOCTL_INFO(VIDIOC_ENUMSTD, v4l_enumstd, v4l_print_standard, INFO_FL_CLEAR= (v4l2_standard, index)), + IOCTL_INFO(VIDIOC_DQEVENT, v4l_dqevent, v4l_print_event, 0), + IOCTL_INFO(VIDIOC_DV_TIMINGS_CAP, v4l_stub_dv_timings_cap, v4l_print_dv_t= imings_cap, INFO_FL_CLEAR(v4l2_dv_timings_cap, pad)), + IOCTL_INFO(VIDIOC_ENCODER_CMD, v4l_stub_encoder_cmd, v4l_print_encoder_cm= d, INFO_FL_PRIO | INFO_FL_CLEAR(v4l2_encoder_cmd, flags)), + IOCTL_INFO(VIDIOC_ENUMAUDIO, v4l_stub_enumaudio, v4l_print_audio, INFO_FL= _CLEAR(v4l2_audio, index)), + IOCTL_INFO(VIDIOC_ENUMAUDOUT, v4l_stub_enumaudout, v4l_print_audioout, IN= FO_FL_CLEAR(v4l2_audioout, index)), IOCTL_INFO(VIDIOC_ENUMINPUT, v4l_enuminput, v4l_print_enuminput, INFO_FL_= CLEAR(v4l2_input, index)), - IOCTL_INFO(VIDIOC_G_CTRL, v4l_g_ctrl, v4l_print_control, INFO_FL_CTRL | I= NFO_FL_CLEAR(v4l2_control, id)), - IOCTL_INFO(VIDIOC_S_CTRL, v4l_s_ctrl, v4l_print_control, INFO_FL_PRIO | I= NFO_FL_CTRL), - IOCTL_INFO(VIDIOC_G_TUNER, v4l_g_tuner, v4l_print_tuner, INFO_FL_CLEAR(v4= l2_tuner, index)), - IOCTL_INFO(VIDIOC_S_TUNER, v4l_s_tuner, v4l_print_tuner, INFO_FL_PRIO), - IOCTL_INFO(VIDIOC_G_AUDIO, v4l_stub_g_audio, v4l_print_audio, 0), - IOCTL_INFO(VIDIOC_S_AUDIO, v4l_stub_s_audio, v4l_print_audio, INFO_FL_PRI= O), - IOCTL_INFO(VIDIOC_QUERYCTRL, v4l_queryctrl, v4l_print_queryctrl, INFO_FL_= CTRL | INFO_FL_CLEAR(v4l2_queryctrl, id)), - IOCTL_INFO(VIDIOC_QUERYMENU, v4l_querymenu, v4l_print_querymenu, INFO_FL_= CTRL | INFO_FL_CLEAR(v4l2_querymenu, index)), - IOCTL_INFO(VIDIOC_G_INPUT, v4l_g_input, v4l_print_u32, 0), - IOCTL_INFO(VIDIOC_S_INPUT, v4l_s_input, v4l_print_u32, INFO_FL_PRIO), - IOCTL_INFO(VIDIOC_G_EDID, v4l_stub_g_edid, v4l_print_edid, INFO_FL_ALWAYS= _COPY), - IOCTL_INFO(VIDIOC_S_EDID, v4l_stub_s_edid, v4l_print_edid, INFO_FL_PRIO |= INFO_FL_ALWAYS_COPY), - IOCTL_INFO(VIDIOC_G_OUTPUT, v4l_g_output, v4l_print_u32, 0), - IOCTL_INFO(VIDIOC_S_OUTPUT, v4l_s_output, v4l_print_u32, INFO_FL_PRIO), IOCTL_INFO(VIDIOC_ENUMOUTPUT, v4l_enumoutput, v4l_print_enumoutput, INFO_= FL_CLEAR(v4l2_output, index)), + IOCTL_INFO(VIDIOC_ENUMSTD, v4l_enumstd, v4l_print_standard, INFO_FL_CLEAR= (v4l2_standard, index)), + IOCTL_INFO(VIDIOC_ENUM_DV_TIMINGS, v4l_stub_enum_dv_timings, v4l_print_en= um_dv_timings, INFO_FL_CLEAR(v4l2_enum_dv_timings, pad)), + IOCTL_INFO(VIDIOC_ENUM_FMT, v4l_enum_fmt, v4l_print_fmtdesc, 0), + IOCTL_INFO(VIDIOC_ENUM_FRAMEINTERVALS, v4l_stub_enum_frameintervals, v4l_= print_frmivalenum, INFO_FL_CLEAR(v4l2_frmivalenum, height)), + IOCTL_INFO(VIDIOC_ENUM_FRAMESIZES, v4l_stub_enum_framesizes, v4l_print_fr= msizeenum, INFO_FL_CLEAR(v4l2_frmsizeenum, pixel_format)), + IOCTL_INFO(VIDIOC_ENUM_FREQ_BANDS, v4l_enum_freq_bands, v4l_print_freq_ba= nd, 0), + IOCTL_INFO(VIDIOC_EXPBUF, v4l_stub_expbuf, v4l_print_exportbuffer, INFO_F= L_QUEUE | INFO_FL_CLEAR(v4l2_exportbuffer, flags)), + IOCTL_INFO(VIDIOC_G_AUDIO, v4l_stub_g_audio, v4l_print_audio, 0), IOCTL_INFO(VIDIOC_G_AUDOUT, v4l_stub_g_audout, v4l_print_audioout, 0), - IOCTL_INFO(VIDIOC_S_AUDOUT, v4l_stub_s_audout, v4l_print_audioout, INFO_F= L_PRIO), - IOCTL_INFO(VIDIOC_G_MODULATOR, v4l_g_modulator, v4l_print_modulator, INFO= _FL_CLEAR(v4l2_modulator, index)), - IOCTL_INFO(VIDIOC_S_MODULATOR, v4l_s_modulator, v4l_print_modulator, INFO= _FL_PRIO), - IOCTL_INFO(VIDIOC_G_FREQUENCY, v4l_g_frequency, v4l_print_frequency, INFO= _FL_CLEAR(v4l2_frequency, tuner)), - IOCTL_INFO(VIDIOC_S_FREQUENCY, v4l_s_frequency, v4l_print_frequency, INFO= _FL_PRIO), - IOCTL_INFO(VIDIOC_CROPCAP, v4l_cropcap, v4l_print_cropcap, INFO_FL_CLEAR(= v4l2_cropcap, type)), IOCTL_INFO(VIDIOC_G_CROP, v4l_g_crop, v4l_print_crop, INFO_FL_CLEAR(v4l2_= crop, type)), - IOCTL_INFO(VIDIOC_S_CROP, v4l_s_crop, v4l_print_crop, INFO_FL_PRIO), - IOCTL_INFO(VIDIOC_G_SELECTION, v4l_g_selection, v4l_print_selection, INFO= _FL_CLEAR(v4l2_selection, r)), - IOCTL_INFO(VIDIOC_S_SELECTION, v4l_s_selection, v4l_print_selection, INFO= _FL_PRIO | INFO_FL_CLEAR(v4l2_selection, r)), + IOCTL_INFO(VIDIOC_G_CTRL, v4l_g_ctrl, v4l_print_control, INFO_FL_CTRL | I= NFO_FL_CLEAR(v4l2_control, id)), + IOCTL_INFO(VIDIOC_G_DV_TIMINGS, v4l_stub_g_dv_timings, v4l_print_dv_timin= gs, 0), + IOCTL_INFO(VIDIOC_G_EDID, v4l_stub_g_edid, v4l_print_edid, INFO_FL_ALWAYS= _COPY), + IOCTL_INFO(VIDIOC_G_ENC_INDEX, v4l_stub_g_enc_index, v4l_print_enc_idx, 0= ), + IOCTL_INFO(VIDIOC_G_EXT_CTRLS, v4l_g_ext_ctrls, v4l_print_ext_controls, I= NFO_FL_CTRL | INFO_FL_ALWAYS_COPY), + IOCTL_INFO(VIDIOC_G_FBUF, v4l_stub_g_fbuf, v4l_print_framebuffer, 0), + IOCTL_INFO(VIDIOC_G_FMT, v4l_g_fmt, v4l_print_format, 0), + IOCTL_INFO(VIDIOC_G_FREQUENCY, v4l_g_frequency, v4l_print_frequency, INFO= _FL_CLEAR(v4l2_frequency, tuner)), + IOCTL_INFO(VIDIOC_G_INPUT, v4l_g_input, v4l_print_u32, 0), IOCTL_INFO(VIDIOC_G_JPEGCOMP, v4l_stub_g_jpegcomp, v4l_print_jpegcompress= ion, 0), - IOCTL_INFO(VIDIOC_S_JPEGCOMP, v4l_stub_s_jpegcomp, v4l_print_jpegcompress= ion, INFO_FL_PRIO), - IOCTL_INFO(VIDIOC_QUERYSTD, v4l_querystd, v4l_print_std, 0), - IOCTL_INFO(VIDIOC_TRY_FMT, v4l_try_fmt, v4l_print_format, 0), - IOCTL_INFO(VIDIOC_ENUMAUDIO, v4l_stub_enumaudio, v4l_print_audio, INFO_FL= _CLEAR(v4l2_audio, index)), - IOCTL_INFO(VIDIOC_ENUMAUDOUT, v4l_stub_enumaudout, v4l_print_audioout, IN= FO_FL_CLEAR(v4l2_audioout, index)), + IOCTL_INFO(VIDIOC_G_MODULATOR, v4l_g_modulator, v4l_print_modulator, INFO= _FL_CLEAR(v4l2_modulator, index)), + IOCTL_INFO(VIDIOC_G_OUTPUT, v4l_g_output, v4l_print_u32, 0), + IOCTL_INFO(VIDIOC_G_PARM, v4l_g_parm, v4l_print_streamparm, INFO_FL_CLEAR= (v4l2_streamparm, type)), IOCTL_INFO(VIDIOC_G_PRIORITY, v4l_g_priority, v4l_print_u32, 0), - IOCTL_INFO(VIDIOC_S_PRIORITY, v4l_s_priority, v4l_print_u32, INFO_FL_PRIO= ), + IOCTL_INFO(VIDIOC_G_SELECTION, v4l_g_selection, v4l_print_selection, INFO= _FL_CLEAR(v4l2_selection, r)), IOCTL_INFO(VIDIOC_G_SLICED_VBI_CAP, v4l_g_sliced_vbi_cap, v4l_print_slice= d_vbi_cap, INFO_FL_CLEAR(v4l2_sliced_vbi_cap, type)), + IOCTL_INFO(VIDIOC_G_STD, v4l_stub_g_std, v4l_print_std, 0), + IOCTL_INFO(VIDIOC_G_TUNER, v4l_g_tuner, v4l_print_tuner, INFO_FL_CLEAR(v4= l2_tuner, index)), IOCTL_INFO(VIDIOC_LOG_STATUS, v4l_log_status, v4l_print_newline, 0), - IOCTL_INFO(VIDIOC_G_EXT_CTRLS, v4l_g_ext_ctrls, v4l_print_ext_controls, I= NFO_FL_CTRL | INFO_FL_ALWAYS_COPY), - IOCTL_INFO(VIDIOC_S_EXT_CTRLS, v4l_s_ext_ctrls, v4l_print_ext_controls, I= NFO_FL_PRIO | INFO_FL_CTRL | INFO_FL_ALWAYS_COPY), - IOCTL_INFO(VIDIOC_TRY_EXT_CTRLS, v4l_try_ext_ctrls, v4l_print_ext_control= s, INFO_FL_CTRL | INFO_FL_ALWAYS_COPY), - IOCTL_INFO(VIDIOC_ENUM_FRAMESIZES, v4l_stub_enum_framesizes, v4l_print_fr= msizeenum, INFO_FL_CLEAR(v4l2_frmsizeenum, pixel_format)), - IOCTL_INFO(VIDIOC_ENUM_FRAMEINTERVALS, v4l_stub_enum_frameintervals, v4l_= print_frmivalenum, INFO_FL_CLEAR(v4l2_frmivalenum, height)), - IOCTL_INFO(VIDIOC_G_ENC_INDEX, v4l_stub_g_enc_index, v4l_print_enc_idx, 0= ), - IOCTL_INFO(VIDIOC_ENCODER_CMD, v4l_stub_encoder_cmd, v4l_print_encoder_cm= d, INFO_FL_PRIO | INFO_FL_CLEAR(v4l2_encoder_cmd, flags)), - IOCTL_INFO(VIDIOC_TRY_ENCODER_CMD, v4l_stub_try_encoder_cmd, v4l_print_en= coder_cmd, INFO_FL_CLEAR(v4l2_encoder_cmd, flags)), - IOCTL_INFO(VIDIOC_DECODER_CMD, v4l_stub_decoder_cmd, v4l_print_decoder_cm= d, INFO_FL_PRIO), - IOCTL_INFO(VIDIOC_TRY_DECODER_CMD, v4l_stub_try_decoder_cmd, v4l_print_de= coder_cmd, 0), - IOCTL_INFO(VIDIOC_DBG_S_REGISTER, v4l_dbg_s_register, v4l_print_dbg_regis= ter, 0), - IOCTL_INFO(VIDIOC_DBG_G_REGISTER, v4l_dbg_g_register, v4l_print_dbg_regis= ter, 0), - IOCTL_INFO(VIDIOC_S_HW_FREQ_SEEK, v4l_s_hw_freq_seek, v4l_print_hw_freq_s= eek, INFO_FL_PRIO), - IOCTL_INFO(VIDIOC_S_DV_TIMINGS, v4l_stub_s_dv_timings, v4l_print_dv_timin= gs, INFO_FL_PRIO | INFO_FL_CLEAR(v4l2_dv_timings, bt.flags)), - IOCTL_INFO(VIDIOC_G_DV_TIMINGS, v4l_stub_g_dv_timings, v4l_print_dv_timin= gs, 0), - IOCTL_INFO(VIDIOC_DQEVENT, v4l_dqevent, v4l_print_event, 0), - IOCTL_INFO(VIDIOC_SUBSCRIBE_EVENT, v4l_subscribe_event, v4l_print_event_s= ubscription, 0), - IOCTL_INFO(VIDIOC_UNSUBSCRIBE_EVENT, v4l_unsubscribe_event, v4l_print_eve= nt_subscription, 0), - IOCTL_INFO(VIDIOC_CREATE_BUFS, v4l_create_bufs, v4l_print_create_buffers,= INFO_FL_PRIO | INFO_FL_QUEUE), + IOCTL_INFO(VIDIOC_OVERLAY, v4l_overlay, v4l_print_u32, INFO_FL_PRIO), IOCTL_INFO(VIDIOC_PREPARE_BUF, v4l_prepare_buf, v4l_print_buffer, INFO_FL= _QUEUE), - IOCTL_INFO(VIDIOC_ENUM_DV_TIMINGS, v4l_stub_enum_dv_timings, v4l_print_en= um_dv_timings, INFO_FL_CLEAR(v4l2_enum_dv_timings, pad)), + IOCTL_INFO(VIDIOC_QBUF, v4l_qbuf, v4l_print_buffer, INFO_FL_QUEUE), + IOCTL_INFO(VIDIOC_QUERYBUF, v4l_querybuf, v4l_print_buffer, INFO_FL_QUEUE= | INFO_FL_CLEAR(v4l2_buffer, length)), + IOCTL_INFO(VIDIOC_QUERYCAP, v4l_querycap, v4l_print_querycap, 0), + IOCTL_INFO(VIDIOC_QUERYCTRL, v4l_queryctrl, v4l_print_queryctrl, INFO_FL_= CTRL | INFO_FL_CLEAR(v4l2_queryctrl, id)), + IOCTL_INFO(VIDIOC_QUERYMENU, v4l_querymenu, v4l_print_querymenu, INFO_FL_= CTRL | INFO_FL_CLEAR(v4l2_querymenu, index)), + IOCTL_INFO(VIDIOC_QUERYSTD, v4l_querystd, v4l_print_std, 0), IOCTL_INFO(VIDIOC_QUERY_DV_TIMINGS, v4l_stub_query_dv_timings, v4l_print_= dv_timings, INFO_FL_ALWAYS_COPY), - IOCTL_INFO(VIDIOC_DV_TIMINGS_CAP, v4l_stub_dv_timings_cap, v4l_print_dv_t= imings_cap, INFO_FL_CLEAR(v4l2_dv_timings_cap, pad)), - IOCTL_INFO(VIDIOC_ENUM_FREQ_BANDS, v4l_enum_freq_bands, v4l_print_freq_ba= nd, 0), - IOCTL_INFO(VIDIOC_DBG_G_CHIP_INFO, v4l_dbg_g_chip_info, v4l_print_dbg_chi= p_info, INFO_FL_CLEAR(v4l2_dbg_chip_info, match)), IOCTL_INFO(VIDIOC_QUERY_EXT_CTRL, v4l_query_ext_ctrl, v4l_print_query_ext= _ctrl, INFO_FL_CTRL | INFO_FL_CLEAR(v4l2_query_ext_ctrl, id)), IOCTL_INFO(VIDIOC_REMOVE_BUFS, v4l_remove_bufs, v4l_print_remove_buffers,= INFO_FL_PRIO | INFO_FL_QUEUE | INFO_FL_CLEAR(v4l2_remove_buffers, type)), + IOCTL_INFO(VIDIOC_REQBUFS, v4l_reqbufs, v4l_print_requestbuffers, INFO_FL= _PRIO | INFO_FL_QUEUE), + IOCTL_INFO(VIDIOC_STREAMOFF, v4l_streamoff, v4l_print_buftype, INFO_FL_PR= IO | INFO_FL_QUEUE), + IOCTL_INFO(VIDIOC_STREAMON, v4l_streamon, v4l_print_buftype, INFO_FL_PRIO= | INFO_FL_QUEUE), + IOCTL_INFO(VIDIOC_SUBSCRIBE_EVENT, v4l_subscribe_event, v4l_print_event_s= ubscription, 0), + IOCTL_INFO(VIDIOC_S_AUDIO, v4l_stub_s_audio, v4l_print_audio, INFO_FL_PRI= O), + IOCTL_INFO(VIDIOC_S_AUDOUT, v4l_stub_s_audout, v4l_print_audioout, INFO_F= L_PRIO), + IOCTL_INFO(VIDIOC_S_CROP, v4l_s_crop, v4l_print_crop, INFO_FL_PRIO), + IOCTL_INFO(VIDIOC_S_CTRL, v4l_s_ctrl, v4l_print_control, INFO_FL_PRIO | I= NFO_FL_CTRL), + IOCTL_INFO(VIDIOC_S_DV_TIMINGS, v4l_stub_s_dv_timings, v4l_print_dv_timin= gs, INFO_FL_PRIO | INFO_FL_CLEAR(v4l2_dv_timings, bt.flags)), + IOCTL_INFO(VIDIOC_S_EDID, v4l_stub_s_edid, v4l_print_edid, INFO_FL_PRIO |= INFO_FL_ALWAYS_COPY), + IOCTL_INFO(VIDIOC_S_EXT_CTRLS, v4l_s_ext_ctrls, v4l_print_ext_controls, I= NFO_FL_PRIO | INFO_FL_CTRL | INFO_FL_ALWAYS_COPY), + IOCTL_INFO(VIDIOC_S_FBUF, v4l_s_fbuf, v4l_print_framebuffer, INFO_FL_PRIO= ), + IOCTL_INFO(VIDIOC_S_FMT, v4l_s_fmt, v4l_print_format, INFO_FL_PRIO), + IOCTL_INFO(VIDIOC_S_FREQUENCY, v4l_s_frequency, v4l_print_frequency, INFO= _FL_PRIO), + IOCTL_INFO(VIDIOC_S_HW_FREQ_SEEK, v4l_s_hw_freq_seek, v4l_print_hw_freq_s= eek, INFO_FL_PRIO), + IOCTL_INFO(VIDIOC_S_INPUT, v4l_s_input, v4l_print_u32, INFO_FL_PRIO), + IOCTL_INFO(VIDIOC_S_JPEGCOMP, v4l_stub_s_jpegcomp, v4l_print_jpegcompress= ion, INFO_FL_PRIO), + IOCTL_INFO(VIDIOC_S_MODULATOR, v4l_s_modulator, v4l_print_modulator, INFO= _FL_PRIO), + IOCTL_INFO(VIDIOC_S_OUTPUT, v4l_s_output, v4l_print_u32, INFO_FL_PRIO), + IOCTL_INFO(VIDIOC_S_PARM, v4l_s_parm, v4l_print_streamparm, INFO_FL_PRIO), + IOCTL_INFO(VIDIOC_S_PRIORITY, v4l_s_priority, v4l_print_u32, INFO_FL_PRIO= ), + IOCTL_INFO(VIDIOC_S_SELECTION, v4l_s_selection, v4l_print_selection, INFO= _FL_PRIO | INFO_FL_CLEAR(v4l2_selection, r)), + IOCTL_INFO(VIDIOC_S_STD, v4l_s_std, v4l_print_std, INFO_FL_PRIO), + IOCTL_INFO(VIDIOC_S_TUNER, v4l_s_tuner, v4l_print_tuner, INFO_FL_PRIO), + IOCTL_INFO(VIDIOC_TRY_DECODER_CMD, v4l_stub_try_decoder_cmd, v4l_print_de= coder_cmd, 0), + IOCTL_INFO(VIDIOC_TRY_ENCODER_CMD, v4l_stub_try_encoder_cmd, v4l_print_en= coder_cmd, INFO_FL_CLEAR(v4l2_encoder_cmd, flags)), + IOCTL_INFO(VIDIOC_TRY_EXT_CTRLS, v4l_try_ext_ctrls, v4l_print_ext_control= s, INFO_FL_CTRL | INFO_FL_ALWAYS_COPY), + IOCTL_INFO(VIDIOC_TRY_FMT, v4l_try_fmt, v4l_print_format, 0), + IOCTL_INFO(VIDIOC_UNSUBSCRIBE_EVENT, v4l_unsubscribe_event, v4l_print_eve= nt_subscription, 0), }; + /* keep-sorted end */ #define V4L2_IOCTLS ARRAY_SIZE(v4l2_ioctls) =20 static bool v4l2_is_known_ioctl(unsigned int cmd) --- base-commit: 1b83a9f41bd13dae09fabf594918ea36a9bc0cfc change-id: 20250514-keep-sorted-ioctl-bfb871ee1c87 Best regards, --=20 Ricardo Ribalda