From patchwork Thu May 28 07:19:09 2026 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shaunak Datar X-Patchwork-Id: 26812 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 52F2EC328C for ; Thu, 28 May 2026 08:06:13 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id D5D3762FEA; Thu, 28 May 2026 10:06:11 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="lXMiduNP"; dkim-atps=neutral Received: from mail-pj1-x102e.google.com (mail-pj1-x102e.google.com [IPv6:2607:f8b0:4864:20::102e]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id C4B1B62DC4 for ; Thu, 28 May 2026 09:29:19 +0200 (CEST) Received: by mail-pj1-x102e.google.com with SMTP id 98e67ed59e1d1-366139223e4so7674014a91.0 for ; Thu, 28 May 2026 00:29:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779953358; x=1780558158; darn=lists.libcamera.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=BI1V2YMl9Xwr7DtONU1eI+wkJsTgH4lWz+MqxH8XjP8=; b=lXMiduNPa//KLC4urzeQNWGbgKZUnzV+l7UA49aiBI2cgjCVRsKxUUTfZYVym72jDd uHItQ7PueLZizQunq1g/MJMqJK2J0waz5vjrw+6G4TK+jxNBtZTo6DrTNcBR5vVBBQLw 9NhNELK3fb+AS5BT7K1MX7sJb+jkAfSj6zJano71ykCeJDCj2CUeyS63mXz+HHqFKkW4 97TGkeU1c+y/VYBK4xAI8iYt0CtabipIQyVfEGLUYhDuFAjw65V3EMWkCbV3tz9aLaBv xcv91z353zBSFVdlfH+4foN0wduRDqaNo4LyUWbnGaNDtpMYeeknGecaQkYgRzCo9y4M gc1g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779953358; x=1780558158; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=BI1V2YMl9Xwr7DtONU1eI+wkJsTgH4lWz+MqxH8XjP8=; b=fFGX0GR2ItcCTttfTpBIV+X+xRFm2v4TVbVn6gmR0MvVr+uOxskJ889tiaVcAWzDqD gRgCXa+HChmVwF/qvy4KtHZ8kBVOVLshUV7Vhqv6g5WTKWc7w+UwbQri8Zg+IF4pDwZ2 7EuagLBHcDz+jsIiYeOSlYen06S3H7DuLYQ73TtOUWUEzE4+2r6tbIXdMHuUa2rnMAg9 pskTxDX0BQ4sKFS/XJHWbVup8mLwSxIHFXx2fPNER0n0C4B6Z273/d4zNOtXJdFtjD+V zQ4sU3C2vRFS7cksjqdNGXqIY2SGyakBvj4zyQdQYvJDQkmKDsEwIB7IC3lavzNZ3Pyw rh7Q== X-Gm-Message-State: AOJu0YzqjsIztUijLEYRXRBbtL5THHBfCtgfPDjn+t1SiMgVCodcCOe4 PpfjNIdeWL5TgzXa/0rBvPe2OSuXz+vZKPxz2YSrwlxN1uT6DgEK/Luanf26ig== X-Gm-Gg: Acq92OFqhAWg7jANO0l4gFPECEWLiUn6QJ+vr1ycaeVhZ0pdbkzugvpkO51AEHyw4uY FJ3QoOs11WC83+LAGCAWnV+E10w5MdH4L2CiyPuH35xUlZZlblbVX7yf/V7uNRkg3Izl5/vhQs9 +ZzxKw3F+19tB20UzQL//l2rbjUezWNe4R94CL5Tql2lcvzPmytY6N9XR8w49do/ss5q6Rb9pBr kiRtK7OhVQgEiIFoyTH+cAlIfQmzpOT2EKf+0wewc6Mhm7HhxPoRpEPMj+4N2M4IBgdDsNluLeF JNkl1Blgz171UU4if5mJ7nNycGHPAg95EMp5xi2T1vTpiw6VcdvKWWMHWk6k9XlnoyTYHJcOhuC w474mI7zQ8OHsyQvjpjuqzBnt/604KxrteCvPJxacLzDJVyNMgeHcrSM/wDtbRimISOV11q44py xYU6/h2nhzSC0oJxNzYeYnIqskXygGKQKTAbCSTfSUZUVJLbdwEe0LC+YNQgZvUfLJ0PIui/b0p bb84S2ZIconHw== X-Received: by 2002:a05:6a20:a11b:b0:398:7c6b:8615 with SMTP id adf61e73a8af0-3b328c704aemr28437561637.6.1779953357949; Thu, 28 May 2026 00:29:17 -0700 (PDT) Received: from fedora ([2405:201:2011:e829:cc4:6306:45d:33c]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-c85202a337fsm14463865a12.8.2026.05.28.00.29.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 28 May 2026 00:29:17 -0700 (PDT) From: Shaunak Datar To: libcamera-devel@lists.libcamera.org Cc: Shaunak Datar Subject: [PATCH] ipa: libipa: Handle missing YAML nodes in Interpolator Date: Thu, 28 May 2026 12:49:09 +0530 Message-ID: <20260528071909.547179-1-shaunakkdatar@gmail.com> X-Mailer: git-send-email 2.54.0 MIME-Version: 1.0 X-Mailman-Approved-At: Thu, 28 May 2026 10:06:11 +0200 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" Interpolator::readYaml() currently logs an error when passed an empty YAML object because it expects the node to always be a list. Optional tuning parameters such as colourGains in the AWB Grey algorithm may be absent from the tuning files. rkisp1 uses tuning files without a colourGains section. Return -ENOENT for empty YAML nodes before validating the node to avoid ERROR logs while still reporting a warning to the caller. Fixes: #323 Signed-off-by: Shaunak Datar --- src/ipa/libipa/interpolator.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/ipa/libipa/interpolator.h b/src/ipa/libipa/interpolator.h index cc4b27b5..01bd8140 100644 --- a/src/ipa/libipa/interpolator.h +++ b/src/ipa/libipa/interpolator.h @@ -46,6 +46,9 @@ public: data_.clear(); lastInterpolatedKey_.reset(); + if (yaml.isEmpty()) + return -ENOENT; + if (!yaml.isList()) { LOG(Interpolator, Error) << "yaml object must be a list"; return -EINVAL;