<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-stable.git/drivers/media/platform, branch v5.2.3</title>
<subtitle>Linux kernel stable tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/'/>
<entry>
<title>media: coda: Remove unbalanced and unneeded mutex unlock</title>
<updated>2019-07-26T07:10:58+00:00</updated>
<author>
<name>Ezequiel Garcia</name>
<email>ezequiel@collabora.com</email>
</author>
<published>2019-05-02T22:00:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=33397c9d5e62dd4b142dcd1f38d15ee1bc5229d3'/>
<id>33397c9d5e62dd4b142dcd1f38d15ee1bc5229d3</id>
<content type='text'>
commit 766b9b168f6c75c350dd87c3e0bc6a9b322f0013 upstream.

The mutex unlock in the threaded interrupt handler is not paired
with any mutex lock. Remove it.

This bug has been here for a really long time, so it applies
to any stable repo.

Reviewed-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Signed-off-by: Ezequiel Garcia &lt;ezequiel@collabora.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Cc: stable@vger.kernel.org
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
commit 766b9b168f6c75c350dd87c3e0bc6a9b322f0013 upstream.

The mutex unlock in the threaded interrupt handler is not paired
with any mutex lock. Remove it.

This bug has been here for a really long time, so it applies
to any stable repo.

Reviewed-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Signed-off-by: Ezequiel Garcia &lt;ezequiel@collabora.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Cc: stable@vger.kernel.org
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</pre>
</div>
</content>
</entry>
<entry>
<title>media: vimc: cap: check v4l2_fill_pixfmt return value</title>
<updated>2019-07-26T07:10:33+00:00</updated>
<author>
<name>André Almeida</name>
<email>andrealmeid@collabora.com</email>
</author>
<published>2019-06-17T16:28:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=adb1d60e704dc95b57a5e26ee51a8f73ae963122'/>
<id>adb1d60e704dc95b57a5e26ee51a8f73ae963122</id>
<content type='text'>
[ Upstream commit 77ae46e11df5c96bb4582633851f838f5d954df4 ]

v4l2_fill_pixfmt() returns -EINVAL if the pixelformat used as parameter is
invalid or if the user is trying to use a multiplanar format with the
singleplanar API. Currently, the vimc_cap_try_fmt_vid_cap() returns such
value, but vimc_cap_s_fmt_vid_cap() is ignoring it. Fix that and returns
an error value if vimc_cap_try_fmt_vid_cap() has failed.

Signed-off-by: André Almeida &lt;andrealmeid@collabora.com&gt;
Suggested-by: Helen Koike &lt;helen.koike@collabora.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 77ae46e11df5c96bb4582633851f838f5d954df4 ]

v4l2_fill_pixfmt() returns -EINVAL if the pixelformat used as parameter is
invalid or if the user is trying to use a multiplanar format with the
singleplanar API. Currently, the vimc_cap_try_fmt_vid_cap() returns such
value, but vimc_cap_s_fmt_vid_cap() is ignoring it. Fix that and returns
an error value if vimc_cap_try_fmt_vid_cap() has failed.

Signed-off-by: André Almeida &lt;andrealmeid@collabora.com&gt;
Suggested-by: Helen Koike &lt;helen.koike@collabora.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>media: coda: increment sequence offset for the last returned frame</title>
<updated>2019-07-26T07:10:33+00:00</updated>
<author>
<name>Philipp Zabel</name>
<email>p.zabel@pengutronix.de</email>
</author>
<published>2019-06-18T16:45:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=9a9ff8f128445688f43b9afc1b837a3de4548586'/>
<id>9a9ff8f128445688f43b9afc1b837a3de4548586</id>
<content type='text'>
[ Upstream commit b3b7d96817cdb8b6fc353867705275dce8f41ccc ]

If no more frames are decoded in bitstream end mode, and a previously
decoded frame has been returned, the firmware still increments the frame
number. To avoid a sequence number mismatch after decoder restart,
increment the sequence_offset correction parameter.

Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit b3b7d96817cdb8b6fc353867705275dce8f41ccc ]

If no more frames are decoded in bitstream end mode, and a previously
decoded frame has been returned, the firmware still increments the frame
number. To avoid a sequence number mismatch after decoder restart,
increment the sequence_offset correction parameter.

Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>media: coda: fix last buffer handling in V4L2_ENC_CMD_STOP</title>
<updated>2019-07-26T07:10:33+00:00</updated>
<author>
<name>Marco Felsch</name>
<email>m.felsch@pengutronix.de</email>
</author>
<published>2019-06-18T16:45:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=0c4616125cc28c908107da6888079c546e93c104'/>
<id>0c4616125cc28c908107da6888079c546e93c104</id>
<content type='text'>
[ Upstream commit f3775f89852d167990b0d718587774cf00d22ac2 ]

coda_encoder_cmd() is racy, as the last scheduled picture run worker can
still be in-flight while the ENC_CMD_STOP command is issued. Depending
on the exact timing the sequence numbers might already be changed, but
the last buffer might not have been put on the destination queue yet.

In this case the current implementation would prematurely wake the
destination queue with last_buffer_dequeued=true, causing userspace to
call streamoff before the last buffer is handled.

