From patchwork Fri Jul 31 14:41:39 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: John Cronin X-Patchwork-Id: 27527 Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id 480B5BE080 for ; Fri, 31 Jul 2026 14:41:43 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 3915C67FD9; Fri, 31 Jul 2026 16:41:42 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=stromback-com.20251104.gappssmtp.com header.i=@stromback-com.20251104.gappssmtp.com header.b="JIZXc+eU"; dkim-atps=neutral Received: from mail-yw1-x1132.google.com (mail-yw1-x1132.google.com [IPv6:2607:f8b0:4864:20::1132]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 51AC265F9F for ; Fri, 31 Jul 2026 16:41:41 +0200 (CEST) Received: by mail-yw1-x1132.google.com with SMTP id 00721157ae682-7ff05e5d009so13538077b3.1 for ; Fri, 31 Jul 2026 07:41:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1785508900; cv=none; d=google.com; s=arc-20260327; b=lbt4pe5KMMTyPHtAqMB1epicBTfEYM+KSJagOD+0uKpipW00JMhMoUnsY3zXn8cWeS vWh/Y24xGvkvGN5HqpfgGf2r/mCBFYHK+4Qg4ir1ew71c7N+CO2cnme4lVUhbTfqqs9I IYrlJ9dH41ieTL5hehyKCmScmuLky4yaGcF45U/1ldshyavfNhq5rmiHRguG5nskPd76 iTRB+uMUtgfXv8LkBkq89X833mlEtzZDXQI+HPA7isE1gX8bHPJuSlBVTvJjRKl5Piiu ZcBJ+T+mIKgtlpSwWR2/xlK75RdyrJwbf/HJU7QtEeM9CIJ5oqhT33GlHtMd71jMf8Kz CdKg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=content-transfer-encoding:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature; bh=Ll0IJqOox4aY4FBw/LoFz6iBk/U4YjIyU86tJZ+EH90=; fh=hN8mNPnxBXjCARLz6VoZGvcnfJs454t5dBv/gP0fGlc=; b=a2qVO0BEwgJ04PVc+qGzPrIvYs8UC19IVYNUfTS0rD4h9UXY1Wa2jurWi/NJQ5LkSe 4ye6xBthhgoE1nhfDOZQqpX7ep4bhw4e7a/QbNHJdoYArF+iiJXDRlylwbqjDE/+YZLq 5tSndoudYx+5SsDYMwlrrZVWLM8Yjrjqw2edtrRDLy6SYcmlP6jtCk9WN0KVBEzKpj35 eVF8c6MbyeKYhd/NJi8oTYaWtRCN0CkJrSRYO9QXcZkFepzcvGOlnhEdW83++/pUwOm+ 22ZuqYOTs/JPBo7eKVd44EyKpgO/dPBcdM0px7oSGhb3O2SrEpU9ZIGqUIKR2dvloMzb WNRA==; darn=lists.libcamera.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=stromback-com.20251104.gappssmtp.com; s=20251104; t=1785508900; x=1786113700; darn=lists.libcamera.org; h=content-transfer-encoding:content-type:cc:to:subject:message-id :date:from:references:in-reply-to:mime-version:from:to:cc:subject :date:message-id:reply-to:content-type; bh=Ll0IJqOox4aY4FBw/LoFz6iBk/U4YjIyU86tJZ+EH90=; b=JIZXc+eUvvjqQpqcec0dq6I01n8Qxyo2Ej8C3Z6GJqBf0on6dyBVl0SsFPevkh6MfX tDheYJ/mhTu64JFxi/YZP8/XKZ5f97NhaskqxHR5fnA1Y4FfKwvCiFm7eMceg8Nh1Vw8 k5waAkflsRvBtvGTkhhshm2KX3jPSFqFS1eRayg3/qpbR9VwBtOmSpVRn6Pjy8/Q0UuG +UyEHzauJMkMpI55ZkCwOSiVwWAVQ0TXK1c0f3XHI4xCKNJSnl6w/xE5QZJg6goGdO5+ TNqyYsiRoYYiq1yVS2hA4j2JdAZfrZ8SFdwZe7cKMYrtdzBR8wuFKn9YghJUqXD2C82m YAWQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785508900; x=1786113700; h=content-transfer-encoding:content-type:cc:to:subject:message-id :date:from:references:in-reply-to:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=Ll0IJqOox4aY4FBw/LoFz6iBk/U4YjIyU86tJZ+EH90=; b=b02TUDb1jS9c5JN6+xApxFNYu0ZPAv/UYIyi/Eot5kxlOeKjpcyKAqXZXJQgY8JtET ArVpilOSb0HuoxbTZkoK+uEzFgKG1vw0HXBfrBnso4dKUva1RC180IJXx8zWh7HBRfDi FcTfCuCnZopSoHqyRHBhs6xMYDP9pFW+kGSFJr40c4xVtUmHva2cmL2s2idhA1kAmiR8 hPHJivPBeF0aYdOPaWnAdPFzgimznbeeDM3DIrqqnndKtGg48RgAoy3EJAuDGGh8dr2V RkwkxzAEl0VIpJHrR/wy6BwLde1P0rDFMY7cOh3prDMbN2HADGGSrvFE2l0ZfNVxiwPQ CPow== X-Gm-Message-State: AOJu0YwEIaclZ0v6QCyajQwbKRtfNI1pqT1zTP5unbsPGH1WBaa+Q9XI vRci6QdwdZJELUJKXTkFJAKUdU0MB7AVkJ/f5MU9tSYWUs+PtUEuaQgsqTsOqhpODljKgr0okah 1G4XMAQKl0gSxYx0qO4pOmAJb4p64TU3JrFDMCsU6mJeQ1R1XAs07Be0= X-Gm-Gg: AR+sD11AD1b27tqKelEBYbJVtJcvr3E+3iuctaXXxkUyPShk91j7sHbwLfATYM50QqU jfr/dQB3L6msnf5FmcKQJVpyj/1St2C/fEEXvjBCMWVHu0WDjFF3RwQ+5cagy9IYfpSD4KnEHyc oQUIXEccwY9VFhTRPXa++8D7jjwnNarOH8juLCtQp3G3dpAk3LcO3NLgosDn1aJfinq9TXiv6E1 qhGvEMg10KqhuHpDngtrUGEkid7KfGNGzyyxItlb2+ot/vif0uLsb1bnd7718yxy4xJtse2AoUv VH0JqYd8/DJk2xMpxyzbw2jdHq/FHz/5c8FQPRyDOZO5cMA50oYN5yaGvnOayE15BG+HFkYe1Tp Q3u8+Vju4PG2UIYGVYakX/oxj4PcfNVtW7+hMXghz4FLaHFIt+s2321zbZN5WXGgHdRKd/2chWN XwakbMx40MUiu0G0BfXJ8YO/3X9BFqTefxDpo4SCFAMfIVXsgecML4XkLrt3b2cxBRG8mIEeXHk oGsWTiz/lucT2ioRzv/sNL6OlaIrZl4qFRyGy0OULyVWkgdTz34 X-Received: by 2002:a05:690c:6e07:b0:81e:de49:128e with SMTP id 00721157ae682-81fd4a32c74mr903127b3.13.1785508900038; Fri, 31 Jul 2026 07:41:40 -0700 (PDT) Received: from 313336824172 named unknown by gmailapi.google.com with HTTPREST; Fri, 31 Jul 2026 07:41:39 -0700 Received: from 313336824172 named unknown by gmailapi.google.com with HTTPREST; Fri, 31 Jul 2026 07:41:39 -0700 MIME-Version: 1.0 In-Reply-To: References: From: John Cronin Date: Fri, 31 Jul 2026 07:41:39 -0700 X-Gm-Features: AUfX_mzFqZMr7JwfQXdB_AKQlZ2C0nECNc5eGPtDN_lOWeuw3jD0dDHtpjsxn4k Message-ID: 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 X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" Register static properties for Sony IMX471 so soft-ISP no longer warns about missing sensor properties. Unit cell size is ~1.4 µm (kernel active array 4656x3496). Test pattern modes match imx471_test_pattern_menu[] in drivers/media/i2c/imx471.c. Sensor control delays are left empty so libcamera uses its defaults until measured. Signed-off-by: John Cronin --- src/libcamera/sensor/camera_sensor_properties.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) .testPatternModes = {}, diff --git a/src/libcamera/sensor/camera_sensor_properties.cpp b/src/libcamera/sensor/camera_sensor_properties.cpp index fc9e184..4823462 100644 --- a/src/libcamera/sensor/camera_sensor_properties.cpp +++ b/src/libcamera/sensor/camera_sensor_properties.cpp @@ -297,6 +297,20 @@ const CameraSensorProperties *CameraSensorProperties::get(const std::string &sen .hblankDelay = 2 }, } }, + { "imx471", { + /* ~1.4 µm pixels (nm); active array 4656x3496 in kernel. */ + .unitCellSize = { 1400, 1400 }, + /* Matches imx471_test_pattern_menu[] in drivers/media/i2c/imx471.c */ + .testPatternModes = { + { controls::draft::TestPatternModeOff, 0 }, + { controls::draft::TestPatternModeSolidColor, 1 }, + { controls::draft::TestPatternModeColorBars, 2 }, + { controls::draft::TestPatternModeColorBarsFadeToGray, 3 }, + { controls::draft::TestPatternModePn9, 4 }, + }, + /* Control delays not measured; use libcamera defaults. */ + .sensorDelays = { }, + } }, { "imx477", { .unitCellSize = { 1550, 1550 },