[libcamera-devel,16/23] libcamera: IPAManager: add isolation flag to proxy creation

Message ID 20200915142038.28757-17-paul.elder@ideasonboard.com
State Superseded
Headers show
Series
  • IPA isolation implementation
Related show

Commit Message

Paul Elder Sept. 15, 2020, 2:20 p.m. UTC
When the IPA proxy is created, it needs to know whether to isolate or
not. Feed the flag at creation of the IPA proxy.

Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
---
 src/libcamera/ipa_manager.cpp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Niklas Söderlund Sept. 19, 2020, 11:49 a.m. UTC | #1
Hi Paul,

Thanks for your work.

On 2020-09-15 23:20:31 +0900, Paul Elder wrote:
> When the IPA proxy is created, it needs to know whether to isolate or
> not. Feed the flag at creation of the IPA proxy.
> 
> Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>

Reviewed-by: Niklas Söderlund <niklas.soderlund@ragnatech.se>

> ---
>  src/libcamera/ipa_manager.cpp | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/src/libcamera/ipa_manager.cpp b/src/libcamera/ipa_manager.cpp
> index 2d0ea242..26458153 100644
> --- a/src/libcamera/ipa_manager.cpp
> +++ b/src/libcamera/ipa_manager.cpp
> @@ -291,7 +291,8 @@ std::unique_ptr<IPAProxy> IPAManager::createIPA(PipelineHandler *pipe,
>  		return nullptr;
>  	}
>  
> -	std::unique_ptr<IPAProxy> proxy = pf->create(m);
> +	std::unique_ptr<IPAProxy> proxy =
> +		pf->create(m, !self_->isSignatureValid(m));
>  	if (!proxy->isValid()) {
>  		LOG(IPAManager, Error) << "Failed to load proxy";
>  		return nullptr;
> -- 
> 2.27.0
> 
> _______________________________________________
> libcamera-devel mailing list
> libcamera-devel@lists.libcamera.org
> https://lists.libcamera.org/listinfo/libcamera-devel

Patch

diff --git a/src/libcamera/ipa_manager.cpp b/src/libcamera/ipa_manager.cpp
index 2d0ea242..26458153 100644
--- a/src/libcamera/ipa_manager.cpp
+++ b/src/libcamera/ipa_manager.cpp
@@ -291,7 +291,8 @@  std::unique_ptr<IPAProxy> IPAManager::createIPA(PipelineHandler *pipe,
 		return nullptr;
 	}
 
-	std::unique_ptr<IPAProxy> proxy = pf->create(m);
+	std::unique_ptr<IPAProxy> proxy =
+		pf->create(m, !self_->isSignatureValid(m));
 	if (!proxy->isValid()) {
 		LOG(IPAManager, Error) << "Failed to load proxy";
 		return nullptr;