Close this race window by synchronizing with the pic_run_worker before
doing the sequence check.

Signed-off-by: Marco Felsch &lt;m.felsch@pengutronix.de&gt;
[l.stach@pengutronix.de: switch to flush_work, reword commit message]
Signed-off-by: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit f3775f89852d167990b0d718587774cf00d22ac2 ]

coda_encoder_cmd() is racy, as the last scheduled picture run worker can
still be in-flight while the ENC_CMD_STOP command is issued. Depending
on the exact timing the sequence numbers might already be changed, but
the last buffer might not have been put on the destination queue yet.

In this case the current implementation would prematurely wake the
destination queue with last_buffer_dequeued=true, causing userspace to
call streamoff before the last buffer is handled.

Close this race window by synchronizing with the pic_run_worker before
doing the sequence check.

Signed-off-by: Marco Felsch &lt;m.felsch@pengutronix.de&gt;
[l.stach@pengutronix.de: switch to flush_work, reword commit message]
Signed-off-by: Lucas Stach &lt;l.stach@pengutronix.de&gt;
Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>media: coda: fix mpeg2 sequence number handling</title>
<updated>2019-07-26T07:10:33+00:00</updated>
<author>
<name>Philipp Zabel</name>
<email>p.zabel@pengutronix.de</email>
</author>
<published>2019-06-18T16:45:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=2d8e49ffcb63f23726c561247f9e19b61f6e7ac6'/>
<id>2d8e49ffcb63f23726c561247f9e19b61f6e7ac6</id>
<content type='text'>
[ Upstream commit 56d159a4ec6d8da7313aac6fcbb95d8fffe689ba ]

Sequence number handling assumed that the BIT processor frame number
starts counting at 1, but this is not true for the MPEG-2 decoder,
which starts at 0. Fix the sequence counter offset detection to handle
this.

Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 56d159a4ec6d8da7313aac6fcbb95d8fffe689ba ]

Sequence number handling assumed that the BIT processor frame number
starts counting at 1, but this is not true for the MPEG-2 decoder,
which starts at 0. Fix the sequence counter offset detection to handle
this.

Signed-off-by: Philipp Zabel &lt;p.zabel@pengutronix.de&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>media: s5p-mfc: Make additional clocks optional</title>
<updated>2019-07-26T07:10:32+00:00</updated>
<author>
<name>Marek Szyprowski</name>
<email>m.szyprowski@samsung.com</email>
</author>
<published>2019-06-13T10:48:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=f37485cd10b201f9c9d86e3bcef2427ec9fabd7b'/>
<id>f37485cd10b201f9c9d86e3bcef2427ec9fabd7b</id>
<content type='text'>
[ Upstream commit e08efef8fe7db87206314c19b341612c719f891a ]

Since the beginning the second clock ('special', 'sclk') was optional and
it is not available on some variants of Exynos SoCs (i.e. Exynos5420 with
v7 of MFC hardware).

However commit 1bce6fb3edf1 ("[media] s5p-mfc: Rework clock handling")
made handling of all specified clocks mandatory. This patch restores
original behavior of the driver and fixes its operation on
Exynos5420 SoCs.

Fixes: 1bce6fb3edf1 ("[media] s5p-mfc: Rework clock handling")
Signed-off-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit e08efef8fe7db87206314c19b341612c719f891a ]

Since the beginning the second clock ('special', 'sclk') was optional and
it is not available on some variants of Exynos SoCs (i.e. Exynos5420 with
v7 of MFC hardware).

However commit 1bce6fb3edf1 ("[media] s5p-mfc: Rework clock handling")
made handling of all specified clocks mandatory. This patch restores
original behavior of the driver and fixes its operation on
Exynos5420 SoCs.

Fixes: 1bce6fb3edf1 ("[media] s5p-mfc: Rework clock handling")
Signed-off-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>media: s5p-mfc: fix reading min scratch buffer size on MFC v6/v7</title>
<updated>2019-07-26T07:10:25+00:00</updated>
<author>
<name>Marek Szyprowski</name>
<email>m.szyprowski@samsung.com</email>
</author>
<published>2019-06-12T13:57:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=4cb2edfa241099a3e2feb0e3457626fdc5836662'/>
<id>4cb2edfa241099a3e2feb0e3457626fdc5836662</id>
<content type='text'>
[ Upstream commit be22203aec440c1761ce8542c2636ac6c8951e3a ]

MFC v6 and v7 has no register to read min scratch buffer size, so it has
to be read conditionally only if hardware supports it. This fixes following
NULL pointer exception on SoCs with MFC v6/v7:

