media: intel/ipu6: set the dev_parent of video device to pdev
authorBingbu Cao <bingbu.cao@intel.com>
Fri, 14 Feb 2025 10:52:38 +0000 (18:52 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 20 Apr 2025 08:15:33 +0000 (10:15 +0200)
commit 6f0ab5d3671f7cbb326c8cab6fb69cb7ab9901cc upstream.

The bus_info in v4l2_capability of IPU6 isys v4l2_dev is missing.
The driver didn't set the dev_parent of v4l2_dev, its parent is set
to its parent auxdev which is neither platform nor PCI device, thus
media_set_bus_info() will not set the bus_info of v4l2_capability, then
`v4l2-ctl --all` cannot show the bus_info.

This patch fixes it by setting the dev_parent of video_device and v4l2
framework can detect the device type and set the bus_info instead.

Fixes: 3c1dfb5a69cf ("media: intel/ipu6: input system video nodes and buffer queues")
Cc: stable@vger.kernel.org
Signed-off-by: Hidenori Kobayashi <hidenorik@chromium.org>
Signed-off-by: Bingbu Cao <bingbu.cao@intel.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/media/pci/intel/ipu6/ipu6-isys-video.c

index b37561352ead38a2a33878b55c9bdf2eb651aa0b..48388c0c851ca11593a1bd5b62747db723d9e3d3 100644 (file)
@@ -1296,6 +1296,7 @@ int ipu6_isys_video_init(struct ipu6_isys_video *av)
        av->vdev.release = video_device_release_empty;
        av->vdev.fops = &isys_fops;
        av->vdev.v4l2_dev = &av->isys->v4l2_dev;
+       av->vdev.dev_parent = &av->isys->adev->isp->pdev->dev;
        if (!av->vdev.ioctl_ops)
                av->vdev.ioctl_ops = &ipu6_v4l2_ioctl_ops;
        av->vdev.queue = &av->aq.vbq;