diff --git a/src/libcamera/formats.cpp b/src/libcamera/formats.cpp
index bfcdfc08960d..df7413f58ba8 100644
--- a/src/libcamera/formats.cpp
+++ b/src/libcamera/formats.cpp
@@ -1001,6 +1001,9 @@ const std::map<PixelFormat, PixelFormatInfo> pixelFormatInfo{
  */
 const PixelFormatInfo &PixelFormatInfo::info(const PixelFormat &format)
 {
+	if (!format.isValid())
+		return pixelFormatInfoInvalid;
+
 	const auto iter = pixelFormatInfo.find(format);
 	if (iter == pixelFormatInfo.end()) {
 		LOG(Formats, Warning)
@@ -1021,14 +1024,7 @@ const PixelFormatInfo &PixelFormatInfo::info(const PixelFormat &format)
 const PixelFormatInfo &PixelFormatInfo::info(const V4L2PixelFormat &format)
 {
 	PixelFormat pixelFormat = format.toPixelFormat(false);
-	if (!pixelFormat.isValid())
-		return pixelFormatInfoInvalid;
-
-	const auto iter = pixelFormatInfo.find(pixelFormat);
-	if (iter == pixelFormatInfo.end())
-		return pixelFormatInfoInvalid;
-
-	return iter->second;
+	return info(pixelFormat);
 }
 
 /**
