You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
1.8 KiB
Diff
46 lines
1.8 KiB
Diff
From 434803a4828aed99d5328dd41b4600ef7b0be0ff Mon Sep 17 00:00:00 2001
|
|
From: Kieran Bingham <kieran.bingham@ideasonboard.com>
|
|
Date: Wed, 20 Mar 2019 11:55:43 +0000
|
|
Subject: [PATCH] staging: bcm2835-codec: Add role to device name
|
|
|
|
Three entities are created, Decode, Encode and ISP but all of the video
|
|
nodes use the same video name string "bcm2835-codec" which makes it
|
|
difficult to identify each role.
|
|
|
|
Append the role-name to the video name to facilitate identifying a
|
|
specific instance from userspace.
|
|
|
|
The Card-Type is also extended with the role name to support identifying
|
|
the device context from within QUERY_CAP operations.
|
|
|
|
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
|
|
---
|
|
.../vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c | 8 +++++---
|
|
1 file changed, 5 insertions(+), 3 deletions(-)
|
|
|
|
--- a/drivers/staging/vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c
|
|
+++ b/drivers/staging/vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c
|
|
@@ -947,8 +947,10 @@ static void device_run(void *priv)
|
|
static int vidioc_querycap(struct file *file, void *priv,
|
|
struct v4l2_capability *cap)
|
|
{
|
|
+ struct bcm2835_codec_dev *dev = video_drvdata(file);
|
|
+
|
|
strncpy(cap->driver, MEM2MEM_NAME, sizeof(cap->driver) - 1);
|
|
- strncpy(cap->card, MEM2MEM_NAME, sizeof(cap->card) - 1);
|
|
+ strncpy(cap->card, dev->vfd.name, sizeof(cap->card) - 1);
|
|
snprintf(cap->bus_info, sizeof(cap->bus_info), "platform:%s",
|
|
MEM2MEM_NAME);
|
|
return 0;
|
|
@@ -2657,8 +2659,8 @@ static int bcm2835_codec_create(struct p
|
|
}
|
|
|
|
video_set_drvdata(vfd, dev);
|
|
- snprintf(vfd->name, sizeof(vfd->name), "%s",
|
|
- bcm2835_codec_videodev.name);
|
|
+ snprintf(vfd->name, sizeof(vfd->name), "%s-%s",
|
|
+ bcm2835_codec_videodev.name, roles[role]);
|
|
v4l2_info(&dev->v4l2_dev, "Device registered as /dev/video%d\n",
|
|
vfd->num);
|
|
|