public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/libcamera] f45: Fix ov01a10 flickering
@ 2026-08-28 14:45 Milan Zamazal
  0 siblings, 0 replies; only message in thread
From: Milan Zamazal @ 2026-08-28 14:45 UTC (permalink / raw)
  To: git-commits

            A new commit has been pushed.

            Repo   : rpms/libcamera
            Branch : f45
            Commit : 99486641b80eea3c1460ded5cf852ef38ab03261
            Author : Milan Zamazal <mzamazal@redhat.com>
            Date   : 2026-08-27T20:04:12+02:00
            Stats  : +23/-1 in 2 file(s)
            URL    : https://src.fedoraproject.org/rpms/libcamera/c/99486641b80eea3c1460ded5cf852ef38ab03261?branch=f45

            Log:
            Fix ov01a10 flickering

This fixes https://bugzilla.redhat.com/show_bug.cgi?id=2483190.

The patch can be removed in the next upstream release since software ISP
exposure control has been reworked after 0.7.2.

---
diff --git a/0002-fix-ov01a10-flickering.patch b/0002-fix-ov01a10-flickering.patch
new file mode 100644
index 0000000..f3f8b7a
--- /dev/null
+++ b/0002-fix-ov01a10-flickering.patch
@@ -0,0 +1,18 @@
+diff --git a/src/ipa/simple/soft_simple.cpp b/src/ipa/simple/soft_simple.cpp
+index 629e1a32d..95cc63a4a 100644
+--- a/src/ipa/simple/soft_simple.cpp
++++ b/src/ipa/simple/soft_simple.cpp
+@@ -228,10 +228,9 @@ int IPASoftSimple::configure(const IPAConfigInfo &configInfo)
+ 		context_.configuration.agc.againMin = camHelper_->gain(againMin);
+ 		context_.configuration.agc.againMax = camHelper_->gain(againMax);
+ 		context_.configuration.agc.again10 = std::max(context_.configuration.agc.againMin, 1.0);
+-		context_.configuration.agc.againMinStep =
+-			(context_.configuration.agc.againMax -
+-			 context_.configuration.agc.againMin) /
+-			100.0;
++		context_.configuration.agc.againMinStep = std::min(
++			std::abs(camHelper_->gain(againMin + 1) - camHelper_->gain(againMin)),
++			std::abs(camHelper_->gain(againMax) - camHelper_->gain(againMax - 1)));
+ 		if (camHelper_->blackLevel().has_value()) {
+ 			/*
+ 			 * The black level from camHelper_ is a 16 bit value, software ISP

diff --git a/libcamera.spec b/libcamera.spec
index 713ed59..29d1604 100644
--- a/libcamera.spec
+++ b/libcamera.spec
@@ -1,6 +1,6 @@
 Name:    libcamera
 Version: 0.7.2
-Release: 3%{?dist}
+Release: 4%{?dist}
 Summary: A library to support complex camera ISPs
 # see .reuse/dep5 and COPYING for details
 License: LGPL-2.1-or-later
@@ -12,6 +12,7 @@ Source2: qcam.metainfo.xml
 Source3: 70-libcamera.rules
 
 Patch01: 0001-disable-rpi-pisp.patch
+Patch02: 0002-fix-ov01a10-flickering.patch
 
 # libcamera does not currently build on these architectures
 ExcludeArch: s390x ppc64le
@@ -197,6 +198,9 @@ install -D -m 644 %SOURCE3 %{buildroot}/%{_udevrulesdir}/
 %{python3_sitearch}/*
 
 %changelog
+* Thu Aug 27 2026 Milan Zamazal <mzamazal@redhat.com> - 0.7.2-4
+- Fix ov01a10 flickering (rhbz#2483190)
+
 * Wed Jul 22 2026 Python Maint <python-maint@redhat.com> - 0.7.2-3
 - Rebuilt for Python 3.15.0b4 ABI change
 

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-08-28 14:45 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-28 14:45 [rpms/libcamera] f45: Fix ov01a10 flickering Milan Zamazal

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox