All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCHv3 0/4] Add /sys media_dev attr for V4L/DVB devices
@ 2021-02-02 14:49 Hans Verkuil
  2021-02-02 14:49 ` [PATCHv3 1/4] vim2m: intialize the media device earlier Hans Verkuil
                   ` (4 more replies)
  0 siblings, 5 replies; 7+ messages in thread
From: Hans Verkuil @ 2021-02-02 14:49 UTC (permalink / raw)
  To: linux-media; +Cc: Laurent Pinchart, Sakari Ailus

A long standing issue is how to find the associated media device for
a V4L or DVB device node. This is primarily useful for applications
like v4l2-ctl and v4l2-compliance.

Until recently these applications relied on /sys and the fact that
the media device was accessible in /sys via:

/sys/class/video4linux/videoX/device/mediaY/

But commit ee494cf377e1 ("media: v4l2-device: Link subdevices to their
parent devices if available") broke that scheme for subdevices. That
scheme was rather a hack anyway.

Attempts to report the major/minor number of the media device via the
public API (i.e. by extending VIDIOC_QUERYCAP or VIDIOC_SUBDEV_QUERYCAP)
failed, so this patch series now just adds a media_dev attribute when a
V4L or DVB device node is created. This attribute contains the major:minor
of the media device. It is only created if the device node is actually
associated with a media controller.

The original idea for this v3 was to store the media device minor/major
at the time of the device node registration, however the media device
node is typically created last, so this information isn't known yet.

Instead a new media_device_devt() function was added that returns the
dev_t of the media device node safely.

In addition a patch was added for vim2m to ensure that the v4l2_dev.mdev
is set before video_register_device() to ensure that the media_dev
attribute is created.

This issue was reported by Sebastian Frick:

https://lore.kernel.org/linux-media/20210120183054.5ltnjdtrmumplevt@basti-TUXEDO-Book-XA1510/T/#t

Regards,

        Hans

Changes since v2: add new media_device_devt function.
        Add vim2m patch: v4l2_dev.mdev was set too late.

Changes since v1: use the is_visible callback to ensure the attribute
        is only shown if mdev is non-NULL.

Hans Verkuil (4):
  vim2m: intialize the media device earlier
  media-device: add media_device_devt function
  v4l2-dev: add /sys media_dev attr for V4L2 devices
  dvbdev: add /sys media_dev attr for DVB devices

 drivers/media/dvb-core/dvbdev.c    | 45 +++++++++++++++++++++++++++
 drivers/media/mc/mc-device.c       | 16 ++++++++++
 drivers/media/test-drivers/vim2m.c | 14 +++++----
 drivers/media/v4l2-core/v4l2-dev.c | 49 +++++++++++++++++++++++++++++-
 include/media/media-device.h       | 10 ++++++
 5 files changed, 127 insertions(+), 7 deletions(-)

-- 
2.29.2


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCHv3 1/4] vim2m: intialize the media device earlier
  2021-02-02 14:49 [PATCHv3 0/4] Add /sys media_dev attr for V4L/DVB devices Hans Verkuil
@ 2021-02-02 14:49 ` Hans Verkuil
  2021-02-02 14:49 ` [PATCHv3 2/4] media-device: add media_device_devt function Hans Verkuil
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: Hans Verkuil @ 2021-02-02 14:49 UTC (permalink / raw)
  To: linux-media; +Cc: Laurent Pinchart, Sakari Ailus, Hans Verkuil

Before the video device node is registered, the v4l2_dev.mdev
pointer must be set in order to correctly associate the video
device with the media device. Move the initialization of the
media device up.

Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
---
 drivers/media/test-drivers/vim2m.c | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/drivers/media/test-drivers/vim2m.c b/drivers/media/test-drivers/vim2m.c
index 331a9053a0ed..a24624353f9e 100644
--- a/drivers/media/test-drivers/vim2m.c
+++ b/drivers/media/test-drivers/vim2m.c
@@ -1339,12 +1339,6 @@ static int vim2m_probe(struct platform_device *pdev)
 		goto error_dev;
 	}
 
