diff options
author | Alice Yuan <alice.yuan@nxp.com> | 2021-10-28 14:00:37 +0800 |
---|---|---|
committer | Dong Aisheng <aisheng.dong@nxp.com> | 2021-11-02 16:32:35 +0800 |
commit | a88cdadf0ed49e392beaee6a90674a3fcbc10ac0 (patch) | |
tree | 11ae91bcb7591a66136573922edfb9f79e32ee2e /Documentation/devicetree/bindings/media | |
parent | 3861d5f5ad048cadb20138e9fab185f6e584a2df (diff) |
LF-4830 media: isi_m2m: fix gstreamer pipeline can not work on second open
Command to reproduce:
gst-launch-1.0 v4l2src device=/dev/video3 ! video/x-raw,format=YUY2 !\
v4l2convert ! video/x-raw,format=RGB ! videoconvert !\
waylandsink --no-position
After do Ctrl+C to exit, then run the same command again,
pipeline cannot work normally.
This can actually be reproduced with just do cat command, running the
command a few times (video2 is m2m device node, video3 is sensor device node):
$ cat /dev/video2
cat: /dev/video2: Invalid argument
And this patch is enhancment for LF-4315.
root cause:
In mxc_isi_m2m_open() if the refcnt is not 0, return -EBUSY,
but refcnt increased. If refcnt > 1, close function will never really release
device resource (the resource can be really released only if refcnt = 0).
This leaded to the device busy and can not be used again.
So only increase refcnt on success in mxc_isi_m2m_open() can prevent device
resource busy issue.
Signed-off-by: Alice Yuan <alice.yuan@nxp.com>
Reviewed-by:Robby Cai <robby.cai@nxp.com>
Diffstat (limited to 'Documentation/devicetree/bindings/media')
0 files changed, 0 insertions, 0 deletions