8&lt;--- cut here ---
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = f25837f9
[00000000] *pgd=bd93d835
Internal error: Oops: 17 [#1] PREEMPT SMP ARM
Modules linked in: btmrvl_sdio btmrvl bluetooth mwifiex_sdio mwifiex ecdh_generic ecc
Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
PC is at s5p_mfc_get_min_scratch_buf_size+0x30/0x3c
LR is at s5p_mfc_get_min_scratch_buf_size+0x28/0x3c
...
[&lt;c074f998&gt;] (s5p_mfc_get_min_scratch_buf_size) from [&lt;c0745bc0&gt;] (s5p_mfc_irq+0x814/0xa5c)
[&lt;c0745bc0&gt;] (s5p_mfc_irq) from [&lt;c019a218&gt;] (__handle_irq_event_percpu+0x64/0x3f8)
[&lt;c019a218&gt;] (__handle_irq_event_percpu) from [&lt;c019a5d8&gt;] (handle_irq_event_percpu+0x2c/0x7c)
[&lt;c019a5d8&gt;] (handle_irq_event_percpu) from [&lt;c019a660&gt;] (handle_irq_event+0x38/0x5c)
[&lt;c019a660&gt;] (handle_irq_event) from [&lt;c019ebc4&gt;] (handle_fasteoi_irq+0xc4/0x180)
[&lt;c019ebc4&gt;] (handle_fasteoi_irq) from [&lt;c0199270&gt;] (generic_handle_irq+0x24/0x34)
[&lt;c0199270&gt;] (generic_handle_irq) from [&lt;c0199888&gt;] (__handle_domain_irq+0x7c/0xec)
[&lt;c0199888&gt;] (__handle_domain_irq) from [&lt;c04ac298&gt;] (gic_handle_irq+0x58/0x9c)
[&lt;c04ac298&gt;] (gic_handle_irq) from [&lt;c0101ab0&gt;] (__irq_svc+0x70/0xb0)
Exception stack(0xe73ddc60 to 0xe73ddca8)
...
[&lt;c0101ab0&gt;] (__irq_svc) from [&lt;c01967d8&gt;] (console_unlock+0x5a8/0x6a8)
[&lt;c01967d8&gt;] (console_unlock) from [&lt;c01981d0&gt;] (vprintk_emit+0x118/0x2d8)
[&lt;c01981d0&gt;] (vprintk_emit) from [&lt;c01983b0&gt;] (vprintk_default+0x20/0x28)
[&lt;c01983b0&gt;] (vprintk_default) from [&lt;c01989b4&gt;] (printk+0x30/0x54)
[&lt;c01989b4&gt;] (printk) from [&lt;c07500b8&gt;] (s5p_mfc_init_decode_v6+0x1d4/0x284)
[&lt;c07500b8&gt;] (s5p_mfc_init_decode_v6) from [&lt;c07230d0&gt;] (vb2_start_streaming+0x24/0x150)
[&lt;c07230d0&gt;] (vb2_start_streaming) from [&lt;c0724e4c&gt;] (vb2_core_streamon+0x11c/0x15c)
[&lt;c0724e4c&gt;] (vb2_core_streamon) from [&lt;c07478b8&gt;] (vidioc_streamon+0x64/0xa0)
[&lt;c07478b8&gt;] (vidioc_streamon) from [&lt;c0709640&gt;] (__video_do_ioctl+0x28c/0x45c)
[&lt;c0709640&gt;] (__video_do_ioctl) from [&lt;c0709bc8&gt;] (video_usercopy+0x260/0x8a4)
[&lt;c0709bc8&gt;] (video_usercopy) from [&lt;c02b3820&gt;] (do_vfs_ioctl+0xb0/0x9fc)
[&lt;c02b3820&gt;] (do_vfs_ioctl) from [&lt;c02b41a0&gt;] (ksys_ioctl+0x34/0x58)
[&lt;c02b41a0&gt;] (ksys_ioctl) from [&lt;c0101000&gt;] (ret_fast_syscall+0x0/0x28)
Exception stack(0xe73ddfa8 to 0xe73ddff0)
...
---[ end trace 376cf5ba6e0bee93 ]---

Signed-off-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit be22203aec440c1761ce8542c2636ac6c8951e3a ]

MFC v6 and v7 has no register to read min scratch buffer size, so it has
to be read conditionally only if hardware supports it. This fixes following
NULL pointer exception on SoCs with MFC v6/v7:

