From patchwork Wed May 7 07:52:11 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Naushir Patuck X-Patchwork-Id: 23345 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 501B4C3226 for ; Wed, 7 May 2025 08:28:15 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 7262168B37; Wed, 7 May 2025 10:28:12 +0200 (CEST) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=raspberrypi.com header.i=@raspberrypi.com header.b="amtIQMeV"; dkim-atps=neutral Received: from mail-wr1-x434.google.com (mail-wr1-x434.google.com [IPv6:2a00:1450:4864:20::434]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 3C91C68B31 for ; Wed, 7 May 2025 10:28:01 +0200 (CEST) Received: by mail-wr1-x434.google.com with SMTP id ffacd0b85a97d-39c2688e2bbso438510f8f.1 for ; Wed, 07 May 2025 01:28:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raspberrypi.com; s=google; t=1746606480; x=1747211280; 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=TDFSDhxsWtnuegD2eNp0so8bkMmcVepBWj9qp8gGI+4=; b=amtIQMeVvuX80CKpubGGo0fDVcTkWMDGXHPljK0ztot5vjpGY7aZ2PoiUYSvg13OfX I6oBGQ8jVDWUoGLJ8i32ml6osJKK/xlNwzGPHrvZmUW6RKdMRI460kRhtzgWgN9Sfb9D 3OvRvcER/Ib8BLffiLnpX1HNXuh1xiRe/NkwLjrbdlIEmO9z49yuytMeSKtbCjG4Y88Q 5CFxmQ+Z2kxLY91mk2ulTemKvtOS/6T4dqTfQUqpK3+PUitZQFboXMTHFBEGwMw7owwU 9cVDSr4ljKGIs4tROD0WcFnyaXpaXGLOMp5VoMXr2QI/8qLCZ8Yfs3H2gRFByp1MH02w kaMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746606480; x=1747211280; 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=TDFSDhxsWtnuegD2eNp0so8bkMmcVepBWj9qp8gGI+4=; b=X7bkpQMoyiQspYh1QU7QbBa1565mXsks6kTRAsUKFbfRPhPcqJ7BXD2NT76ysqP7WN AC50stQy/+zC5xdrrgT07cUN5k41I1MHfsGz1FwPFYvU6rD2/SQoiUzA9zJxA1G8zE2m iqVqFu80ims+oV+gDrCBrYI61fRh3zfsb6P02MlUcMn9ssn6UnEI9d99XvVcyuO7Pg/U Yoxec+bebx/qnetpKEo+kEJ0+bA4/pLDDeeb49VTgBpFG8aTsdfWpzdWhIlHkmzjAcrM 1nbwtxIP+WUUk9Tr4LixbJo0EaAerSXO8JcI47oorTj83a2QLL/SqGb1h6Lkrg6ah9E4 0IwQ== X-Gm-Message-State: AOJu0YwUMa5YlIM3mGP5E4xsgwXJgoLPnq/dmwEREVyaWw6fdhz+khoR SZXgEBYZ7AHTjDXK3MDyXBxei9N2NNsnwuzsEv06d1Ek8sLmqLLLwofi5NmeygHdAPapNduhCXj X X-Gm-Gg: ASbGncvQmAr5FWn1+VgZKSciRooAgbK3ByHphZjfAUFNW/BkncsPl8mrj1DYm8731MM x7xGM83LEfiFFDYfKur1uu4ck21XkUuQBXnwtKdxCG6bJ7EQcukU/pWGeTPrDCVEnyT1/WVxoqP 6o/3Bjvf60gCz9NMC3PDDTRoYSFso7dlXL6u95GmSdnccu+edEyLaoLrc4FhXeiU9ky62nTvrsm 2byxuqO9K7ahq3OdJlqVvlkCaIkIfxIQxKF9/A7o+v7wQYQxfydgJLhD3Tu5uCCg4aM6YIGomBj +6FMo1rahRJSpUg0QV4xFioV2qb4bprqSd4cNneM1TCDtls3gO922qq95l+K7DiuwJdix28= X-Google-Smtp-Source: AGHT+IEKiGSxB3ET0jnS5ncxHDzlHfdU4DLEQyyWAmJ9QL0a2sqoBWeIQhyfEWi6BdBy9kUwrm44mw== X-Received: by 2002:a05:6000:1acc:b0:3a0:87f6:5c7a with SMTP id ffacd0b85a97d-3a0b4a17181mr619387f8f.3.1746606479946; Wed, 07 May 2025 01:27:59 -0700 (PDT) Received: from NAUSH-P-DELL.pitowers.org ([93.93.133.154]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-441d440fff6sm22182575e9.25.2025.05.07.01.27.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 07 May 2025 01:27:59 -0700 (PDT) From: Naushir Patuck To: libcamera-devel@lists.libcamera.org Cc: Naushir Patuck Subject: [RFC PATCH 4/6] pipeline: rpi: Remove disable_startup_frame_drops config option Date: Wed, 7 May 2025 08:52:11 +0100 Message-ID: <20250507082753.2306743-5-naush@raspberrypi.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250507082753.2306743-1-naush@raspberrypi.com> References: <20250507082753.2306743-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 --- 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 21f2daf5bab5..4afdaed5935d 100644 --- a/src/libcamera/pipeline/rpi/common/pipeline_base.cpp +++ b/src/libcamera/pipeline/rpi/common/pipeline_base.cpp @@ -1077,7 +1077,6 @@ void CameraData::enumerateVideoDevices(MediaLink *link, const std::string &front int CameraData::loadPipelineConfiguration() { config_ = { - .disableStartupFrameDrops = false, .cameraTimeoutValue = 0, }; @@ -1114,8 +1113,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, " + << "please use FrameMetadata::Status::FrameStartup instead."; 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.