File 0002-libcamera-simple-Force-disable-softwareISP-for-milli.patch of Package libcamera

From 125ab037a4395c1e9fffb0bd68fb2c3eeae95078 Mon Sep 17 00:00:00 2001
From: Robert Mader <robert.mader@collabora.com>
Date: Thu, 9 May 2024 21:07:07 +0200
Subject: [PATCH 02/12] libcamera: simple: Force-disable softwareISP for
 millipixels

As the later uses libcamera and requires raw-streams to get passed
through. In the future, libcamera will likely support both - raw and
swIsp - at the same time.
---
 src/libcamera/pipeline/simple/simple.cpp | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/libcamera/pipeline/simple/simple.cpp b/src/libcamera/pipeline/simple/simple.cpp
index a62fa7b8c..a0aad052f 100644
--- a/src/libcamera/pipeline/simple/simple.cpp
+++ b/src/libcamera/pipeline/simple/simple.cpp
@@ -7,6 +7,7 @@
  */
 
 #include <algorithm>
+#include <fstream>
 #include <iterator>
 #include <list>
 #include <map>
@@ -1773,6 +1774,14 @@ bool SimplePipelineHandler::matchDevice(std::shared_ptr<MediaDevice> media,
 		}
 	}
 
+	std::string comm_string;
+	std::ifstream("/proc/self/comm") >> comm_string;
+	if (comm_string == "millipixels") {
+		LOG(SimplePipeline, Warning)
+				<< "Detected millipixels, disabling swIsp";
+		swIspEnabled_ = false;
+	}
+
 	/* Locate the sensors. */
 	std::vector<MediaEntity *> sensors = locateSensors(media.get());
 	if (sensors.empty()) {
-- 
2.52.0

openSUSE Build Service is sponsored by