From patchwork Tue Feb 18 11:27:45 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jacopo Mondi X-Patchwork-Id: 2849 Return-Path: Received: from relay3-d.mail.gandi.net (relay3-d.mail.gandi.net [217.70.183.195]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 41A4A600FB for ; Tue, 18 Feb 2020 12:25:15 +0100 (CET) X-Originating-IP: 93.34.114.233 Received: from uno.lan (93-34-114-233.ip49.fastwebnet.it [93.34.114.233]) (Authenticated sender: jacopo@jmondi.org) by relay3-d.mail.gandi.net (Postfix) with ESMTPSA id D3F6160008; Tue, 18 Feb 2020 11:25:14 +0000 (UTC) From: Jacopo Mondi To: libcamera-devel@lists.libcamera.org Date: Tue, 18 Feb 2020 12:27:45 +0100 Message-Id: <20200218112752.3910410-1-jacopo@jmondi.org> X-Mailer: git-send-email 2.25.0 MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH v3 0/7] Camera sensor factory 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-List-Received-Date: Tue, 18 Feb 2020 11:25:15 -0000 Hello, third iteration of camera sensor factory support. This series introduces two new properties sets for sensor and lens. Their definitions have not changed since the last submission. It then introduces a factory for CameraSensor handler, to specialize handling of sensor to dedicated classes. I have included all comments from Laurent, but changed the proposed matching mechanism as discussed by email. It then introduces an handler for ov5670 and register sensor properties for it. Finally a patch not intended for merge to start discussing where information on the lens installed on the camera module should be recorded. The patch is based on the recently merged camera properties definition and require out-of-tree compound contol supports, it is not mergeable as it is then. Tested with VIMC "Sensor B" and on Soraka with ov5670 sensor. Thanks j Jacopo Mondi (7): libcamera: properties: Define pixel array properties libcamera: properties: Define 'lens' properties libcamera: camera_sensor: Introduce CameraSensorFactory libcamera: sensor: Add OV5670 camera sensor libcamera: camera_sensor: Break out properties initialization libcamera: sensor: ov5670: Register pixel array properties DNI: libcamera: sensor: ov5670: Add lens properties src/libcamera/camera_sensor.cpp | 248 ++++++++++++++---- src/libcamera/include/camera_sensor.h | 37 ++- src/libcamera/meson.build | 1 + src/libcamera/pipeline/ipu3/ipu3.cpp | 9 +- src/libcamera/pipeline/rkisp1/rkisp1.cpp | 17 +- src/libcamera/pipeline/vimc.cpp | 6 +- src/libcamera/property_ids.yaml | 211 +++++++++++++++ src/libcamera/sensor/meson.build | 3 + src/libcamera/sensor/ov5670.cpp | 93 +++++++ test/camera-sensor.cpp | 9 +- .../v4l2_videodevice_test.cpp | 3 +- test/v4l2_videodevice/v4l2_videodevice_test.h | 6 +- 12 files changed, 564 insertions(+), 79 deletions(-) create mode 100644 src/libcamera/sensor/meson.build create mode 100644 src/libcamera/sensor/ov5670.cpp --- 2.25.0