mirror of
https://github.com/torvalds/linux.git
synced 2026-05-28 00:53:34 +02:00
media: imx-jpeg: Set video drvdata before register video device
The video drvdata should be set before the video device is registered,
otherwise video_drvdata() may return NULL in the open() file ops, and led
to oops.
Fixes: 2db16c6ed7 ("media: imx-jpeg: Add V4L2 driver for i.MX8 JPEG Encoder/Decoder")
Cc: <stable@vger.kernel.org>
Signed-off-by: Ming Qian <ming.qian@nxp.com>
Reviewed-by: TaoJiang <tao.jiang_2@nxp.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
This commit is contained in:
parent
21ea3dcf85
commit
d2b7ecc26b
|
|
@ -2842,6 +2842,7 @@ static int mxc_jpeg_probe(struct platform_device *pdev)
|
|||
jpeg->dec_vdev->vfl_dir = VFL_DIR_M2M;
|
||||
jpeg->dec_vdev->device_caps = V4L2_CAP_STREAMING |
|
||||
V4L2_CAP_VIDEO_M2M_MPLANE;
|
||||
video_set_drvdata(jpeg->dec_vdev, jpeg);
|
||||
if (mode == MXC_JPEG_ENCODE) {
|
||||
v4l2_disable_ioctl(jpeg->dec_vdev, VIDIOC_DECODER_CMD);
|
||||
v4l2_disable_ioctl(jpeg->dec_vdev, VIDIOC_TRY_DECODER_CMD);
|
||||
|
|
@ -2854,7 +2855,6 @@ static int mxc_jpeg_probe(struct platform_device *pdev)
|
|||
dev_err(dev, "failed to register video device\n");
|
||||
goto err_vdev_register;
|
||||
}
|
||||
video_set_drvdata(jpeg->dec_vdev, jpeg);
|
||||
if (mode == MXC_JPEG_ENCODE)
|
||||
v4l2_info(&jpeg->v4l2_dev,
|
||||
"encoder device registered as /dev/video%d (%d,%d)\n",
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user