{"id":27527,"url":"https://patchwork.libcamera.org/api/patches/27527/?format=json","web_url":"https://patchwork.libcamera.org/patch/27527/","project":{"id":1,"url":"https://patchwork.libcamera.org/api/projects/1/?format=json","name":"libcamera","link_name":"libcamera","list_id":"libcamera_core","list_email":"libcamera-devel@lists.libcamera.org","web_url":"","scm_url":"","webscm_url":""},"msgid":"<CALr1FG-_4LK0-2E94G_s3KM_jiovBTpyvkbQoNpshhEDy4Bpew@mail.gmail.com>","date":"2026-07-31T14:41:39","name":"[v3,2/2] libcamera: camera_sensor_properties: Add imx471","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"e764b1426dc176b3fab8efe1cd9733d828eda2be","submitter":{"id":476,"url":"https://patchwork.libcamera.org/api/people/476/?format=json","name":"John Cronin","email":"john@stromback.com"},"delegate":null,"mbox":"https://patchwork.libcamera.org/patch/27527/mbox/","series":[{"id":6095,"url":"https://patchwork.libcamera.org/api/series/6095/?format=json","web_url":"https://patchwork.libcamera.org/project/libcamera/list/?series=6095","date":"2026-07-31T14:33:06","name":"Add imx471 soft-ISP sensor support","version":3,"mbox":"https://patchwork.libcamera.org/series/6095/mbox/"}],"comments":"https://patchwork.libcamera.org/api/patches/27527/comments/","check":"pending","checks":"https://patchwork.libcamera.org/api/patches/27527/checks/","tags":{},"headers":{"Return-Path":"<libcamera-devel-bounces@lists.libcamera.org>","X-Original-To":"parsemail@patchwork.libcamera.org","Delivered-To":"parsemail@patchwork.libcamera.org","Received":["from lancelot.ideasonboard.com (lancelot.ideasonboard.com\n\t[92.243.16.209])\n\tby patchwork.libcamera.org (Postfix) with ESMTPS id 480B5BE080\n\tfor <parsemail@patchwork.libcamera.org>;\n\tFri, 31 Jul 2026 14:41:43 +0000 (UTC)","from lancelot.ideasonboard.com (localhost [IPv6:::1])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTP id 3915C67FD9;\n\tFri, 31 Jul 2026 16:41:42 +0200 (CEST)","from mail-yw1-x1132.google.com (mail-yw1-x1132.google.com\n\t[IPv6:2607:f8b0:4864:20::1132])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id 51AC265F9F\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 31 Jul 2026 16:41:41 +0200 (CEST)","by mail-yw1-x1132.google.com with SMTP id\n\t00721157ae682-7ff05e5d009so13538077b3.1\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tFri, 31 Jul 2026 07:41:41 -0700 (PDT)","from 313336824172 named unknown by gmailapi.google.com with\n\tHTTPREST; Fri, 31 Jul 2026 07:41:39 -0700","from 313336824172 named unknown by gmailapi.google.com with\n\tHTTPREST; Fri, 31 Jul 2026 07:41:39 -0700"],"Authentication-Results":"lancelot.ideasonboard.com; dkim=pass (2048-bit key;\n\tunprotected) header.d=stromback-com.20251104.gappssmtp.com\n\theader.i=@stromback-com.20251104.gappssmtp.com\n\theader.b=\"JIZXc+eU\"; dkim-atps=neutral","ARC-Seal":"i=1; a=rsa-sha256; t=1785508900; cv=none;\n\td=google.com; s=arc-20260327;\n\tb=lbt4pe5KMMTyPHtAqMB1epicBTfEYM+KSJagOD+0uKpipW00JMhMoUnsY3zXn8cWeS\n\tvWh/Y24xGvkvGN5HqpfgGf2r/mCBFYHK+4Qg4ir1ew71c7N+CO2cnme4lVUhbTfqqs9I\n\tIYrlJ9dH41ieTL5hehyKCmScmuLky4yaGcF45U/1ldshyavfNhq5rmiHRguG5nskPd76\n\tiTRB+uMUtgfXv8LkBkq89X833mlEtzZDXQI+HPA7isE1gX8bHPJuSlBVTvJjRKl5Piiu\n\tZcBJ+T+mIKgtlpSwWR2/xlK75RdyrJwbf/HJU7QtEeM9CIJ5oqhT33GlHtMd71jMf8Kz\n\tCdKg==","ARC-Message-Signature":"i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com;\n\ts=arc-20260327; \n\th=content-transfer-encoding:cc:to:subject:message-id:date:from\n\t:references:in-reply-to:mime-version:dkim-signature;\n\tbh=Ll0IJqOox4aY4FBw/LoFz6iBk/U4YjIyU86tJZ+EH90=;\n\tfh=hN8mNPnxBXjCARLz6VoZGvcnfJs454t5dBv/gP0fGlc=;\n\tb=a2qVO0BEwgJ04PVc+qGzPrIvYs8UC19IVYNUfTS0rD4h9UXY1Wa2jurWi/NJQ5LkSe\n\t4ye6xBthhgoE1nhfDOZQqpX7ep4bhw4e7a/QbNHJdoYArF+iiJXDRlylwbqjDE/+YZLq\n\t5tSndoudYx+5SsDYMwlrrZVWLM8Yjrjqw2edtrRDLy6SYcmlP6jtCk9WN0KVBEzKpj35\n\teVF8c6MbyeKYhd/NJi8oTYaWtRCN0CkJrSRYO9QXcZkFepzcvGOlnhEdW83++/pUwOm+\n\t22ZuqYOTs/JPBo7eKVd44EyKpgO/dPBcdM0px7oSGhb3O2SrEpU9ZIGqUIKR2dvloMzb\n\tWNRA==; darn=lists.libcamera.org","ARC-Authentication-Results":"i=1; mx.google.com; arc=none","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=stromback-com.20251104.gappssmtp.com; s=20251104; t=1785508900;\n\tx=1786113700; darn=lists.libcamera.org; \n\th=content-transfer-encoding:content-type:cc:to:subject:message-id\n\t:date:from:references:in-reply-to:mime-version:from:to:cc:subject\n\t:date:message-id:reply-to:content-type;\n\tbh=Ll0IJqOox4aY4FBw/LoFz6iBk/U4YjIyU86tJZ+EH90=;\n\tb=JIZXc+eUvvjqQpqcec0dq6I01n8Qxyo2Ej8C3Z6GJqBf0on6dyBVl0SsFPevkh6MfX\n\ttDheYJ/mhTu64JFxi/YZP8/XKZ5f97NhaskqxHR5fnA1Y4FfKwvCiFm7eMceg8Nh1Vw8\n\tk5waAkflsRvBtvGTkhhshm2KX3jPSFqFS1eRayg3/qpbR9VwBtOmSpVRn6Pjy8/Q0UuG\n\t+UyEHzauJMkMpI55ZkCwOSiVwWAVQ0TXK1c0f3XHI4xCKNJSnl6w/xE5QZJg6goGdO5+\n\tTNqyYsiRoYYiq1yVS2hA4j2JdAZfrZ8SFdwZe7cKMYrtdzBR8wuFKn9YghJUqXD2C82m\n\tYAWQ==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20251104; t=1785508900; x=1786113700;\n\th=content-transfer-encoding:content-type:cc:to:subject:message-id\n\t:date:from:references:in-reply-to:mime-version:x-gm-gg\n\t:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to\n\t:content-type;\n\tbh=Ll0IJqOox4aY4FBw/LoFz6iBk/U4YjIyU86tJZ+EH90=;\n\tb=b02TUDb1jS9c5JN6+xApxFNYu0ZPAv/UYIyi/Eot5kxlOeKjpcyKAqXZXJQgY8JtET\n\tArVpilOSb0HuoxbTZkoK+uEzFgKG1vw0HXBfrBnso4dKUva1RC180IJXx8zWh7HBRfDi\n\tFcTfCuCnZopSoHqyRHBhs6xMYDP9pFW+kGSFJr40c4xVtUmHva2cmL2s2idhA1kAmiR8\n\thPHJivPBeF0aYdOPaWnAdPFzgimznbeeDM3DIrqqnndKtGg48RgAoy3EJAuDGGh8dr2V\n\tRkwkxzAEl0VIpJHrR/wy6BwLde1P0rDFMY7cOh3prDMbN2HADGGSrvFE2l0ZfNVxiwPQ\n\tCPow==","X-Gm-Message-State":"AOJu0YwEIaclZ0v6QCyajQwbKRtfNI1pqT1zTP5unbsPGH1WBaa+Q9XI\n\tvRci6QdwdZJELUJKXTkFJAKUdU0MB7AVkJ/f5MU9tSYWUs+PtUEuaQgsqTsOqhpODljKgr0okah\n\t1G4XMAQKl0gSxYx0qO4pOmAJb4p64TU3JrFDMCsU6mJeQ1R1XAs07Be0=","X-Gm-Gg":"AR+sD11AD1b27tqKelEBYbJVtJcvr3E+3iuctaXXxkUyPShk91j7sHbwLfATYM50QqU\n\tjfr/dQB3L6msnf5FmcKQJVpyj/1St2C/fEEXvjBCMWVHu0WDjFF3RwQ+5cagy9IYfpSD4KnEHyc\n\toQUIXEccwY9VFhTRPXa++8D7jjwnNarOH8juLCtQp3G3dpAk3LcO3NLgosDn1aJfinq9TXiv6E1\n\tqhGvEMg10KqhuHpDngtrUGEkid7KfGNGzyyxItlb2+ot/vif0uLsb1bnd7718yxy4xJtse2AoUv\n\tVH0JqYd8/DJk2xMpxyzbw2jdHq/FHz/5c8FQPRyDOZO5cMA50oYN5yaGvnOayE15BG+HFkYe1Tp\n\tQ3u8+Vju4PG2UIYGVYakX/oxj4PcfNVtW7+hMXghz4FLaHFIt+s2321zbZN5WXGgHdRKd/2chWN\n\tXwakbMx40MUiu0G0BfXJ8YO/3X9BFqTefxDpo4SCFAMfIVXsgecML4XkLrt3b2cxBRG8mIEeXHk\n\toGsWTiz/lucT2ioRzv/sNL6OlaIrZl4qFRyGy0OULyVWkgdTz34","X-Received":"by 2002:a05:690c:6e07:b0:81e:de49:128e with SMTP id\n\t00721157ae682-81fd4a32c74mr903127b3.13.1785508900038; Fri, 31 Jul 2026\n\t07:41:40 -0700 (PDT)","MIME-Version":"1.0","In-Reply-To":"<CALr1FG9wKCZLfcCo0_Cbvz__FpqerY_SFMdUdtiFgq=N4gx8Bw@mail.gmail.com>","References":"<CALr1FG9wKCZLfcCo0_Cbvz__FpqerY_SFMdUdtiFgq=N4gx8Bw@mail.gmail.com>","From":"John Cronin <john@stromback.com>","Date":"Fri, 31 Jul 2026 07:41:39 -0700","X-Gm-Features":"AUfX_mzFqZMr7JwfQXdB_AKQlZ2C0nECNc5eGPtDN_lOWeuw3jD0dDHtpjsxn4k","Message-ID":"<CALr1FG-_4LK0-2E94G_s3KM_jiovBTpyvkbQoNpshhEDy4Bpew@mail.gmail.com>","Subject":"[PATCH v3 2/2] libcamera: camera_sensor_properties: Add imx471","To":"libcamera-devel@lists.libcamera.org","Cc":"jacopo.mondi@ideasonboard.com, kieran.bingham@ideasonboard.com","Content-Type":"text/plain; charset=\"UTF-8\"","Content-Transfer-Encoding":"quoted-printable","X-BeenThere":"libcamera-devel@lists.libcamera.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"<libcamera-devel.lists.libcamera.org>","List-Unsubscribe":"<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>","List-Archive":"<https://lists.libcamera.org/pipermail/libcamera-devel/>","List-Post":"<mailto:libcamera-devel@lists.libcamera.org>","List-Help":"<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>","List-Subscribe":"<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>","Errors-To":"libcamera-devel-bounces@lists.libcamera.org","Sender":"\"libcamera-devel\" <libcamera-devel-bounces@lists.libcamera.org>"},"content":"Register static properties for Sony IMX471 so soft-ISP no longer warns\nabout missing sensor properties.\n\nUnit cell size is ~1.4 µm (kernel active array 4656x3496). Test pattern\nmodes match imx471_test_pattern_menu[] in drivers/media/i2c/imx471.c.\nSensor control delays are left empty so libcamera uses its defaults\nuntil measured.\n\nSigned-off-by: John Cronin <john.cronin@opcenter.com>\n---\n src/libcamera/sensor/camera_sensor_properties.cpp | 14 ++++++++++++++\n 1 file changed, 14 insertions(+)\n\n \t\t\t.testPatternModes = {},","diff":"diff --git a/src/libcamera/sensor/camera_sensor_properties.cpp\nb/src/libcamera/sensor/camera_sensor_properties.cpp\nindex fc9e184..4823462 100644\n--- a/src/libcamera/sensor/camera_sensor_properties.cpp\n+++ b/src/libcamera/sensor/camera_sensor_properties.cpp\n@@ -297,6 +297,20 @@ const CameraSensorProperties\n*CameraSensorProperties::get(const std::string &sen\n \t\t\t\t.hblankDelay = 2\n \t\t\t},\n \t\t} },\n+\t\t{ \"imx471\", {\n+\t\t\t/* ~1.4 µm pixels (nm); active array 4656x3496 in kernel. */\n+\t\t\t.unitCellSize = { 1400, 1400 },\n+\t\t\t/* Matches imx471_test_pattern_menu[] in drivers/media/i2c/imx471.c */\n+\t\t\t.testPatternModes = {\n+\t\t\t\t{ controls::draft::TestPatternModeOff, 0 },\n+\t\t\t\t{ controls::draft::TestPatternModeSolidColor, 1 },\n+\t\t\t\t{ controls::draft::TestPatternModeColorBars, 2 },\n+\t\t\t\t{ controls::draft::TestPatternModeColorBarsFadeToGray, 3 },\n+\t\t\t\t{ controls::draft::TestPatternModePn9, 4 },\n+\t\t\t},\n+\t\t\t/* Control delays not measured; use libcamera defaults. */\n+\t\t\t.sensorDelays = { },\n+\t\t} },\n \t\t{ \"imx477\", {\n \t\t\t.unitCellSize = { 1550, 1550 },\n","prefixes":["v3","2/2"]}