[libcamera-devel] [PATCH v7 0/9] libcamera: Generate unique and stable camera IDs
Niklas Söderlund
niklas.soderlund at ragnatech.se
Wed Aug 5 12:39:21 CEST 2020
Hi Laurent,
Thanks for your feedback.
On 2020-08-04 22:47:12 +0300, Laurent Pinchart wrote:
> Hi Niklas,
>
> Thank you for the patches.
>
> On Tue, Aug 04, 2020 at 06:13:49PM +0200, Niklas Söderlund wrote:
> > Hello,
> >
> > This series aims to make and enforce unique camera names that are static
> > between system resets. This version is a complete rewrite of previous
> > versions and centers around on firmware descriptions. Biggest chance in
> > this version is that the UVC ides are reworked from scratch.
> >
> > Before this series camera names on different systems looked like this (I
> > do not have access to a simple pipeline device):
> >
> > - ipu3
> > ov13858 8-0010
> > ov5670 10-0036
> > - raspberrypi
> > imx219
> > - rkisp1
> > ov5695 7-0036
> > ov2685 7-003c
> > - uvcvideo
> > Venus USB2.0 Camera: Venus USB2
> > Logitech Webcam C930e
> > - vimc
> > VIMC Sensor B
> >
> > With this series applied camera names on the same systems:
> >
> > - ipu3
> > \_SB_.PCI0.I2C2.CAM0
> > \_SB_.PCI0.I2C4.CAM1
> > - raspberrypi
> > base/soc/i2c0mux/i2c at 1/imx219 at 10
> > - rkisp1
> > base/i2c at ff160000/camera at 36
> > base/i2c at ff160000/camera at 3c
> > - uvcvideo
> > \_SB_.PCI0.RP05.PXSX-2.1.1:1.0-0ac8:3420
> > \_SB_.PCI0.RP05.PXSX-2.4:1.0-046d:0843
> > - vimc
> > platform:vimc Sensor B
>
> That's really nice :-)
>
> I've tested the patches with the simple pipeline handler:
>
> - Before: imx296 2-0036
> - After: base/soc/bus at 30800000/i2c at 30a40000/camera at 36
This for this report, I'm happy it works for other hardware then the one
I'm able to test on ;-)
>
> > Niklas Söderlund (9):
> > libcamera: sysfs: Add new namespace to interact with sysfs
> > libcamera: sysfs: Add method to lookup firmware ID
> > libcamera: v4l2_device: Add method to lookup device path
> > libcamera: camera_sensor: Generate a sensor ID
> > libcamera: camera_sensor: Add accessors for sensor ID
> > libcamera: pipelines: Use sensor ID as camera name
> > libcamera: pipeline: uvcvideo: Generate unique camera names
> > libcamera: camera: Rename name() to id()
> > libcamera: camera_manager: Enforce unique camera IDs
> >
> > include/libcamera/camera.h | 6 +-
> > include/libcamera/internal/camera_sensor.h | 4 +
> > include/libcamera/internal/meson.build | 1 +
> > include/libcamera/internal/sysfs.h | 24 ++++
> > include/libcamera/internal/v4l2_device.h | 1 +
> > src/android/camera_device.cpp | 4 +-
> > src/cam/main.cpp | 8 +-
> > src/gstreamer/gstlibcameraprovider.cpp | 4 +-
> > src/gstreamer/gstlibcamerasrc.cpp | 6 +-
> > src/libcamera/camera.cpp | 40 ++++---
> > src/libcamera/camera_controls.cpp | 2 +-
> > src/libcamera/camera_manager.cpp | 20 ++--
> > src/libcamera/camera_sensor.cpp | 48 ++++++++
> > src/libcamera/framebuffer_allocator.cpp | 2 +-
> > src/libcamera/meson.build | 1 +
> > src/libcamera/pipeline/ipu3/ipu3.cpp | 12 +-
> > .../pipeline/raspberrypi/raspberrypi.cpp | 7 +-
> > src/libcamera/pipeline/rkisp1/rkisp1.cpp | 16 +--
> > src/libcamera/pipeline/simple/simple.cpp | 2 +-
> > src/libcamera/pipeline/uvcvideo/uvcvideo.cpp | 77 ++++++++++++-
> > src/libcamera/pipeline/vimc/vimc.cpp | 4 +-
> > src/libcamera/sysfs.cpp | 105 ++++++++++++++++++
> > src/libcamera/v4l2_device.cpp | 28 +++++
> > src/qcam/dng_writer.cpp | 4 +-
> > src/qcam/main_window.cpp | 18 +--
> > src/v4l2/v4l2_camera_proxy.cpp | 2 +-
> > test/camera/buffer_import.cpp | 2 +-
> > test/camera/capture.cpp | 2 +-
> > test/camera/configuration_default.cpp | 2 +-
> > test/camera/configuration_set.cpp | 2 +-
> > test/camera/statemachine.cpp | 2 +-
> > test/controls/control_info_map.cpp | 2 +-
> > test/controls/control_list.cpp | 2 +-
> > test/pipeline/ipu3/ipu3_pipeline_test.cpp | 2 +-
> > test/pipeline/rkisp1/rkisp1_pipeline_test.cpp | 2 +-
> > test/serialization/serialization_test.h | 2 +-
> > 36 files changed, 381 insertions(+), 85 deletions(-)
> > create mode 100644 include/libcamera/internal/sysfs.h
> > create mode 100644 src/libcamera/sysfs.cpp
> >
>
> --
> Regards,
>
> Laurent Pinchart
--
Regards,
Niklas Söderlund
More information about the libcamera-devel
mailing list