fp6-img/aports/temp/libcamera/0006-libcamera-sensor-Add-IMX896-sensor-properties.patch
Jorijn van der Graaf 81948970e1
Some checks failed
image / image (push) Failing after 4m17s
libcamera: add the IMX896 sensor helper and properties (r3)
Teaches the software ISP's AGC the IMX896 gain law
(gain = 16384/(16384-code), inverted from the vendor driver and
round-tripped against all 3009 vendor gain-table entries, max error
0.049%) and adds the sensor properties (1.0um unit cell, test-pattern
map). Same shape as the OV13B10 pair; both verified to apply and
compile on v0.7.2 after 0001-0004.

The extracted-CCM tuning yaml is deliberately NOT packaged yet - the
color matrices come from the vendor Chromatix blob and the licensing
call is open (see the camera journal).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-16 21:03:10 +02:00

41 lines
1.5 KiB
Diff

From 262906b13ff727473679cf7895618e4745f3ba4c Mon Sep 17 00:00:00 2001
From: Jorijn van der Graaf <jorijnvdgraaf@catcrafts.net>
Date: Sun, 16 Aug 2026 20:49:31 +0200
Subject: [PATCH] libcamera: sensor: Add IMX896 sensor properties
Add the Sony IMX896 (Fairphone 6 main camera, 50 MP, 8192x6144) to
the static properties database: 1.0 um unit cell and the test pattern
modes exposed by the kernel driver (V4L2 menu indices map 1:1 to
register 0x0600 values). Removes the "No static properties available
for 'imx896'" warning.
Assisted-by: Claude:claude-fable-5
---
src/libcamera/sensor/camera_sensor_properties.cpp | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/src/libcamera/sensor/camera_sensor_properties.cpp b/src/libcamera/sensor/camera_sensor_properties.cpp
index 2804315..63050c2 100644
--- a/src/libcamera/sensor/camera_sensor_properties.cpp
+++ b/src/libcamera/sensor/camera_sensor_properties.cpp
@@ -335,6 +335,17 @@ const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen
.hblankDelay = 3
},
} },
+ { "imx896", {
+ .unitCellSize = { 1000, 1000 },
+ .testPatternModes = {
+ { controls::draft::TestPatternModeOff, 0 },
+ { controls::draft::TestPatternModeSolidColor, 1 },
+ { controls::draft::TestPatternModeColorBars, 2 },
+ { controls::draft::TestPatternModeColorBarsFadeToGray, 3 },
+ { controls::draft::TestPatternModePn9, 4 },
+ },
+ .sensorDelays = { },
+ } },
{ "ov2685", {
.unitCellSize = { 1750, 1750 },
.testPatternModes = {
--
2.55.0