[libcamera-devel] [PATCH 0/4] media: Register read-only sub-dev devnode

Jacopo Mondi jacopo at jmondi.org
Wed Mar 25 00:37:47 CET 2020


Hi Dave,

On Tue, Mar 24, 2020 at 10:25:59PM +0000, Dave Stevenson wrote:
> Hi Jacopo
>
> On Tue, 24 Mar 2020 at 20:25, Jacopo Mondi <jacopo at jmondi.org> wrote:
> >
> > Add new functio v4l2_device_register_ro_subdev_nodes() to pair with
> > v4l2_device_register_subdev_nodes() that allows a bridge driver to register the
> > device node for its subdevices in read-only mode.
> >
> > devnode-centric (aka non-MC) bridge drivers control their subdevices through
> > direct calls to v4l2 subdev operations and do not want userspace to be able
> > to control the subdevice configuration by calling ioctls on the sub-device
> > devnode. For this reason, they mostly refrain from registering any devnode at
> > all for their subdevices.
> >
> > However it is sometimes required for userspace to access the sub-dev device
> > nodes to collect information on the actual configuration, without changing
> > the one currently applied to the device.
> >
> > This requirement became pressing while working on libcamera on devnode-centric
> > platforms that do not expose any sub-device for their camera sensor to prevent
> > userspace from changing their configuration. To allow them to register device
> > node and being guaranteed to retain control of the subdevice configuration this
> > series proposes a way to register device nodes in read-only to restrict
> > access to all ioctls that could potentially affect the sub-dev configuration.
> >
> > Thanks
> >    j
> >
> > Jacopo Mondi (4):
> >   Documentation: media: Document read-only subdevice
> >   media: v4l2-dev: Add v4l2_device_register_ro_subdev_node()
> >   media: bcm2835: Register sensor devnode as read-only
> >   media: bcm2835: Fix trivial whitespace error
>
> Minor point - you've sent this to linux-media. We (Raspberry Pi)
> haven't pushed the bcm2835-unicam driver to mainline as yet (it's
> still on the to-do list).
> Yes, we need the core functionality that is in the first two patches,
> but the last two aren't going to apply to any mainline tree.

You are very right!

Only the first 2 are relevant for linux-media, I should have reported
it here.


>
>   Dave
>
> >  Documentation/media/kapi/v4l2-subdev.rst      | 38 +++++++++++++++++++
> >  .../media/uapi/v4l/vidioc-g-dv-timings.rst    |  6 +++
> >  Documentation/media/uapi/v4l/vidioc-g-std.rst |  6 +++
> >  .../media/uapi/v4l/vidioc-subdev-g-crop.rst   |  9 +++++
> >  .../media/uapi/v4l/vidioc-subdev-g-fmt.rst    |  8 ++++
> >  .../v4l/vidioc-subdev-g-frame-interval.rst    |  8 ++++
> >  .../uapi/v4l/vidioc-subdev-g-selection.rst    |  8 ++++
> >  .../media/platform/bcm2835/bcm2835-unicam.c   |  4 +-
> >  drivers/media/v4l2-core/v4l2-device.c         | 16 +++++++-
> >  drivers/media/v4l2-core/v4l2-subdev.c         | 19 ++++++++++
> >  include/media/v4l2-dev.h                      |  7 ++++
> >  include/media/v4l2-device.h                   | 10 +++++
> >  12 files changed, 136 insertions(+), 3 deletions(-)
> >
> > --
> > 2.25.1
> >
> > _______________________________________________
> > libcamera-devel mailing list
> > libcamera-devel at lists.libcamera.org
> > https://lists.libcamera.org/listinfo/libcamera-devel


More information about the libcamera-devel mailing list