-	ret = video_register_device(vfd, VFL_TYPE_VIDEO, 0);
-	if (ret) {
-		v4l2_err(&dev->v4l2_dev, "Failed to register video device\n");
-		goto error_m2m;
-	}
-
 #ifdef CONFIG_MEDIA_CONTROLLER
 	dev->mdev.dev = &pdev->dev;
 	strscpy(dev->mdev.model, "vim2m", sizeof(dev->mdev.model));
@@ -1353,7 +1347,15 @@ static int vim2m_probe(struct platform_device *pdev)
 	media_device_init(&dev->mdev);
 	dev->mdev.ops = &m2m_media_ops;
 	dev->v4l2_dev.mdev = &dev->mdev;
+#endif
 
+	ret = video_register_device(vfd, VFL_TYPE_VIDEO, 0);
+	if (ret) {
+		v4l2_err(&dev->v4l2_dev, "Failed to register video device\n");
+		goto error_m2m;
+	}
+
+#ifdef CONFIG_MEDIA_CONTROLLER
 	ret = v4l2_m2m_register_media_controller(dev->m2m_dev, vfd,
 						 MEDIA_ENT_F_PROC_VIDEO_SCALER);
 	if (ret) {
-- 
2.29.2


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCHv3 2/4] media-device: add media_device_devt function
  2021-02-02 14:49 [PATCHv3 0/4] Add /sys media_dev attr for V4L/DVB devices Hans Verkuil
  2021-02-02 14:49 ` [PATCHv3 1/4] vim2m: intialize the media device earlier Hans Verkuil
@ 2021-02-02 14:49 ` Hans Verkuil
  2021-02-02 14:49 ` [PATCHv3 3/4] v4l2-dev: add /sys media_dev attr for V4L2 devices Hans Verkuil
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 7+ messages in thread
From: Hans Verkuil @ 2021-02-02 14:49 UTC (permalink / raw)
  To: linux-media; +Cc: Laurent Pinchart, Sakari Ailus, Hans Verkuil

Add a helper function for use by the DVB and V4L2 core frameworks
that safely returns the major and minor numbers of the media
device node, or 0 if the device node is not registered.

Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
---
 drivers/media/mc/mc-device.c | 16 ++++++++++++++++
 include/media/media-device.h | 10 ++++++++++
 2 files changed, 26 insertions(+)

diff --git a/drivers/media/mc/mc-device.c b/drivers/media/mc/mc-device.c
index 9e56d2ad6b94..2207f1b01456 100644
--- a/drivers/media/mc/mc-device.c
+++ b/drivers/media/mc/mc-device.c
@@ -850,6 +850,22 @@ void media_device_unregister(struct media_device *mdev)
 }
 EXPORT_SYMBOL_GPL(media_device_unregister);
 
+dev_t media_device_devt(struct media_device *mdev)
+{
+	dev_t devt = 0;
+
+	if (!mdev)
+		return 0;
+
+	mutex_lock(&mdev->graph_mutex);
+	/* Check if mdev is registered */
+	if (media_devnode_is_registered(mdev->devnode))
+		devt = mdev->devnode->dev.devt;
+	mutex_unlock(&mdev->graph_mutex);
+	return devt;
+}
+EXPORT_SYMBOL_GPL(media_device_devt);
+
 #if IS_ENABLED(CONFIG_PCI)
 void media_device_pci_init(struct media_device *mdev,
 			   struct pci_dev *pci_dev,
diff --git a/include/media/media-device.h b/include/media/media-device.h
index 1345e6da688a..af089b1c55ef 100644
--- a/include/media/media-device.h
+++ b/include/media/media-device.h
@@ -300,6 +300,16 @@ int __must_check __media_device_register(struct media_device *mdev,
  */
 void media_device_unregister(struct media_device *mdev);
 
+/**
+ * media_device_devt() - return media device major/minor numbers
+ *
+ * @mdev:	pointer to struct &media_device
+ *
+ * Returns 0 if the media device node is not registered, otherwise
+ * it will return the major/minor number of the media device node.
+ */
+dev_t media_device_devt(struct media_device *mdev);
+
 /**
  * media_device_register_entity() - registers a media entity inside a
  *	previously registered media device.
-- 
2.29.2


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCHv3 3/4] v4l2-dev: add /sys media_dev attr for V4L2 devices
  2021-02-02 14:49 [PATCHv3 0/4] Add /sys media_dev attr for V4L/DVB devices Hans Verkuil
  2021-02-02 14:49 ` [PATCHv3 1/4] vim2m: intialize the media device earlier Hans Verkuil
  2021-02-02 14:49 ` [PATCHv3 2/4] media-device: add media_device_devt function Hans Verkuil
@ 2021-02-02 14:49 ` Hans Verkuil
  2021-02-02 14:49 ` [PATCHv3 4/4] dvbdev: add /sys media_dev attr for DVB devices Hans Verkuil
  2021-02-03  5:25 ` [PATCHv3 0/4] Add /sys media_dev attr for V4L/DVB devices Sebastian Fricke
  4 siblings, 0 replies; 7+ messages in thread
