[v6,4/5] pipeline: rpi: Explictly pass pipe()->name() when creating IPA
diff mbox series

Message ID 20260728172447.68551-5-johannes.goede@oss.qualcomm.com
State Changes Requested
Headers show
Series
  • ipa: Allow IPA creation by name
Related show

Commit Message

Hans de Goede July 28, 2026, 5:24 p.m. UTC
Switch to explicitly specifying the pipeline-name as the name of the IPA
to create.

This is a preparation patch for switching the default IPA creation to
matching IPA by IPA proxy type, which does not work for rpi because
the same IPAProxyRPi type is used for both the rpi/vc4 and rpi/pisp
pipeline handlers.

Signed-off-by: Hans de Goede <johannes.goede@oss.qualcomm.com>
---
 src/libcamera/pipeline/rpi/common/pipeline_base.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Jacopo Mondi July 31, 2026, 8:19 a.m. UTC | #1
Hi Hans

On Tue, Jul 28, 2026 at 07:24:46PM +0200, Hans de Goede wrote:
> Switch to explicitly specifying the pipeline-name as the name of the IPA
> to create.
>
> This is a preparation patch for switching the default IPA creation to
> matching IPA by IPA proxy type, which does not work for rpi because
> the same IPAProxyRPi type is used for both the rpi/vc4 and rpi/pisp
> pipeline handlers.
>
> Signed-off-by: Hans de Goede <johannes.goede@oss.qualcomm.com>
> ---
>  src/libcamera/pipeline/rpi/common/pipeline_base.cpp | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp
> index 5a5acf6a1..d1f4bc79f 100644
> --- a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp
> +++ b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp
> @@ -1165,7 +1165,7 @@ int CameraData::loadIPA(ipa::RPi::InitResult *result)
>  {
>  	int ret;
>
> -	ipa_ = pipe()->createIPA<ipa::RPi::IPAProxyRPi>(1, 1);
> +	ipa_ = pipe()->createIPA<ipa::RPi::IPAProxyRPi>(pipe()->name(), 1, 1);

Maybe a comment on why we have to force the name (it's in the commit
message, so not 100% it is needed)

Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>

Thanks
  j

>
>  	if (!ipa_)
>  		return -ENOENT;
> --
> 2.54.0
>
Hans de Goede Aug. 11, 2026, 12:38 p.m. UTC | #2
Hi,

On 31-Jul-26 10:19, Jacopo Mondi wrote:
> Hi Hans
> 
> On Tue, Jul 28, 2026 at 07:24:46PM +0200, Hans de Goede wrote:
>> Switch to explicitly specifying the pipeline-name as the name of the IPA
>> to create.
>>
>> This is a preparation patch for switching the default IPA creation to
>> matching IPA by IPA proxy type, which does not work for rpi because
>> the same IPAProxyRPi type is used for both the rpi/vc4 and rpi/pisp
>> pipeline handlers.
>>
>> Signed-off-by: Hans de Goede <johannes.goede@oss.qualcomm.com>
>> ---
>>  src/libcamera/pipeline/rpi/common/pipeline_base.cpp | 2 +-
>>  1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp
>> index 5a5acf6a1..d1f4bc79f 100644
>> --- a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp
>> +++ b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp
>> @@ -1165,7 +1165,7 @@ int CameraData::loadIPA(ipa::RPi::InitResult *result)
>>  {
>>  	int ret;
>>
>> -	ipa_ = pipe()->createIPA<ipa::RPi::IPAProxyRPi>(1, 1);
>> +	ipa_ = pipe()->createIPA<ipa::RPi::IPAProxyRPi>(pipe()->name(), 1, 1);
> 
> Maybe a comment on why we have to force the name (it's in the commit
> message, so not 100% it is needed)

Ack, I've added a comment for the upcoming v7 of this series.

> Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>

Thank you.

Regards,

Hans

Patch
diff mbox series

diff --git a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp
index 5a5acf6a1..d1f4bc79f 100644
--- a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp
+++ b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp
@@ -1165,7 +1165,7 @@  int CameraData::loadIPA(ipa::RPi::InitResult *result)
 {
 	int ret;
 
-	ipa_ = pipe()->createIPA<ipa::RPi::IPAProxyRPi>(1, 1);
+	ipa_ = pipe()->createIPA<ipa::RPi::IPAProxyRPi>(pipe()->name(), 1, 1);
 
 	if (!ipa_)
 		return -ENOENT;