[6/7] libcamera: mali-c55: Fix sensor size computation
diff mbox series

Message ID 20251205-mali-cru-v1-6-d81bb5ffe73a@ideasonboard.com
State Superseded
Headers show
Series
  • libcamera: mali-c55: Add support for memory-to-memory
Related show

Commit Message

Jacopo Mondi Dec. 5, 2025, 2:52 p.m. UTC
The sensor size computation routine doesn't work well. Even if a
more appriate size for a sensor is available, the largest one is
always selected.

Fix the size computation procedure which has an inverted assignment.

Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
---
 src/libcamera/pipeline/mali-c55/mali-c55.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Barnabás Pőcze Dec. 8, 2025, 9:36 a.m. UTC | #1
2025. 12. 05. 15:52 keltezéssel, Jacopo Mondi írta:
> The sensor size computation routine doesn't work well. Even if a
> more appriate size for a sensor is available, the largest one is
   
appropriate


> always selected.

"The last size in the list is always selected unconditionally because
the current best distance is not updated properly during the search."

Something like the above would be a bit clearer to me.


> 
> Fix the size computation procedure which has an inverted assignment.
> 
> Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
> ---

Reviewed-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com>


>   src/libcamera/pipeline/mali-c55/mali-c55.cpp | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/src/libcamera/pipeline/mali-c55/mali-c55.cpp b/src/libcamera/pipeline/mali-c55/mali-c55.cpp
> index 46ef5e7735a30a0d4ae9bb6f8d671bbd2dff3f51..a0a880f26281e5cd9ec176153970a2dd1d230496 100644
> --- a/src/libcamera/pipeline/mali-c55/mali-c55.cpp
> +++ b/src/libcamera/pipeline/mali-c55/mali-c55.cpp
> @@ -666,7 +666,7 @@ CameraConfiguration::Status MaliC55CameraConfiguration::validate()
>   				std::abs(static_cast<int>(minSensorSize.height) -
>   					 static_cast<int>(size.height));
>   		if (dist < distance) {
> -			dist = distance;
> +			distance = dist;
>   			bestSize = size;
>   		}
>   	}
> 
> --
> 2.51.1
>
Dan Scally Dec. 9, 2025, 11:44 a.m. UTC | #2
Hi Jacopo

On 05/12/2025 14:52, Jacopo Mondi wrote:
> The sensor size computation routine doesn't work well. Even if a
> more appriate size for a sensor is available, the largest one is
> always selected.
> 
> Fix the size computation procedure which has an inverted assignment.
> 
> Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
> ---

Reviewed-and-Tested-by: Daniel Scally <dan.scally@ideasonboard.com>

>   src/libcamera/pipeline/mali-c55/mali-c55.cpp | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/src/libcamera/pipeline/mali-c55/mali-c55.cpp b/src/libcamera/pipeline/mali-c55/mali-c55.cpp
> index 46ef5e7735a30a0d4ae9bb6f8d671bbd2dff3f51..a0a880f26281e5cd9ec176153970a2dd1d230496 100644
> --- a/src/libcamera/pipeline/mali-c55/mali-c55.cpp
> +++ b/src/libcamera/pipeline/mali-c55/mali-c55.cpp
> @@ -666,7 +666,7 @@ CameraConfiguration::Status MaliC55CameraConfiguration::validate()
>   				std::abs(static_cast<int>(minSensorSize.height) -
>   					 static_cast<int>(size.height));
>   		if (dist < distance) {
> -			dist = distance;
> +			distance = dist;
>   			bestSize = size;
>   		}
>   	}
>

Patch
diff mbox series

diff --git a/src/libcamera/pipeline/mali-c55/mali-c55.cpp b/src/libcamera/pipeline/mali-c55/mali-c55.cpp
index 46ef5e7735a30a0d4ae9bb6f8d671bbd2dff3f51..a0a880f26281e5cd9ec176153970a2dd1d230496 100644
--- a/src/libcamera/pipeline/mali-c55/mali-c55.cpp
+++ b/src/libcamera/pipeline/mali-c55/mali-c55.cpp
@@ -666,7 +666,7 @@  CameraConfiguration::Status MaliC55CameraConfiguration::validate()
 				std::abs(static_cast<int>(minSensorSize.height) -
 					 static_cast<int>(size.height));
 		if (dist < distance) {
-			dist = distance;
+			distance = dist;
 			bestSize = size;
 		}
 	}