Re: [PATCH v5 1/5] media: qcom: camss: Add V4L2 meta format for CAMSS ISP parameters
Loic Poulain <[email protected]> Thu, 30 Jul 2026 14:34:18 +0200
| Newsgroups | org.kernel.vger.linux-hardening,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel,org.kernel.vger.linux-media |
|---|---|
| Message-ID | <CAFEp6-1jt_q2YZv17mxWTwKbxipNoh3F0RPqhLwhdH-ffcCcvg@mail.gmail.com> |
On Thu, Jul 30, 2026 at 1:57=E2=80=AFPM Bryan O'Donoghue <[email protected]> w= rote: > > On 30/07/2026 12:44, Loic Poulain wrote: > > On Wed, Jul 29, 2026 at 8:28=E2=80=AFPM Gjorgji Rosikopulos (Consultant= ) > > <[email protected]> wrote: > >> > >> Hi Loic, > >> > >> On 7/24/2026 3:42 PM, Loic Poulain wrote: > >>> Add a V4L2 meta format code (V4L2_META_FMT_QCOM_ISP_PARAMS) for the > >>> Qualcomm CAMSS ISP parameter buffer. This format is used by the param= s > >>> video node exposed by CAMSS offline ISP drivers (e.g. OPE) to carry > >>> ISP tuning data such as white balance, color correction and chroma > >>> enhancement settings. > >>> > >>> Signed-off-by: Loic Poulain <[email protected]> > >>> --- > >>> drivers/media/v4l2-core/v4l2-ioctl.c | 1 + > >>> include/uapi/linux/videodev2.h | 3 +++ > >>> 2 files changed, 4 insertions(+) > >>> > >>> diff --git a/drivers/media/v4l2-core/v4l2-ioctl.c b/drivers/media/v4l= 2-core/v4l2-ioctl.c > >>> index 98512ea4cc5b9d725e1851af2ed38df85bb4fa8c..7b6e9a9a514f037190d55= d59409dd6cc97522943 100644 > >>> --- a/drivers/media/v4l2-core/v4l2-ioctl.c > >>> +++ b/drivers/media/v4l2-core/v4l2-ioctl.c > >>> @@ -1471,6 +1471,7 @@ static void v4l_fill_fmtdesc(struct v4l2_fmtdes= c *fmt) > >>> case V4L2_META_FMT_C3ISP_STATS: descr =3D "Amlogic C3 = ISP Statistics"; break; > >>> case V4L2_META_FMT_MALI_C55_PARAMS: descr =3D "ARM Mali-C5= 5 ISP Parameters"; break; > >>> case V4L2_META_FMT_MALI_C55_STATS: descr =3D "ARM Mali-C5= 5 ISP 3A Statistics"; break; > >>> + case V4L2_META_FMT_QCOM_ISP_PARAMS: descr =3D "Qualcomm CAM= SS ISP Parameters"; break; > >>> 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; > >>> diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/vide= odev2.h > >>> index add08188f06890182a5c399a223c1ab0a546cae1..011026194a20cde22a374= e6fb2570cbc6bced230 100644 > >>> --- a/include/uapi/linux/videodev2.h > >>> +++ b/include/uapi/linux/videodev2.h > >>> @@ -888,6 +888,9 @@ struct v4l2_pix_format { > >>> #define V4L2_META_FMT_MALI_C55_PARAMS v4l2_fourcc('C', '5', = '5', 'P') /* ARM Mali-C55 Parameters */ > >>> #define V4L2_META_FMT_MALI_C55_STATS v4l2_fourcc('C', '5', '5', 'S'= ) /* ARM Mali-C55 3A Statistics */ > >>> > >>> +/* Vendor specific - used for Qualcomm CAMSS offline ISP */ > >> > >> It seems that this is generic format for ISP parameters, can we update= the comment and remove offline. The proposal: > >> /* Vendor specific - used for Qualcomm CAMSS ISP */ > > > > Sure. > > Loic > > Since these are not the full list and as I understand them not the full > structures for OPE - qcom restricting the full formats ? - I'd request > to move these to an OPE specific header. Yes, I think the params struct can be OPE-specific and defined in an OPE-specific header. However, could we keep the enum in a generic header so that we only have a single enum definition? We could then extend it later with OPE-specific or non-OPE-specific parameters as needed. Regards, Loic