8&lt;--- cut here ---
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = f25837f9
[00000000] *pgd=bd93d835
Internal error: Oops: 17 [#1] PREEMPT SMP ARM
Modules linked in: btmrvl_sdio btmrvl bluetooth mwifiex_sdio mwifiex ecdh_generic ecc
Hardware name: SAMSUNG EXYNOS (Flattened Device Tree)
PC is at s5p_mfc_get_min_scratch_buf_size+0x30/0x3c
LR is at s5p_mfc_get_min_scratch_buf_size+0x28/0x3c
...
[&lt;c074f998&gt;] (s5p_mfc_get_min_scratch_buf_size) from [&lt;c0745bc0&gt;] (s5p_mfc_irq+0x814/0xa5c)
[&lt;c0745bc0&gt;] (s5p_mfc_irq) from [&lt;c019a218&gt;] (__handle_irq_event_percpu+0x64/0x3f8)
[&lt;c019a218&gt;] (__handle_irq_event_percpu) from [&lt;c019a5d8&gt;] (handle_irq_event_percpu+0x2c/0x7c)
[&lt;c019a5d8&gt;] (handle_irq_event_percpu) from [&lt;c019a660&gt;] (handle_irq_event+0x38/0x5c)
[&lt;c019a660&gt;] (handle_irq_event) from [&lt;c019ebc4&gt;] (handle_fasteoi_irq+0xc4/0x180)
[&lt;c019ebc4&gt;] (handle_fasteoi_irq) from [&lt;c0199270&gt;] (generic_handle_irq+0x24/0x34)
[&lt;c0199270&gt;] (generic_handle_irq) from [&lt;c0199888&gt;] (__handle_domain_irq+0x7c/0xec)
[&lt;c0199888&gt;] (__handle_domain_irq) from [&lt;c04ac298&gt;] (gic_handle_irq+0x58/0x9c)
[&lt;c04ac298&gt;] (gic_handle_irq) from [&lt;c0101ab0&gt;] (__irq_svc+0x70/0xb0)
Exception stack(0xe73ddc60 to 0xe73ddca8)
...
[&lt;c0101ab0&gt;] (__irq_svc) from [&lt;c01967d8&gt;] (console_unlock+0x5a8/0x6a8)
[&lt;c01967d8&gt;] (console_unlock) from [&lt;c01981d0&gt;] (vprintk_emit+0x118/0x2d8)
[&lt;c01981d0&gt;] (vprintk_emit) from [&lt;c01983b0&gt;] (vprintk_default+0x20/0x28)
[&lt;c01983b0&gt;] (vprintk_default) from [&lt;c01989b4&gt;] (printk+0x30/0x54)
[&lt;c01989b4&gt;] (printk) from [&lt;c07500b8&gt;] (s5p_mfc_init_decode_v6+0x1d4/0x284)
[&lt;c07500b8&gt;] (s5p_mfc_init_decode_v6) from [&lt;c07230d0&gt;] (vb2_start_streaming+0x24/0x150)
[&lt;c07230d0&gt;] (vb2_start_streaming) from [&lt;c0724e4c&gt;] (vb2_core_streamon+0x11c/0x15c)
[&lt;c0724e4c&gt;] (vb2_core_streamon) from [&lt;c07478b8&gt;] (vidioc_streamon+0x64/0xa0)
[&lt;c07478b8&gt;] (vidioc_streamon) from [&lt;c0709640&gt;] (__video_do_ioctl+0x28c/0x45c)
[&lt;c0709640&gt;] (__video_do_ioctl) from [&lt;c0709bc8&gt;] (video_usercopy+0x260/0x8a4)
[&lt;c0709bc8&gt;] (video_usercopy) from [&lt;c02b3820&gt;] (do_vfs_ioctl+0xb0/0x9fc)
[&lt;c02b3820&gt;] (do_vfs_ioctl) from [&lt;c02b41a0&gt;] (ksys_ioctl+0x34/0x58)
[&lt;c02b41a0&gt;] (ksys_ioctl) from [&lt;c0101000&gt;] (ret_fast_syscall+0x0/0x28)
Exception stack(0xe73ddfa8 to 0xe73ddff0)
...
---[ end trace 376cf5ba6e0bee93 ]---

Signed-off-by: Marek Szyprowski &lt;m.szyprowski@samsung.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>media: davinci: vpif_capture: fix memory leak in vpif_probe()</title>
<updated>2019-07-26T07:10:25+00:00</updated>
<author>
<name>Young Xiao</name>
<email>92siuyang@gmail.com</email>
</author>
<published>2019-06-04T12:26:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=9ee7f7b3be04d8ad50e7677d650a8e03b4b646e3'/>
<id>9ee7f7b3be04d8ad50e7677d650a8e03b4b646e3</id>
<content type='text'>
[ Upstream commit 64f883cd98c6d43013fb0cea788b63e50ebc068c ]

If vpif_probe() fails on v4l2_device_register() and vpif_probe_complete(),
then memory allocated at initialize_vpif() for global vpif_obj.dev[i]
become unreleased.

The patch adds deallocation of vpif_obj.dev[i] on the error path.

Signed-off-by: Young Xiao &lt;92siuyang@gmail.com&gt;
Acked-by: Lad, Prabhakar &lt;prabhakar.csengg@gmail.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 64f883cd98c6d43013fb0cea788b63e50ebc068c ]

If vpif_probe() fails on v4l2_device_register() and vpif_probe_complete(),
then memory allocated at initialize_vpif() for global vpif_obj.dev[i]
become unreleased.

The patch adds deallocation of vpif_obj.dev[i] on the error path.

Signed-off-by: Young Xiao &lt;92siuyang@gmail.com&gt;
Acked-by: Lad, Prabhakar &lt;prabhakar.csengg@gmail.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>media: fdp1: Support M3N and E3 platforms</title>
<updated>2019-07-26T07:10:24+00:00</updated>
<author>
<name>Kieran Bingham</name>
<email>kieran.bingham+renesas@ideasonboard.com</email>
</author>
<published>2019-05-15T15:39:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=0a1c9f326f894791b7bccec3d8113800cd47c265'/>
<id>0a1c9f326f894791b7bccec3d8113800cd47c265</id>
<content type='text'>
[ Upstream commit 4e8c120de9268fc26f583268b9d22e7d37c4595f ]

