From patchwork Tue Nov 29 13:45:34 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Naushir Patuck X-Patchwork-Id: 17917 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 94D68C3288 for ; Tue, 29 Nov 2022 13:45:52 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 4542363349; Tue, 29 Nov 2022 14:45:52 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=libcamera.org; s=mail; t=1669729552; bh=JACO+VqVW5R1p34Q/L3lAMjy/FFZ5dEY4VZvDx+rD3o=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=KmFNAhxt39GYnciueVYK+9nNfGJS2ihO3vYr8/kyv9Fmvaq60HXD4MRKuOvTnRCRf sCAfyMrrVASja9voL3OIT+8ziiRLM45Zf4hw6OUeplb5AfB7Hs7PKCXR8GYrYSC4Yl 9XI5zns7vTFZPq9ACpl0oqtBH+9VVeXy4Y1G/Vn4l/romwPJjq4NcgVlEBaI7tslSj oo0VfXsaClWtSeu/Th7MMrq+gmCahFhubTgh+sOnKmOqOxrINcr8oFDJcCYNO70Mdw qVi5aiOMypmELd5j+zGgSdBWOL3uWBwqeKYMerCMVcusd0TRbw7cC3gb2naTQFHpbr hQUTeqX6hQnyQ== Received: from mail-wm1-x332.google.com (mail-wm1-x332.google.com [IPv6:2a00:1450:4864:20::332]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 73F6363348 for ; Tue, 29 Nov 2022 14:45:45 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=pass (2048-bit key; unprotected) header.d=raspberrypi.com header.i=@raspberrypi.com header.b="sVWx2OOJ"; dkim-atps=neutral Received: by mail-wm1-x332.google.com with SMTP id o7-20020a05600c510700b003cffc0b3374so10874057wms.0 for ; Tue, 29 Nov 2022 05:45:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raspberrypi.com; s=google; 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=/HHy1+rB6cbeRgieQWT6F2/fu92XrxwPeIORdSkWXT4=; b=sVWx2OOJwtXWTcn/f7AOF80uelt1nvWJRDFStlUCiq0J0YqzdIKSBLdiZ/dT9zjJ4T I7SOQ55NpD1JhyHO0kEZ3khSOdAGUEkdF3yea6aH10Phga32gfje3Q9GJlxcYgICySNq 44H9v3URutNIZzBwFdgJSTog47MoVmtomfhfXvpfPEEKMXdHnJlRQrxyR+kwLlFzHH67 dPpyJuq29i3rwGlJE0mz9YTWgw9dS7GEzs7XvMi3M0Dq2v/ljKr9q9hvpXOWBrlzV7a8 +NL1KWKpavj3MrgCxQfzC6+g82UJosAAVbPiPbrYdiLM/Qqi/0bNWktCmFvaHuEez++3 bK4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=/HHy1+rB6cbeRgieQWT6F2/fu92XrxwPeIORdSkWXT4=; b=meUwpchpMpsP2eQHltx5GtkrPyLA7YNhue7IqXNxL3dogNT6FJjXoDp5EHjOJK1rwd NLsgYCTeOykKMwhJfSpwCfe15jKlfOb1AQj2bb1E0sIwYMt3uTRRNc0UVRLm3tSdwc+K J+zwfg0a0jJwZa1KbTF7gWP/6ciIG5Wg/iTjmesURjoxfRGj92qrhQ66aTvRbF8t7fZ+ cVEEZORVHFvWrEQzH5NR06WZ3OblysaWhwTWmBmepstZw3vgpnC+Tf+qbhPwTiFjLUf2 Waszd9zilQjzDkaywsAKejYsygkRaU8722YDfzeKhkNQTWKm7dc0Zg01hZwRf3giX2Jk kFXw== X-Gm-Message-State: ANoB5pkcKY6P5rnfyqf+LOGg19IxMGlyJf3RP68YCfBMHVB2lxg8gObP DD/rd1KKef9huZ66j9OxCK3nZDUu4okkmg== X-Google-Smtp-Source: AA0mqf587ERPJny49ftglo3xnPnvYz4XbyjTPEQUNALDLKqKwdJ3LHiZgw5SpqjmppKdrYwMLZ2hOw== X-Received: by 2002:a7b:c456:0:b0:3a5:f600:502e with SMTP id l22-20020a7bc456000000b003a5f600502emr32725081wmi.39.1669729544939; Tue, 29 Nov 2022 05:45:44 -0800 (PST) Received: from naush-laptop.localdomain ([93.93.133.154]) by smtp.gmail.com with ESMTPSA id n8-20020a05600c3b8800b003cfbbd54178sm3565636wms.2.2022.11.29.05.45.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 29 Nov 2022 05:45:44 -0800 (PST) To: libcamera-devel@lists.libcamera.org Date: Tue, 29 Nov 2022 13:45:34 +0000 Message-Id: <20221129134534.2933-11-naush@raspberrypi.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20221129134534.2933-1-naush@raspberrypi.com> References: <20221129134534.2933-1-naush@raspberrypi.com> MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH v2 10/10] pipeline: raspberrypi: Add libcamera-apps and picamera2 config file 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: , X-Patchwork-Original-From: Naushir Patuck via libcamera-devel From: Naushir Patuck Reply-To: Naushir Patuck Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" Add a platform configuration file optimised for use with the Raspberry Pi suite of libcamera-apps and the picamera2 framework. This configuration minimises the number of internal buffers allocated, with the expectation that applications will always provide buffers in request for any configured stream. Signed-off-by: Naushir Patuck Reviewed-by: David Plowman --- .../pipeline/raspberrypi/data/meson.build | 1 + .../pipeline/raspberrypi/data/rpi_apps.json | 28 +++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 src/libcamera/pipeline/raspberrypi/data/rpi_apps.json diff --git a/src/libcamera/pipeline/raspberrypi/data/meson.build b/src/libcamera/pipeline/raspberrypi/data/meson.build index 0592fc53877d..aabde57f25c6 100644 --- a/src/libcamera/pipeline/raspberrypi/data/meson.build +++ b/src/libcamera/pipeline/raspberrypi/data/meson.build @@ -3,6 +3,7 @@ conf_files = files([ 'default.json', 'minimal_mem.json', + 'rpi_apps.json', ]) install_data(conf_files, diff --git a/src/libcamera/pipeline/raspberrypi/data/rpi_apps.json b/src/libcamera/pipeline/raspberrypi/data/rpi_apps.json new file mode 100644 index 000000000000..e25301744499 --- /dev/null +++ b/src/libcamera/pipeline/raspberrypi/data/rpi_apps.json @@ -0,0 +1,28 @@ +{ + "version": 1.0, + "target": "bcm2835", + + "pipeline_handler": + { + # The minimum number of internal buffers to be allocated for Unicam. + # This value must less than or equal to min_total_unicam_buffers. + "min_unicam_buffers": 0, + + # The minimum total (internal + external) buffer count used for Unicam. + # The number of internal buffers allocated for Unicam is given by: + # internal buffer count = max(min_unicam_buffers, + # min_total_unicam_buffers - external buffer count) + "min_total_unicam_buffers": 4, + + # The number of internal buffers used for ISP Output0. + "num_output0_buffers": 0, + + # Override any request from the IPA to drop a number of startup frames. + "disable_startup_frame_drops": false, + + # Always process a pending request with the last captured sensor frame. + # Note that this might lead to avoidable frame drops during periods + # of transient heavy CPU loading. + "return_newest_frames": false + } +} \ No newline at end of file