[libcamera-devel] [PATCH v3 4/5] libcamera: properties: Provide a Devices camera property
Kieran Bingham
kieran.bingham at ideasonboard.com
Mon Jun 12 18:28:19 CEST 2023
Quoting Barnabás Pőcze (2023-06-11 22:46:06)
> Hi
>
>
> 2023. május 15., hétfő 14:45 keltezéssel, Kieran Bingham via libcamera-devel <libcamera-devel at lists.libcamera.org> írta:
>
> > Provide a new Camera property that allows pipeline handlers to list any
> > devices used to operate the device. This allows other frameworks and
> > daemons such as Pipewire to better understand the resources consumed by
> > a Camera and consider ignoring those resources when enumerating camera
> > devices on a system.
> >
> > Signed-off-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
> > Reviewed-by: Jacopo Mondi <jacopo.mondi at ideasonboard.com>
> > ---
> > src/libcamera/property_ids.yaml | 7 +++++++
> > 1 file changed, 7 insertions(+)
> >
> > diff --git a/src/libcamera/property_ids.yaml b/src/libcamera/property_ids.yaml
> > index cb55e0ed2283..6141942969f9 100644
> > --- a/src/libcamera/property_ids.yaml
> > +++ b/src/libcamera/property_ids.yaml
> > @@ -690,6 +690,13 @@ controls:
> > that is twice that of the full resolution mode. This value will be valid
> > after the configure method has returned successfully.
> >
> > + - Devices:
> > + type: int64_t
>
> I am wondering why the type is `int64_t`. POSIX only says `dev_t` is an integer type[0].
> Both glibc[1] and musl[2] define it as an unsigned (64-bit) integer (at least as far as I checked).
Indeed every implementation I can see define it as a 64-bit, but the
kernel uses only 32 bits.
This is a libcamera control limitation ultimately, as we don't have
unsigned integer controls. I'm not sure yet if adding would be helpful
or difficult. It might be worth trying out.
--
Kieran
> > + size: [n]
> > + description: |
> > + A list of integer values of type dev_t denoting major and minor device
> > + number of the underlying devices used in the operation of this camera.
> > +
> > # ----------------------------------------------------------------------------
> > # Draft properties section
> >
> > --
> > 2.34.1
>
>
> [0]: https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/sys_types.h.html#tag_13_67
> [1]: https://sourceware.org/git/?p=glibc.git;a=blob;f=bits/typesizes.h;h=5dd1700649463583c573b95cc6df8ac677316ea9;hb=HEAD#l29
> [2]: https://git.musl-libc.org/cgit/musl/tree/include/alltypes.h.in?id=718f363bc2067b6487900eddc9180c84e7739f80#n31
More information about the libcamera-devel
mailing list