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

Reply via email to