New Gen3 R-Car platforms incorporate the FDP1 with an updated version
register. No code change is required to support these targets, but they
will currently report an error stating that the device can not be
identified.

Update the driver to match against the new device types.

Signed-off-by: Kieran Bingham &lt;kieran.bingham+renesas@ideasonboard.com&gt;
Signed-off-by: Laurent Pinchart &lt;laurent.pinchart+renesas@ideasonboard.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 4e8c120de9268fc26f583268b9d22e7d37c4595f ]

New Gen3 R-Car platforms incorporate the FDP1 with an updated version
register. No code change is required to support these targets, but they
will currently report an error stating that the device can not be
identified.

Update the driver to match against the new device types.

Signed-off-by: Kieran Bingham &lt;kieran.bingham+renesas@ideasonboard.com&gt;
Signed-off-by: Laurent Pinchart &lt;laurent.pinchart+renesas@ideasonboard.com&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>media: aspeed: fix a kernel warning on clk control</title>
<updated>2019-07-26T07:10:22+00:00</updated>
<author>
<name>Jae Hyun Yoo</name>
<email>jae.hyun.yoo@linux.intel.com</email>
</author>
<published>2019-05-31T22:15:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux-stable.git/commit/?id=f5d06ac24d9689a0e22a529f86287361a65d673b'/>
<id>f5d06ac24d9689a0e22a529f86287361a65d673b</id>
<content type='text'>
[ Upstream commit 9698ed4d4a2993ce54b9f7d71a2891e972caa117 ]

Video engine clock control can be double disabled and eventually
it causes a kernel warning with stack dump printing out like below:

