From patchwork Fri Nov 19 11:09:53 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Naushir Patuck X-Patchwork-Id: 14646 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 14326BDB13 for ; Fri, 19 Nov 2021 11:10:15 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 5E4776037A; Fri, 19 Nov 2021 12:10:14 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=raspberrypi.com header.i=@raspberrypi.com header.b="dNECUEKT"; dkim-atps=neutral Received: from mail-wr1-x42e.google.com (mail-wr1-x42e.google.com [IPv6:2a00:1450:4864:20::42e]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 43409600B5 for ; Fri, 19 Nov 2021 12:10:11 +0100 (CET) Received: by mail-wr1-x42e.google.com with SMTP id n29so17455732wra.11 for ; Fri, 19 Nov 2021 03:10:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=raspberrypi.com; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=JSnUEG9AqNj3Cw1dNOiZSq5GWEtcZ8uIXXmDrXNrGwI=; b=dNECUEKTVl1hRzO2XCey2NORUcvQJEobPK/Y2R5WisgfhyVTSmeti+J0Z9Asf+mi0p vNbWNd6Z3OTwTPTfgf/i+qxct/pQrUTPFEsnAMeeYxuP5bg0ryI0YSTVzeMyzUdqJSGb C1R2gQykmyu/HImeTbq//Dcg2ebejPyZiQgcqP7SKjitM1la2K08mJeW6WfIG4lFFBpr SeSJDg75R2QhjVAlzbmPH1DdXhKzoHHs3vKsRMb5dL0/8RDv/DWEC47oNMKED1T3RzUT L8sps+LqaV4bKQ06jTxKAWiEVuk00lETJmdrt+UDmLkhmLW4w2A+sPtKXPA+4AbxpCWf +Vxg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=JSnUEG9AqNj3Cw1dNOiZSq5GWEtcZ8uIXXmDrXNrGwI=; b=g4xESAa4Hq6LYyZVOpJtbEqkH+oEVVg8GdnbUPAk8ULHwI1/y/CcnZ0wXdJyu/03be nvhWQ0q9R1IFPvc2c0lvnhmlEUhQW7Uyk3EyAhuKz2Srd9NzY448lmt99s/ZoaPpyjJj mihrNDqGCglh5vDj4vNuqj2h22o9VmvNJk2q0IMKPl5cYovFASpYr9Erh5DTwG4Xh3WO BhXIXSVozOmKtQbKzdn/J88kRF2UxKxweR0kRYmnvfYAE/ilzWrknyktuO3TqTKjeTFP XK4dE16wPNzsfma67ad6CkHoGU0QGJBGujKZiuoCpadLDrjzWuMLPrN3eB6Ae2TSdd5f pQNA== X-Gm-Message-State: AOAM532x8lczhJe0LFFI1Y2cWmxmI5ElkXjN6Vm9a1oIvGwFAgm+QBDZ LSap5EN5xrmY7443DEQzX0xxcBjVpluYIaWw X-Google-Smtp-Source: ABdhPJyxZgIkDFLa8CO6oPm4/Q5JXCbwVdXF88nbkHSEOWJmADbbiUThyUKrXlgLymzTJSbMkZYsBA== X-Received: by 2002:a05:6000:52:: with SMTP id k18mr6147120wrx.192.1637320210405; Fri, 19 Nov 2021 03:10:10 -0800 (PST) Received: from naush-laptop.pitowers.org ([2a00:1098:3142:14:bad1:6339:b276:e376]) by smtp.gmail.com with ESMTPSA id o5sm2596486wrx.83.2021.11.19.03.10.02 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 19 Nov 2021 03:10:07 -0800 (PST) From: Naushir Patuck To: libcamera-devel@lists.libcamera.org Date: Fri, 19 Nov 2021 11:09:53 +0000 Message-Id: <20211119110955.3137585-1-naush@raspberrypi.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH 1/3] pipeline: raspberrypi: Split out device enumeration and camera registration 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" Split out PipelineHandlerRPi::match() so that media device enumeration and acquisition is separated from camera registration. The former logic remains in PipelineHandlerRPi::match(), whereas the latter logic is moved into a new PipelineHandlerRPi::registerCameras() member function. Signed-off-by: Naushir Patuck Reviewed-by: Laurent Pinchart --- src/libcamera/pipeline/raspberrypi/raspberrypi.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp index 4f6c699a4379..9aa7e9eef5e7 100644 --- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp +++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp @@ -311,6 +311,7 @@ private: return static_cast(camera->_d()); } + bool registerCameras(); int queueAllBuffers(Camera *camera); int prepareBuffers(Camera *camera); void freeBuffers(Camera *camera); @@ -1010,6 +1011,11 @@ bool PipelineHandlerRPi::match(DeviceEnumerator *enumerator) if (!isp_) return false; + return registerCameras(); +} + +bool PipelineHandlerRPi::registerCameras() +{ std::unique_ptr data = std::make_unique(this); if (!data->dmaHeap_.isValid()) return false;