From patchwork Thu Dec 2 14:03:12 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hanlin Chen X-Patchwork-Id: 14988 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 2E2C4BF415 for ; Thu, 2 Dec 2021 14:03:26 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 77AE160592; Thu, 2 Dec 2021 15:03:25 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=chromium.org header.i=@chromium.org header.b="mFhVQh82"; dkim-atps=neutral Received: from mail-pj1-x1036.google.com (mail-pj1-x1036.google.com [IPv6:2607:f8b0:4864:20::1036]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 478266011A for ; Thu, 2 Dec 2021 15:03:24 +0100 (CET) Received: by mail-pj1-x1036.google.com with SMTP id np6-20020a17090b4c4600b001a90b011e06so4737557pjb.5 for ; Thu, 02 Dec 2021 06:03:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=Z++YujV9IW5lTrc0mN6/Qe1V9kx4V6e4Hi5aD4ftwzA=; b=mFhVQh82ldqYGl6cft+rsL5XPlLA51EUOum4KS2bNF9yQlx7HgoqA5ECx+Twek9BUE DaX7YSwiui3ABVhB6EYAuvRX8FeY2VzhxV9UQempEmPYLIX1rmbElUcN1Ga71EoN/feV q2exBJptXDrqUDHailssOFDZpZAQGe/2DVZR4= 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=Z++YujV9IW5lTrc0mN6/Qe1V9kx4V6e4Hi5aD4ftwzA=; b=aq9T4F0u9hlbNOdKUu6cjLS8wKyyNZ1PSU8eSVdEPkn/UPesYAoyanRpBJMfjgSBNR mjbaetsxXy6spSfVqHi4VnmqP1XvrS+RsMfpPodOWjh0ux9Y1L3buCN355QDVy7lcYqX pmPBkA2gRzGcftQh7UhVN7HVmOIPp8VcnwTr7uDj0eNGT+urLFsgxk2kOieXPuhnKpOA Fmwc48CtvtwPUymSlQsG6VqdT9cdPE7nqLspczvOlba8CQohN6L9Rom4jxKYVldjQSAB 0faF4MfTQcaxxet4pbXNVoQfHY96Tfq5lx+os7w4pViLtPfG/Cq2KU1LKxbTkhdP/G1I qEbw== X-Gm-Message-State: AOAM531waz9myOIOBWd34irdcfGDZmVuyLCCfIDB5tqO+tIX4yorm5BT HMZ3UXTTgu+Fwe7v4bwQ/0OiBlAwoNWx0A== X-Google-Smtp-Source: ABdhPJwIrgIuh5h7E3g48BiB+vInQvUddHpFONMeoTv1oOi/pMuCKtv2KhZXE2JnBN9aHpdmbBMMVg== X-Received: by 2002:a17:90b:2249:: with SMTP id hk9mr6063720pjb.245.1638453802337; Thu, 02 Dec 2021 06:03:22 -0800 (PST) Received: from localhost ([2401:fa00:1:10:9029:d68:4045:e723]) by smtp.gmail.com with UTF8SMTPSA id q18sm3413898pfn.83.2021.12.02.06.03.20 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 02 Dec 2021 06:03:21 -0800 (PST) From: Han-Lin Chen To: libcamera-devel@lists.libcamera.org Date: Thu, 2 Dec 2021 22:03:12 +0800 Message-Id: <20211202140317.3118364-1-hanlinchen@chromium.org> X-Mailer: git-send-email 2.34.1.400.ga245620fadb-goog MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH v7 0/5] Introduce Lens class and apply auto focus on ipu3 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" Hello, The V7, add one more patch 4/5 to move the CameraLens from cio2 to the CameraSensor. Han-Lin Chen (5): ipa: ipu3: Extend ipu3 ipa interface for lens controls libcamera: add model() for retriving model name in V4L2Subdevice libcamera: camera_lens: Add a new class to model a camera lens libcamera: camera_lens: add CameraLens as a member of CameraSensor ipu3: ipa: Allow IPA to apply controls to the lens device Documentation/index.rst | 1 + Documentation/lens_driver_requirements.rst | 27 ++++ Documentation/meson.build | 1 + include/libcamera/internal/camera_lens.h | 45 +++++++ include/libcamera/internal/camera_sensor.h | 5 + include/libcamera/internal/meson.build | 1 + include/libcamera/internal/v4l2_subdevice.h | 4 + include/libcamera/ipa/ipu3.mojom | 2 + src/libcamera/camera_lens.cpp | 142 ++++++++++++++++++++ src/libcamera/camera_sensor.cpp | 40 ++---- src/libcamera/meson.build | 1 + src/libcamera/pipeline/ipu3/ipu3.cpp | 13 +- src/libcamera/v4l2_subdevice.cpp | 42 ++++++ 13 files changed, 292 insertions(+), 32 deletions(-) create mode 100644 Documentation/lens_driver_requirements.rst create mode 100644 include/libcamera/internal/camera_lens.h create mode 100644 src/libcamera/camera_lens.cpp