[  515.540498] ------------[ cut here ]------------
[  515.545174] WARNING: CPU: 0 PID: 1310 at drivers/clk/clk.c:684 clk_core_unprepare+0x13c/0x170
[  515.553806] vclk-gate already unprepared
[  515.557841] CPU: 0 PID: 1310 Comm: obmc-ikvm Tainted: G        W         5.0.6-df66fbc97853fbba90a0bfa44de32f3d5f7602b4 #1
[  515.568973] Hardware name: Generic DT based system
[  515.573777] Backtrace:
[  515.576272] [&lt;80107cdc&gt;] (dump_backtrace) from [&lt;80107f10&gt;] (show_stack+0x20/0x24)
[  515.583930]  r7:803a5614 r6:00000009 r5:00000000 r4:9d88fe1c
[  515.589712] [&lt;80107ef0&gt;] (show_stack) from [&lt;80690184&gt;] (dump_stack+0x20/0x28)
[  515.597053] [&lt;80690164&gt;] (dump_stack) from [&lt;80116044&gt;] (__warn.part.3+0xb4/0xdc)
[  515.604557] [&lt;80115f90&gt;] (__warn.part.3) from [&lt;801160d8&gt;] (warn_slowpath_fmt+0x6c/0x90)
[  515.612734]  r6:000002ac r5:8080befc r4:80a07008
[  515.617463] [&lt;80116070&gt;] (warn_slowpath_fmt) from [&lt;803a5614&gt;] (clk_core_unprepare+0x13c/0x170)
[  515.626167]  r3:8080cdf4 r2:8080bfc0
[  515.629834]  r7:98d682a8 r6:9d8a9200 r5:9e5151a0 r4:97abd620
[  515.635530] [&lt;803a54d8&gt;] (clk_core_unprepare) from [&lt;803a76a4&gt;] (clk_unprepare+0x34/0x3c)
[  515.643812]  r5:9e5151a0 r4:97abd620
[  515.647529] [&lt;803a7670&gt;] (clk_unprepare) from [&lt;804f36ec&gt;] (aspeed_video_off+0x38/0x50)
[  515.655539]  r5:9e5151a0 r4:9e504000
[  515.659242] [&lt;804f36b4&gt;] (aspeed_video_off) from [&lt;804f4358&gt;] (aspeed_video_release+0x90/0x114)
[  515.668036]  r5:9e5044b0 r4:9e504000
[  515.671643] [&lt;804f42c8&gt;] (aspeed_video_release) from [&lt;804d302c&gt;] (v4l2_release+0xd4/0xe8)
[  515.679999]  r7:98d682a8 r6:9d087810 r5:9d8a9200 r4:9e504318
[  515.685695] [&lt;804d2f58&gt;] (v4l2_release) from [&lt;80236454&gt;] (__fput+0x98/0x1c4)
[  515.692914]  r5:9e51b608 r4:9d8a9200
[  515.696597] [&lt;802363bc&gt;] (__fput) from [&lt;802365e8&gt;] (____fput+0x18/0x1c)
[  515.703315]  r9:80a0700c r8:801011e4 r7:00000000 r6:80a64b9c r5:9d8e35a0 r4:9d8e38dc
[  515.711167] [&lt;802365d0&gt;] (____fput) from [&lt;80131ca4&gt;] (task_work_run+0x7c/0xa0)
[  515.718596] [&lt;80131c28&gt;] (task_work_run) from [&lt;80106884&gt;] (do_work_pending+0x4a8/0x578)
[  515.726777]  r7:801011e4 r6:80a07008 r5:9d88ffb0 r4:ffffe000
[  515.732466] [&lt;801063dc&gt;] (do_work_pending) from [&lt;8010106c&gt;] (slow_work_pending+0xc/0x20)
[  515.740727] Exception stack(0x9d88ffb0 to 0x9d88fff8)
[  515.745840] ffa0:                                     00000000 76f18094 00000000 00000000
[  515.754122] ffc0: 00000007 00176778 7eda4c20 00000006 00000000 00000000 48e20fa4 00000000
[  515.762386] ffe0: 00000002 7eda4b08 00000000 48f91efc 80000010 00000007
[  515.769097]  r10:00000000 r9:9d88e000 r8:801011e4 r7:00000006 r6:7eda4c20 r5:00176778
[  515.777006]  r4:00000007
[  515.779558] ---[ end trace 12c04aadef8afbbb ]---
[  515.784176] ------------[ cut here ]------------
[  515.788817] WARNING: CPU: 0 PID: 1310 at drivers/clk/clk.c:825 clk_core_disable+0x18c/0x204
[  515.797161] eclk-gate already disabled
[  515.800916] CPU: 0 PID: 1310 Comm: obmc-ikvm Tainted: G        W         5.0.6-df66fbc97853fbba90a0bfa44de32f3d5f7602b4 #1
[  515.811945] Hardware name: Generic DT based system
[  515.816730] Backtrace:
[  515.819210] [&lt;80107cdc&gt;] (dump_backtrace) from [&lt;80107f10&gt;] (show_stack+0x20/0x24)
[  515.826782]  r7:803a5900 r6:00000009 r5:00000000 r4:9d88fe04
[  515.832454] [&lt;80107ef0&gt;] (show_stack) from [&lt;80690184&gt;] (dump_stack+0x20/0x28)
[  515.839687] [&lt;80690164&gt;] (dump_stack) from [&lt;80116044&gt;] (__warn.part.3+0xb4/0xdc)
[  515.847170] [&lt;80115f90&gt;] (__warn.part.3) from [&lt;801160d8&gt;] (warn_slowpath_fmt+0x6c/0x90)
[  515.855247]  r6:00000339 r5:8080befc r4:80a07008
[  515.859868] [&lt;80116070&gt;] (warn_slowpath_fmt) from [&lt;803a5900&gt;] (clk_core_disable+0x18c/0x204)
[  515.868385]  r3:8080cdd0 r2:8080c00c
[  515.871957]  r7:98d682a8 r6:9d8a9200 r5:97abd560 r4:97abd560
[  515.877615] [&lt;803a5774&gt;] (clk_core_disable) from [&lt;803a59a0&gt;] (clk_core_disable_lock+0x28/0x34)
[  515.886301]  r7:98d682a8 r6:9d8a9200 r5:97abd560 r4:a0000013
[  515.891960] [&lt;803a5978&gt;] (clk_core_disable_lock) from [&lt;803a7714&gt;] (clk_disable+0x2c/0x30)
[  515.900216]  r5:9e5151a0 r4:9e515f60
[  515.903816] [&lt;803a76e8&gt;] (clk_disable) from [&lt;804f36f8&gt;] (aspeed_video_off+0x44/0x50)
[  515.911656] [&lt;804f36b4&gt;] (aspeed_video_off) from [&lt;804f4358&gt;] (aspeed_video_release+0x90/0x114)
[  515.920341]  r5:9e5044b0 r4:9e504000
[  515.923921] [&lt;804f42c8&gt;] (aspeed_video_release) from [&lt;804d302c&gt;] (v4l2_release+0xd4/0xe8)
[  515.932184]  r7:98d682a8 r6:9d087810 r5:9d8a9200 r4:9e504318
[  515.937851] [&lt;804d2f58&gt;] (v4l2_release) from [&lt;80236454&gt;] (__fput+0x98/0x1c4)
[  515.944980]  r5:9e51b608 r4:9d8a9200
[  515.948559] [&lt;802363bc&gt;] (__fput) from [&lt;802365e8&gt;] (____fput+0x18/0x1c)
[  515.955257]  r9:80a0700c r8:801011e4 r7:00000000 r6:80a64b9c r5:9d8e35a0 r4:9d8e38dc
[  515.963008] [&lt;802365d0&gt;] (____fput) from [&lt;80131ca4&gt;] (task_work_run+0x7c/0xa0)
[  515.970333] [&lt;80131c28&gt;] (task_work_run) from [&lt;80106884&gt;] (do_work_pending+0x4a8/0x578)
[  515.978421]  r7:801011e4 r6:80a07008 r5:9d88ffb0 r4:ffffe000
[  515.984086] [&lt;801063dc&gt;] (do_work_pending) from [&lt;8010106c&gt;] (slow_work_pending+0xc/0x20)
[  515.992247] Exception stack(0x9d88ffb0 to 0x9d88fff8)
[  515.997296] ffa0:                                     00000000 76f18094 00000000 00000000
[  516.005473] ffc0: 00000007 00176778 7eda4c20 00000006 00000000 00000000 48e20fa4 00000000
[  516.013642] ffe0: 00000002 7eda4b08 00000000 48f91efc 80000010 00000007
[  516.020257]  r10:00000000 r9:9d88e000 r8:801011e4 r7:00000006 r6:7eda4c20 r5:00176778
[  516.028072]  r4:00000007
[  516.030606] ---[ end trace 12c04aadef8afbbc ]---

