From patchwork Fri Jun 6 10:55:22 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Naushir Patuck X-Patchwork-Id: 23478 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 1F048C31E9 for ; Fri, 6 Jun 2025 10:57:09 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 1311768DBF; Fri, 6 Jun 2025 12:57:08 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=raspberrypi.com header.i=@raspberrypi.com header.b="RnkhOZ5F"; dkim-atps=neutral Received: from mail-wm1-x32c.google.com (mail-wm1-x32c.google.com [IPv6:2a00:1450:4864:20::32c]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 0E7AB68DC3 for ; Fri, 6 Jun 2025 12:57:00 +0200 (CEST) Received: by mail-wm1-x32c.google.com with SMTP id 5b1f17b1804b1-44ff4081975so470095e9.1 for ; Fri, 06 Jun 2025 03:57:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raspberrypi.com; s=google; t=1749207419; x=1749812219; darn=lists.libcamera.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=8NJR7QRxV2lxaWVQp05RjZAoEuju/VJwaB09A6PDeMc=; b=RnkhOZ5FaHiL9v1pMggHTPZvRfekHQ0bVt8hMF/brjSr/rTEXeXookPkJzPA+/mjeh kZ0iCvIgdQ8JB2NoBveGuraeFk2WOlqwSDDZE1Htm3JUXjRTsDrYKvmH3JrAxMbHs8F4 nmWL7zLzz7+QUwMf0c4eL+n0j8Tcc0Ah/7dbSE6qGjBk37nY3n3akrvDRfWeBntfBG4O hsYkF+GK7HMvHxKhN0sR7lCOfbGDcnsZDq8WtY1jN+qvkQ28bKxCg+jYW9xrK2DWuIYH IpgBGGtqspzX5yJ21nvVZY69uEh1Kqp16oV/V/JXBjqZ9lORoww9OypZV19j45Ts7fbf RXXA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749207419; x=1749812219; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8NJR7QRxV2lxaWVQp05RjZAoEuju/VJwaB09A6PDeMc=; b=EPoCi3PsMy4SsoG0Z8Hn0ff+lCbeW9aJL3oA8JCoKJY8BY2j6k5EBqKoFgFAOXyGJw Oyfn0mUFBut+V8UbY+VffnvO6ml8MD3GKoRQNxtBuNm+JuETQyvx6yQteoz+/2spbc3g KgZM7cjIio1qcTCE7fv1IifIDKBkKEJl5cHPG7Pz9a1mwYI2IpDT+yolvVYEYsLvXIwG 2GgGEj4CyBlA1lpPcDNkbSf0fHCr9ocBrIb9da6Iqdy41QHDIy+pFyBgmStYsVX9kjZ6 rPfruyxyNBo2NmYni9n3uqnglFBEb/Dzz0QH/g4tcKFrTLM4v0U/L4GJIECudMqZpDEM WnKQ== X-Gm-Message-State: AOJu0YzRq3Ad7NlXmgXCQ4Ea/zvzQ9VlCnpon2MjsB8m7Fcdjxe80kk9 H5dLU+UBQ6b8epHXIit9Rf8WNwyYECZZ3fJ8b4qMuSOKRSky1R3GzFqiAqlgagbPzzmfn7C9gHD kVppv X-Gm-Gg: ASbGncuKdw7KCSWn12K8eRtAqLMAoPf9iqCJ0rwKGWl4+V/lWOrli+ala2l1VecDjDa 1cHSH8BEAVBCOGEE42NjZRDbQ3XKNQu79Hsw3/neDYORGvOiZZM+ozLvQfg6cRXM0X5y9cfibGp HvnUruVd4qs8EEoC8EGsNnSWlelg/pdXfXVWU5E2RSkzomLcAEACcBgx4J3k6qEpJvzo9HqgTHy +ZKZYKBFLH+MfBbe2vFLS7xGQ6EyQERNxqFQlKZfpbR9VR3FDAt6Wii0yfV8SMSf0uQn6TMtRHe CbXF+ZZdY18eHH3oEt5gFfWigUchPRLFmPBxXGwbuZtnLLoB/pBseXZC8DKM7mMKyRavzVHaUOZ F X-Google-Smtp-Source: AGHT+IHptrA5q0hNbIuu9PZBQQGJaQSXmW5e0o+MhrAne8aJqTfEoL0gJBCc51h8+3500PRutFx82w== X-Received: by 2002:a05:600c:4f0f:b0:442:fff5:5185 with SMTP id 5b1f17b1804b1-4529abdfba3mr7809445e9.6.1749207418999; Fri, 06 Jun 2025 03:56:58 -0700 (PDT) Received: from NAUSH-P-DELL.tail9c427.ts.net ([93.93.133.154]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-452137277afsm20092455e9.30.2025.06.06.03.56.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 06 Jun 2025 03:56:58 -0700 (PDT) From: Naushir Patuck To: libcamera-devel@lists.libcamera.org Cc: Naushir Patuck , David Plowman , Jacopo Mondi Subject: [PATCH v3 4/6] pipeline: rpi: Remove disable_startup_frame_drops config option Date: Fri, 6 Jun 2025 11:55:22 +0100 Message-ID: <20250606105651.1624640-5-naush@raspberrypi.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250606105651.1624640-1-naush@raspberrypi.com> References: <20250606105651.1624640-1-naush@raspberrypi.com> MIME-Version: 1.0 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" With the previous change to not drop frames in the pipeline handler, the "disable_startup_frame_drops" pipeline config option is not used. Remove it, and throw a warning if the option is present in the YAML config file. Signed-off-by: Naushir Patuck Reviewed-by: David Plowman Reviewed-by: Jacopo Mondi --- src/libcamera/pipeline/rpi/common/pipeline_base.cpp | 7 ++++--- src/libcamera/pipeline/rpi/common/pipeline_base.h | 5 ----- src/libcamera/pipeline/rpi/pisp/data/example.yaml | 5 ----- src/libcamera/pipeline/rpi/vc4/data/example.yaml | 5 ----- 4 files changed, 4 insertions(+), 18 deletions(-) diff --git a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp index 3f0b7abdc59a..d8c7ca9352de 100644 --- a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp +++ b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp @@ -1078,7 +1078,6 @@ void CameraData::enumerateVideoDevices(MediaLink *link, const std::string &front int CameraData::loadPipelineConfiguration() { config_ = { - .disableStartupFrameDrops = false, .cameraTimeoutValue = 0, }; @@ -1115,8 +1114,10 @@ int CameraData::loadPipelineConfiguration() const YamlObject &phConfig = (*root)["pipeline_handler"]; - config_.disableStartupFrameDrops = - phConfig["disable_startup_frame_drops"].get(config_.disableStartupFrameDrops); + if (phConfig.contains("disable_startup_frame_drops")) + LOG(RPI, Warning) + << "The disable_startup_frame_drops key is now deprecated, " + << "startup frames are now identified by the FrameMetadata::Status::FrameStartup flag"; config_.cameraTimeoutValue = phConfig["camera_timeout_value_ms"].get(config_.cameraTimeoutValue); diff --git a/src/libcamera/pipeline/rpi/common/pipeline_base.h b/src/libcamera/pipeline/rpi/common/pipeline_base.h index 6023f9f9d6b3..e27c4f860d1a 100644 --- a/src/libcamera/pipeline/rpi/common/pipeline_base.h +++ b/src/libcamera/pipeline/rpi/common/pipeline_base.h @@ -164,11 +164,6 @@ public: bool buffersAllocated_; struct Config { - /* - * Override any request from the IPA to drop a number of startup - * frames. - */ - bool disableStartupFrameDrops; /* * Override the camera timeout value calculated by the IPA based * on frame durations. diff --git a/src/libcamera/pipeline/rpi/pisp/data/example.yaml b/src/libcamera/pipeline/rpi/pisp/data/example.yaml index d67e654a8b9e..baf03be79bb3 100644 --- a/src/libcamera/pipeline/rpi/pisp/data/example.yaml +++ b/src/libcamera/pipeline/rpi/pisp/data/example.yaml @@ -16,11 +16,6 @@ # # "num_cfe_config_queue": 2, - # Override any request from the IPA to drop a number of startup - # frames. - # - # "disable_startup_frame_drops": false, - # Custom timeout value (in ms) for camera to use. This overrides # the value computed by the pipeline handler based on frame # durations. diff --git a/src/libcamera/pipeline/rpi/vc4/data/example.yaml b/src/libcamera/pipeline/rpi/vc4/data/example.yaml index b8e01adeaf40..27e543488d48 100644 --- a/src/libcamera/pipeline/rpi/vc4/data/example.yaml +++ b/src/libcamera/pipeline/rpi/vc4/data/example.yaml @@ -29,11 +29,6 @@ # # "min_total_unicam_buffers": 4, - # Override any request from the IPA to drop a number of startup - # frames. - # - # "disable_startup_frame_drops": false, - # Custom timeout value (in ms) for camera to use. This overrides # the value computed by the pipeline handler based on frame # durations.