From: Hans Verkuil @ 2021-02-02 14:49 UTC (permalink / raw)
  To: linux-media; +Cc: Laurent Pinchart, Sakari Ailus, Hans Verkuil

For each V4L2 device node create a media_dev attribute in /sys
which contains the media device major and minor number.

It is not created if the CONFIG_MEDIA_CONTROLLER is not
defined or if there is no associated media device.

This makes it possible for applications like v4l2-compliance
to find the associated media controller of a V4L2 device node.

Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
---
 drivers/media/v4l2-core/v4l2-dev.c | 49 +++++++++++++++++++++++++++++-
 1 file changed, 48 insertions(+), 1 deletion(-)

diff --git a/drivers/media/v4l2-core/v4l2-dev.c b/drivers/media/v4l2-core/v4l2-dev.c
index b6a72d297775..7a38176259ad 100644
--- a/drivers/media/v4l2-core/v4l2-dev.c
+++ b/drivers/media/v4l2-core/v4l2-dev.c
@@ -87,13 +87,60 @@ static ssize_t name_show(struct device *cd,
 }
 static DEVICE_ATTR_RO(name);
 
+#if defined(CONFIG_MEDIA_CONTROLLER)
+static ssize_t media_dev_show(struct device *cd,
+			      struct device_attribute *attr, char *buf)
+{
+	struct video_device *vdev = to_video_device(cd);
+	struct v4l2_device *v4l2_dev = vdev->v4l2_dev;
+	dev_t devt = 0;
+
+	buf[0] = '\0';
+	if (v4l2_dev)
+		devt = media_device_devt(v4l2_dev->mdev);
+	if (!devt)
+		return 0;
+	return sprintf(buf, "%u:%u\n", MAJOR(devt), MINOR(devt));
+}
+
+static DEVICE_ATTR_RO(media_dev);
+#endif
+
+static umode_t video_device_attr_is_visible(struct kobject *kobj,
+					    struct attribute *attr, int n)
+{
+	struct video_device *vdev = to_video_device(kobj_to_dev(kobj));
+
+#if defined(CONFIG_MEDIA_CONTROLLER)
+	if (attr == &dev_attr_media_dev.attr) {
+		struct v4l2_device *v4l2_dev = vdev->v4l2_dev;
+
+		if (!v4l2_dev->mdev)
+			return 0;
+	}
+#endif
+	return attr->mode;
+}
+
 static struct attribute *video_device_attrs[] = {
 	&dev_attr_name.attr,
 	&dev_attr_dev_debug.attr,
 	&dev_attr_index.attr,
+#if defined(CONFIG_MEDIA_CONTROLLER)
+	&dev_attr_media_dev.attr,
+#endif
 	NULL,
 };