To prevent this issue, this commit adds clock status checking
logic into the Aspeed video engine driver.

Signed-off-by: Jae Hyun Yoo &lt;jae.hyun.yoo@linux.intel.com&gt;
Reviewed-by: Eddie James &lt;eajames@linux.ibm.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 9698ed4d4a2993ce54b9f7d71a2891e972caa117 ]

Video engine clock control can be double disabled and eventually
it causes a kernel warning with stack dump printing out like below:

[  515.540498] ------------[ cut here ]------------
[  515.545174] WARNING: CPU: 0 PID: 1310 at drivers/clk/clk.c:684 clk_core_unprepare+0x13c/0x170
[  515.553806] vclk-gate already unprepared
[  515.557841] CPU: 0 PID: 1310 Comm: obmc-ikvm Tainted: G        W         5.0.6-df66fbc97853fbba90a0bfa44de32f3d5f7602b4 #1
[  515.568973] Hardware name: Generic DT based system
[  515.573777] Backtrace:
[  515.576272] [&lt;80107cdc&gt;] (dump_backtrace) from [&lt;80107f10&gt;] (show_stack+0x20/0x24)
[  515.583930]  r7:803a5614 r6:00000009 r5:00000000 r4:9d88fe1c
[  515.589712] [&lt;80107ef0&gt;] (show_stack) from [&lt;80690184&gt;] (dump_stack+0x20/0x28)
[  515.597053] [&lt;80690164&gt;] (dump_stack) from [&lt;80116044&gt;] (__warn.part.3+0xb4/0xdc)
[  515.604557] [&lt;80115f90&gt;] (__warn.part.3) from [&lt;801160d8&gt;] (warn_slowpath_fmt+0x6c/0x90)
[  515.612734]  r6:000002ac r5:8080befc r4:80a07008
[  515.617463] [&lt;80116070&gt;] (warn_slowpath_fmt) from [&lt;803a5614&gt;] (clk_core_unprepare+0x13c/0x170)
[  515.626167]  r3:8080cdf4 r2:8080bfc0
[  515.629834]  r7:98d682a8 r6:9d8a9200 r5:9e5151a0 r4:97abd620
[  515.635530] [&lt;803a54d8&gt;] (clk_core_unprepare) from [&lt;803a76a4&gt;] (clk_unprepare+0x34/0x3c)
[  515.643812]  r5:9e5151a0 r4:97abd620
[  515.647529] [&lt;803a7670&gt;] (clk_unprepare) from [&lt;804f36ec&gt;] (aspeed_video_off+0x38/0x50)
[  515.655539]  r5:9e5151a0 r4:9e504000
[  515.659242] [&lt;804f36b4&gt;] (aspeed_video_off) from [&lt;804f4358&gt;] (aspeed_video_release+0x90/0x114)
[  515.668036]  r5:9e5044b0 r4:9e504000
[  515.671643] [&lt;804f42c8&gt;] (aspeed_video_release) from [&lt;804d302c&gt;] (v4l2_release+0xd4/0xe8)
[  515.679999]  r7:98d682a8 r6:9d087810 r5:9d8a9200 r4:9e504318
[  515.685695] [&lt;804d2f58&gt;] (v4l2_release) from [&lt;80236454&gt;] (__fput+0x98/0x1c4)
[  515.692914]  r5:9e51b608 r4:9d8a9200
[  515.696597] [&lt;802363bc&gt;] (__fput) from [&lt;802365e8&gt;] (____fput+0x18/0x1c)
[  515.703315]  r9:80a0700c r8:801011e4 r7:00000000 r6:80a64b9c r5:9d8e35a0 r4:9d8e38dc
[  515.711167] [&lt;802365d0&gt;] (____fput) from [&lt;80131ca4&gt;] (task_work_run+0x7c/0xa0)
[  515.718596] [&lt;80131c28&gt;] (task_work_run) from [&lt;80106884&gt;] (do_work_pending+0x4a8/0x578)
[  515.726777]  r7:801011e4 r6:80a07008 r5:9d88ffb0 r4:ffffe000
[  515.732466] [&lt;801063dc&gt;] (do_work_pending) from [&lt;8010106c&gt;] (slow_work_pending+0xc/0x20)
[  515.740727] Exception stack(0x9d88ffb0 to 0x9d88fff8)
[  515.745840] ffa0:                                     00000000 76f18094 00000000 00000000
[  515.754122] ffc0: 00000007 00176778 7eda4c20 00000006 00000000 00000000 48e20fa4 00000000
[  515.762386] ffe0: 00000002 7eda4b08 00000000 48f91efc 80000010 00000007
[  515.769097]  r10:00000000 r9:9d88e000 r8:801011e4 r7:00000006 r6:7eda4c20 r5:00176778
[  515.777006]  r4:00000007
[  515.779558] ---[ end trace 12c04aadef8afbbb ]---
[  515.784176] ------------[ cut here ]------------
[  515.788817] WARNING: CPU: 0 PID: 1310 at drivers/clk/clk.c:825 clk_core_disable+0x18c/0x204
[  515.797161] eclk-gate already disabled
[  515.800916] CPU: 0 PID: 1310 Comm: obmc-ikvm Tainted: G        W         5.0.6-df66fbc97853fbba90a0bfa44de32f3d5f7602b4 #1
[  515.811945] Hardware name: Generic DT based system
[  515.816730] Backtrace:
[  515.819210] [&lt;80107cdc&gt;] (dump_backtrace) from [&lt;80107f10&gt;] (show_stack+0x20/0x24)
[  515.826782]  r7:803a5900 r6:00000009 r5:00000000 r4:9d88fe04
[  515.832454] [&lt;80107ef0&gt;] (show_stack) from [&lt;80690184&gt;] (dump_stack+0x20/0x28)
[  515.839687] [&lt;80690164&gt;] (dump_stack) from [&lt;80116044&gt;] (__warn.part.3+0xb4/0xdc)
[  515.847170] [&lt;80115f90&gt;] (__warn.part.3) from [&lt;801160d8&gt;] (warn_slowpath_fmt+0x6c/0x90)
[  515.855247]  r6:00000339 r5:8080befc r4:80a07008
[  515.859868] [&lt;80116070&gt;] (warn_slowpath_fmt) from [&lt;803a5900&gt;] (clk_core_disable+0x18c/0x204)
[  515.868385]  r3:8080cdd0 r2:8080c00c
[  515.871957]  r7:98d682a8 r6:9d8a9200 r5:97abd560 r4:97abd560
[  515.877615] [&lt;803a5774&gt;] (clk_core_disable) from [&lt;803a59a0&gt;] (clk_core_disable_lock+0x28/0x34)
[  515.886301]  r7:98d682a8 r6:9d8a9200 r5:97abd560 r4:a0000013
[  515.891960] [&lt;803a5978&gt;] (clk_core_disable_lock) from [&lt;803a7714&gt;] (clk_disable+0x2c/0x30)
[  515.900216]  r5:9e5151a0 r4:9e515f60
[  515.903816] [&lt;803a76e8&gt;] (clk_disable) from [&lt;804f36f8&gt;] (aspeed_video_off+0x44/0x50)
[  515.911656] [&lt;804f36b4&gt;] (aspeed_video_off) from [&lt;804f4358&gt;] (aspeed_video_release+0x90/0x114)
[  515.920341]  r5:9e5044b0 r4:9e504000
[  515.923921] [&lt;804f42c8&gt;] (aspeed_video_release) from [&lt;804d302c&gt;] (v4l2_release+0xd4/0xe8)
[  515.932184]  r7:98d682a8 r6:9d087810 r5:9d8a9200 r4:9e504318
[  515.937851] [&lt;804d2f58&gt;] (v4l2_release) from [&lt;80236454&gt;] (__fput+0x98/0x1c4)
[  515.944980]  r5:9e51b608 r4:9d8a9200
[  515.948559] [&lt;802363bc&gt;] (__fput) from [&lt;802365e8&gt;] (____fput+0x18/0x1c)
[  515.955257]  r9:80a0700c r8:801011e4 r7:00000000 r6:80a64b9c r5:9d8e35a0 r4:9d8e38dc
[  515.963008] [&lt;802365d0&gt;] (____fput) from [&lt;80131ca4&gt;] (task_work_run+0x7c/0xa0)
[  515.970333] [&lt;80131c28&gt;] (task_work_run) from [&lt;80106884&gt;] (do_work_pending+0x4a8/0x578)
[  515.978421]  r7:801011e4 r6:80a07008 r5:9d88ffb0 r4:ffffe000
[  515.984086] [&lt;801063dc&gt;] (do_work_pending) from [&lt;8010106c&gt;] (slow_work_pending+0xc/0x20)
[  515.992247] Exception stack(0x9d88ffb0 to 0x9d88fff8)
[  515.997296] ffa0:                                     00000000 76f18094 00000000 00000000
[  516.005473] ffc0: 00000007 00176778 7eda4c20 00000006 00000000 00000000 48e20fa4 00000000
[  516.013642] ffe0: 00000002 7eda4b08 00000000 48f91efc 80000010 00000007
[  516.020257]  r10:00000000 r9:9d88e000 r8:801011e4 r7:00000006 r6:7eda4c20 r5:00176778
[  516.028072]  r4:00000007
[  516.030606] ---[ end trace 12c04aadef8afbbc ]---

To prevent this issue, this commit adds clock status checking
logic into the Aspeed video engine driver.

Signed-off-by: Jae Hyun Yoo &lt;jae.hyun.yoo@linux.intel.com&gt;
Reviewed-by: Eddie James &lt;eajames@linux.ibm.com&gt;
Signed-off-by: Hans Verkuil &lt;hverkuil-cisco@xs4all.nl&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab+samsung@kernel.org&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</pre>
</div>
</content>
</entry>
</feed>
