Re: [PATCH v5 3/5] media: uapi: Add CAMSS OPE ISP configuration definition

"Gjorgji Rosikopulos (Consultant)" <[email protected]>
Newsgroups org.kernel.vger.linux-media,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-hardening,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
Hi Loic, Hans,

On 7/29/2026 4:27 PM, [email protected] wrote:
> Hi Loic, et.al,
> 
> On 24-Jul-26 14:42, Loic Poulain wrote:
>> Add the uapi header camss-ope-config.h defining the ISP parameter
>> structures used by the CAMSS Offline Processing Engine (OPE) driver.
>> This includes structures for white balance, chroma enhancement and
>> color correction configuration.
>>
>> Signed-off-by: Loic Poulain <[email protected]>
>> ---
>>  include/uapi/linux/camss-ope-config.h | 160 ++++++++++++++++++++++++++++++++++
>>  1 file changed, 160 insertions(+)
>>
>> diff --git a/include/uapi/linux/camss-ope-config.h b/include/uapi/linux/camss-ope-config.h
>> new file mode 100644
>> index 0000000000000000000000000000000000000000..800e6ef1dba218ca33b565e1e51d6647f02f8753
>> --- /dev/null
>> +++ b/include/uapi/linux/camss-ope-config.h
>> @@ -0,0 +1,160 @@
>> +/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
>> +/*
>> + * Qualcomm CAMSS Offline Processing Engine (OPE) ISP parameters UAPI
>> + *
>> + * Uses the generic V4L2 extensible ISP parameters buffer format defined in
>> + * <uapi/linux/media/v4l2-isp.h>.
>> + *
>> + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
>> + */
>> +
>> +#ifndef _UAPI_LINUX_CAMSS_OPE_CONFIG_H
>> +#define _UAPI_LINUX_CAMSS_OPE_CONFIG_H
>> +
>> +#include <linux/types.h>
>> +#include <linux/media/v4l2-isp.h>
>> +
>> +/**
>> + * enum camss_ope_params_block_type - CAMSS ISP parameter block identifiers
>> + *
>> + * Each value identifies one ISP processing block.  The value is placed in
>> + * the @type field of &struct v4l2_isp_params_block_header.
>> + */
>> +enum camss_ope_params_block_type {
>> +	CAMSS_OPE_PARAMS_WB_GAIN = 1,
>> +	CAMSS_OPE_PARAMS_CHROMA_ENHAN = 2,
>> +	CAMSS_OPE_PARAMS_COLOR_CORRECT = 3,
>> +};
> 
> I don't think we want this enum to be OPE specific. The whole idea behind
> the extensible ISP parameters is that there is a single set of parameter
> definitions spanning multiple ISP generations.
> 
> There is going to be a mirroring patch for libcamera defining some C++
> magic around this header:
> 
> https://patchwork.libcamera.org/patch/27430/
> 
> and this will be used in the camss libcamera IPA and we don't want to
> have one version of the libcamera wrapper per ISP "generation".
> 
> So I think this should all be moved back to a generic camss-config.h
> (or maybe camss-parameters.h ?) and then if for the planned Hamoa /
> Monoca inline ISP work of we need say a new version of CAMSS_PARAMS_WB_GAIN
> just add a CAMSS_OPE_PARAMS_WB_GAIN_V2 for that.
> 
> That is the whole idea behind the extensible params, otherwise libcamera
> will effectively need to have 1 IPA per ISP generation / type which is
> not what we want.

Can we change the name of the header to not be OPE specific. An proposal will be camss-config.h,
i believe most of the parameters will be the same for other ISP versions.

~Gjorgji
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.