From patchwork Tue Nov 30 10:51:53 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hanlin Chen X-Patchwork-Id: 14886 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 45574BDB13 for ; Tue, 30 Nov 2021 10:52:05 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 7B485605B4; Tue, 30 Nov 2021 11:52:04 +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="LnPWZg3n"; dkim-atps=neutral Received: from mail-pl1-x633.google.com (mail-pl1-x633.google.com [IPv6:2607:f8b0:4864:20::633]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 53D2860230 for ; Tue, 30 Nov 2021 11:52:03 +0100 (CET) Received: by mail-pl1-x633.google.com with SMTP id m24so14594958pls.10 for ; Tue, 30 Nov 2021 02:52:03 -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=sbjkVTpzAD+kXjaOIirSgddNGWigjb6I1iVyR369XIk=; b=LnPWZg3ndc2UXMTe0/8469cIzWnf4Hlz6OHPbTTRwZFkcx47Wlo5mNgsGmJR00wUj8 PWb4zidHGyvoRn2px+ZU3Wh/TofUGNrXZz9YOK8LPjYOUNNAJE+uPQ5YEoRIVXGl3He/ Xu8cXGWSJc+Jl5TWyxQOAfnwEo+GdNWNn04zw= 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=sbjkVTpzAD+kXjaOIirSgddNGWigjb6I1iVyR369XIk=; b=Xacot/et2vcdMIdO2K0li5qF4AdjFQyQyfiJUoVB+np45FtQEhh3/qBYwy0ifwjsdG dalEPO+6nkcuP6u+1LFA4HaxzvLnVX0JM819k7NuPD1DFK7M4rKrKFcmao6zxEQ62wcr CAkEjzCYFfJqClZ0CNxR2Ufzzkr0jf/NxUuWR8OHUZrfz8VJhQNLCEZTM3KqUOyeVKKk 4GoJMxvMeLc9IgeHKnzUPi8JXazYFOQ5eqbcdrfGeGKrZtB7w2pQW8rw6GplL1khlcsn f9fm4GTMeTz3+5+R7Os36CFMNU5JFt/IUqJPxsryWi/6Tmna/rWCTGL91QbSYmufisRf Zuyw== X-Gm-Message-State: AOAM533idcplcLlqagrMmr2BW1qpZR0PLrUSYCdK4BvxvR3LVvaFfSx9 0GBSlBLJuaPM4BXdU+MUKsyyzDo/xSXfWw== X-Google-Smtp-Source: ABdhPJzC+D5JzPHIWBDZjoqSE/49z1WIsqhBNU4RUP5BvJxvNR2bv/OcMUkWfCbD3snZGxfxnu7aQg== X-Received: by 2002:a17:902:d395:b0:141:a913:1920 with SMTP id e21-20020a170902d39500b00141a9131920mr66299236pld.81.1638269521455; Tue, 30 Nov 2021 02:52:01 -0800 (PST) Received: from localhost ([2401:fa00:1:10:1659:cd3d:a00c:fa38]) by smtp.gmail.com with UTF8SMTPSA id h186sm20020781pfg.59.2021.11.30.02.52.00 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 30 Nov 2021 02:52:01 -0800 (PST) From: Han-Lin Chen To: libcamera-devel@lists.libcamera.org Date: Tue, 30 Nov 2021 18:51:53 +0800 Message-Id: <20211130105157.203856-1-hanlinchen@chromium.org> X-Mailer: git-send-email 2.34.0.rc2.393.gf8c9666880-goog MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH v6 0/4] 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 V6 series address some comments and remove the lens mapping in the 4/4, so it can be directly adapted or rebased to Daniel's ancillary link series. Han-Lin Chen (4): 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 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/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 | 32 +---- src/libcamera/meson.build | 1 + src/libcamera/pipeline/ipu3/cio2.cpp | 1 + src/libcamera/pipeline/ipu3/cio2.h | 3 + src/libcamera/pipeline/ipu3/ipu3.cpp | 12 +- src/libcamera/v4l2_subdevice.cpp | 42 ++++++ 14 files changed, 282 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