mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-01 06:33:07 +00:00
[media] allow overriding the driver name
On USB drivers, the dev struct is usually filled with the USB device. That would mean that the name of the driver specified by media_device.dev.driver.name would be "usb", instead of the name of the actual driver that created the media entity. Add an optional field at the internal struct to allow drivers to override the driver name. Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
This commit is contained in:
parent
c73bbaa4ec
commit
bb07bd6b68
2 changed files with 10 additions and 1 deletions
|
@ -55,7 +55,11 @@ static int media_device_get_info(struct media_device *dev,
|
|||
|
||||
memset(&info, 0, sizeof(info));
|
||||
|
||||
strlcpy(info.driver, dev->dev->driver->name, sizeof(info.driver));
|
||||
if (dev->driver_name[0])
|
||||
strlcpy(info.driver, dev->driver_name, sizeof(info.driver));
|
||||
else
|
||||
strlcpy(info.driver, dev->dev->driver->name, sizeof(info.driver));
|
||||
|
||||
strlcpy(info.model, dev->model, sizeof(info.model));
|
||||
strlcpy(info.serial, dev->serial, sizeof(info.serial));
|
||||
strlcpy(info.bus_info, dev->bus_info, sizeof(info.bus_info));
|
||||
|
|
|
@ -268,6 +268,10 @@ struct device;
|
|||
* struct media_device - Media device
|
||||
* @dev: Parent device
|
||||
* @devnode: Media device node
|
||||
* @driver_name: Optional device driver name. If not set, calls to
|
||||
* %MEDIA_IOC_DEVICE_INFO will return dev->driver->name.
|
||||
* This is needed for USB drivers for example, as otherwise
|
||||
* they'll all appear as if the driver name was "usb".
|
||||
* @model: Device model name
|
||||
* @serial: Device serial number (optional)
|
||||
* @bus_info: Unique and stable device location identifier
|
||||
|
@ -303,6 +307,7 @@ struct media_device {
|
|||
struct media_devnode devnode;
|
||||
|
||||
char model[32];
|
||||
char driver_name[32];
|
||||
char serial[40];
|
||||
char bus_info[32];
|
||||
u32 hw_revision;
|
||||
|
|
Loading…
Reference in a new issue