-ATTRIBUTE_GROUPS(video_device);
+
+static const struct attribute_group video_device_group = {
+	.is_visible = video_device_attr_is_visible,
+	.attrs = video_device_attrs,
+};
+
+static const struct attribute_group *video_device_groups[] = {
+	&video_device_group,
+	NULL
+};
 
 /*
  *	Active devices
-- 
2.29.2


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCHv3 4/4] dvbdev: add /sys media_dev attr for DVB devices
  2021-02-02 14:49 [PATCHv3 0/4] Add /sys media_dev attr for V4L/DVB devices Hans Verkuil
                   ` (2 preceding siblings ...)
  2021-02-02 14:49 ` [PATCHv3 3/4] v4l2-dev: add /sys media_dev attr for V4L2 devices Hans Verkuil
@ 2021-02-02 14:49 ` Hans Verkuil
  2021-02-03  5:25 ` [PATCHv3 0/4] Add /sys media_dev attr for V4L/DVB devices Sebastian Fricke
  4 siblings, 0 replies; 7+ messages in thread
From: Hans Verkuil @ 2021-02-02 14:49 UTC (permalink / raw)
  To: linux-media; +Cc: Laurent Pinchart, Sakari Ailus, Hans Verkuil

For each DVB device node create a media_dev attribute in /sys
which contains the media device major and minor number.

It is not created if the CONFIG_MEDIA_CONTROLLER_DVB is not
defined or if there is no associated media device.

This makes it possible for applications like v4l2-compliance
to find the associated media controller of a DVB device.

Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
---
 drivers/media/dvb-core/dvbdev.c | 45 +++++++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

diff --git a/drivers/media/dvb-core/dvbdev.c b/drivers/media/dvb-core/dvbdev.c
index 5ff7bedee247..db8bddcc5780 100644
--- a/drivers/media/dvb-core/dvbdev.c
+++ b/drivers/media/dvb-core/dvbdev.c
@@ -452,6 +452,48 @@ static int dvb_register_media_device(struct dvb_device *dvbdev,
 	return 0;
 }
 
+#if defined(CONFIG_MEDIA_CONTROLLER_DVB)
+static ssize_t media_dev_show(struct device *cd,
+			      struct device_attribute *attr, char *buf)
+{
+	struct dvb_device *dvbdev = dev_get_drvdata(cd);
+	dev_t devt = media_device_devt(dvbdev->adapter->mdev);
+
+	buf[0] = '\0';
+	if (!devt)
+		return 0;
+	return sprintf(buf, "%u:%u\n", MAJOR(devt), MINOR(devt));
+}
+static DEVICE_ATTR_RO(media_dev);
+
+static umode_t dvb_device_attr_is_visible(struct kobject *kobj,
+					  struct attribute *attr, int n)
+{
+	struct dvb_device *dvbdev = dev_get_drvdata(kobj_to_dev(kobj));
+
+	if (attr == &dev_attr_media_dev.attr) {
+		if (!dvbdev->adapter->mdev)
+			return 0;
+	}
+	return attr->mode;
+}
+
+static struct attribute *dvb_device_attrs[] = {
+	&dev_attr_media_dev.attr,
+	NULL,
+};
+
+static const struct attribute_group dvb_device_group = {
+	.is_visible = dvb_device_attr_is_visible,
+	.attrs = dvb_device_attrs,
+};
+
+static const struct attribute_group *dvb_device_groups[] = {
+	&dvb_device_group,
+	NULL
+};
+#endif
+
 int dvb_register_device(struct dvb_adapter *adap, struct dvb_device **pdvbdev,
 			const struct dvb_device *template, void *priv,
 			enum dvb_device_type type, int demux_sink_pads)
@@ -1056,6 +1098,9 @@ static int __init init_dvbdev(void)
 	}
 	dvb_class->dev_uevent = dvb_uevent;
 	dvb_class->devnode = dvb_devnode;
+#if defined(CONFIG_MEDIA_CONTROLLER_DVB)
+	dvb_class->dev_groups = dvb_device_groups;
+#endif
 	return 0;
 
 error:
-- 
2.29.2


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCHv3 0/4] Add /sys media_dev attr for V4L/DVB devices
  2021-02-02 14:49 [PATCHv3 0/4] Add /sys media_dev attr for V4L/DVB devices Hans Verkuil
                   ` (3 preceding siblings ...)
  2021-02-02 14:49 ` [PATCHv3 4/4] dvbdev: add /sys media_dev attr for DVB devices Hans Verkuil
@ 2021-02-03  5:25 ` Sebastian Fricke
  2021-02-03  7:59   ` Hans Verkuil
  4 siblings, 1 reply; 7+ messages in thread
From: Sebastian Fricke @ 2021-02-03  5:25 UTC (permalink / raw)
  To: Hans Verkuil; +Cc: linux-media, Laurent Pinchart, Sakari Ailus

Hey Hans,

I have tested your patch with the same routine, that we've discussed in
the previous mail series. Here are the results:
https://paste.debian.net/1183755/

You probably still have to adjust the compliance tool, right?

Here is how the media_dev node looks like for me:
```
basti@nanopct4:~$ cat /sys/class/video4linux/v4l-subdev3/media_dev
240:0
# corresponds to:
basti@nanopct4:~$ ls -l /dev/
...
crw-rw---- 1 root video   240,   0 Feb  3 06:10 media0
...
# leads to:
basti@nanopct4:~$ cat /sys/dev/char/240:0/model
rkisp1
```

Greetings and thank you,
Sebastian

On 02.02.2021 15:49, Hans Verkuil wrote:
>A long standing issue is how to find the associated media device for
>a V4L or DVB device node. This is primarily useful for applications
>like v4l2-ctl and v4l2-compliance.
>
>Until recently these applications relied on /sys and the fact that
>the media device was accessible in /sys via:
>
>/sys/class/video4linux/videoX/device/mediaY/
>
>But commit ee494cf377e1 ("media: v4l2-device: Link subdevices to their
>parent devices if available") broke that scheme for subdevices. That
>scheme was rather a hack anyway.
>
>Attempts to report the major/minor number of the media device via the
>public API (i.e. by extending VIDIOC_QUERYCAP or VIDIOC_SUBDEV_QUERYCAP)
>failed, so this patch series now just adds a media_dev attribute when a
>V4L or DVB device node is created. This attribute contains the major:minor
>of the media device. It is only created if the device node is actually
>associated with a media controller.
>
>The original idea for this v3 was to store the media device minor/major
>at the time of the device node registration, however the media device
>node is typically created last, so this information isn't known yet.
>
>Instead a new media_device_devt() function was added that returns the
>dev_t of the media device node safely.
>
>In addition a patch was added for vim2m to ensure that the v4l2_dev.mdev
>is set before video_register_device() to ensure that the media_dev
>attribute is created.
>
>This issue was reported by Sebastian Frick:
>
>https://lore.kernel.org/linux-media/20210120183054.5ltnjdtrmumplevt@basti-TUXEDO-Book-XA1510/T/#t
>
>Regards,
>
>        Hans
>
>Changes since v2: add new media_device_devt function.
>        Add vim2m patch: v4l2_dev.mdev was set too late.
>
>Changes since v1: use the is_visible callback to ensure the attribute
>        is only shown if mdev is non-NULL.
>
>Hans Verkuil (4):
>  vim2m: intialize the media device earlier
>  media-device: add media_device_devt function
>  v4l2-dev: add /sys media_dev attr for V4L2 devices
>  dvbdev: add /sys media_dev attr for DVB devices
>
> drivers/media/dvb-core/dvbdev.c    | 45 +++++++++++++++++++++++++++
> drivers/media/mc/mc-device.c       | 16 ++++++++++
> drivers/media/test-drivers/vim2m.c | 14 +++++----
> drivers/media/v4l2-core/v4l2-dev.c | 49 +++++++++++++++++++++++++++++-
> include/media/media-device.h       | 10 ++++++
> 5 files changed, 127 insertions(+), 7 deletions(-)
>
>-- 
>2.29.2
>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCHv3 0/4] Add /sys media_dev attr for V4L/DVB devices
  2021-02-03  5:25 ` [PATCHv3 0/4] Add /sys media_dev attr for V4L/DVB devices Sebastian Fricke
@ 2021-02-03  7:59   ` Hans Verkuil
  0 siblings, 0 replies; 7+ messages in thread
From: Hans Verkuil @ 2021-02-03  7:59 UTC (permalink / raw)
  To: Sebastian Fricke; +Cc: linux-media, Laurent Pinchart, Sakari Ailus

On 03/02/2021 06:25, Sebastian Fricke wrote:
> Hey Hans,
> 
> I have tested your patch with the same routine, that we've discussed in
> the previous mail series. Here are the results:
> https://paste.debian.net/1183755/
> 
> You probably still have to adjust the compliance tool, right?

That's correct. I'm waiting for this to get the OK before I work
on v4l-utils.

> 
> Here is how the media_dev node looks like for me:
> ```
> basti@nanopct4:~$ cat /sys/class/video4linux/v4l-subdev3/media_dev
> 240:0
> # corresponds to:
> basti@nanopct4:~$ ls -l /dev/
> ...
> crw-rw---- 1 root video   240,   0 Feb  3 06:10 media0
> ...
> # leads to:
> basti@nanopct4:~$ cat /sys/dev/char/240:0/model
> rkisp1

Nice.

Regards,

	Hans

> ```
> 
> Greetings and thank you,
> Sebastian
> 
> On 02.02.2021 15:49, Hans Verkuil wrote:
>> A long standing issue is how to find the associated media device for
>> a V4L or DVB device node. This is primarily useful for applications
>> like v4l2-ctl and v4l2-compliance.
>>
>> Until recently these applications relied on /sys and the fact that
>> the media device was accessible in /sys via:
>>
>> /sys/class/video4linux/videoX/device/mediaY/
>>
>> But commit ee494cf377e1 ("media: v4l2-device: Link subdevices to their
>> parent devices if available") broke that scheme for subdevices. That
>> scheme was rather a hack anyway.
>>
>> Attempts to report the major/minor number of the media device via the
>> public API (i.e. by extending VIDIOC_QUERYCAP or VIDIOC_SUBDEV_QUERYCAP)
>> failed, so this patch series now just adds a media_dev attribute when a
>> V4L or DVB device node is created. This attribute contains the major:minor
>> of the media device. It is only created if the device node is actually
>> associated with a media controller.
>>
>> The original idea for this v3 was to store the media device minor/major
>> at the time of the device node registration, however the media device
>> node is typically created last, so this information isn't known yet.
>>
>> Instead a new media_device_devt() function was added that returns the
>> dev_t of the media device node safely.
>>
>> In addition a patch was added for vim2m to ensure that the v4l2_dev.mdev
>> is set before video_register_device() to ensure that the media_dev
>> attribute is created.
>>
>> This issue was reported by Sebastian Frick:
>>
>> https://lore.kernel.org/linux-media/20210120183054.5ltnjdtrmumplevt@basti-TUXEDO-Book-XA1510/T/#t
>>
>> Regards,
>>
>>        Hans
>>
>> Changes since v2: add new media_device_devt function.
>>        Add vim2m patch: v4l2_dev.mdev was set too late.
>>
>> Changes since v1: use the is_visible callback to ensure the attribute
>>        is only shown if mdev is non-NULL.
>>
>> Hans Verkuil (4):
>>  vim2m: intialize the media device earlier
>>  media-device: add media_device_devt function
>>  v4l2-dev: add /sys media_dev attr for V4L2 devices
>>  dvbdev: add /sys media_dev attr for DVB devices
>>
>> drivers/media/dvb-core/dvbdev.c    | 45 +++++++++++++++++++++++++++
>> drivers/media/mc/mc-device.c       | 16 ++++++++++
>> drivers/media/test-drivers/vim2m.c | 14 +++++----
>> drivers/media/v4l2-core/v4l2-dev.c | 49 +++++++++++++++++++++++++++++-
>> include/media/media-device.h       | 10 ++++++
>> 5 files changed, 127 insertions(+), 7 deletions(-)
>>
>> -- 
>> 2.29.2
>>


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-02-03  8:00 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-02 14:49 [PATCHv3 0/4] Add /sys media_dev attr for V4L/DVB devices Hans Verkuil
2021-02-02 14:49 ` [PATCHv3 1/4] vim2m: intialize the media device earlier Hans Verkuil
2021-02-02 14:49 ` [PATCHv3 2/4] media-device: add media_device_devt function Hans Verkuil
2021-02-02 14:49 ` [PATCHv3 3/4] v4l2-dev: add /sys media_dev attr for V4L2 devices Hans Verkuil
2021-02-02 14:49 ` [PATCHv3 4/4] dvbdev: add /sys media_dev attr for DVB devices Hans Verkuil
2021-02-03  5:25 ` [PATCHv3 0/4] Add /sys media_dev attr for V4L/DVB devices Sebastian Fricke
2021-02-03  7:59   ` Hans Verkuil

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.