linux/drivers/media/platform
Marek Szyprowski be22203aec media: s5p-mfc: fix reading min scratch buffer size on MFC v6/v7
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<--- 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
...
[<c074f998>] (s5p_mfc_get_min_scratch_buf_size) from [<c0745bc0>] (s5p_mfc_irq+0x814/0xa5c)
[<c0745bc0>] (s5p_mfc_irq) from [<c019a218>] (__handle_irq_event_percpu+0x64/0x3f8)
[<c019a218>] (__handle_irq_event_percpu) from [<c019a5d8>] (handle_irq_event_percpu+0x2c/0x7c)
[<c019a5d8>] (handle_irq_event_percpu) from [<c019a660>] (handle_irq_event+0x38/0x5c)
[<c019a660>] (handle_irq_event) from [<c019ebc4>] (handle_fasteoi_irq+0xc4/0x180)
[<c019ebc4>] (handle_fasteoi_irq) from [<c0199270>] (generic_handle_irq+0x24/0x34)
[<c0199270>] (generic_handle_irq) from [<c0199888>] (__handle_domain_irq+0x7c/0xec)
[<c0199888>] (__handle_domain_irq) from [<c04ac298>] (gic_handle_irq+0x58/0x9c)
[<c04ac298>] (gic_handle_irq) from [<c0101ab0>] (__irq_svc+0x70/0xb0)
Exception stack(0xe73ddc60 to 0xe73ddca8)
...
[<c0101ab0>] (__irq_svc) from [<c01967d8>] (console_unlock+0x5a8/0x6a8)
[<c01967d8>] (console_unlock) from [<c01981d0>] (vprintk_emit+0x118/0x2d8)
[<c01981d0>] (vprintk_emit) from [<c01983b0>] (vprintk_default+0x20/0x28)
[<c01983b0>] (vprintk_default) from [<c01989b4>] (printk+0x30/0x54)
[<c01989b4>] (printk) from [<c07500b8>] (s5p_mfc_init_decode_v6+0x1d4/0x284)
[<c07500b8>] (s5p_mfc_init_decode_v6) from [<c07230d0>] (vb2_start_streaming+0x24/0x150)
[<c07230d0>] (vb2_start_streaming) from [<c0724e4c>] (vb2_core_streamon+0x11c/0x15c)
[<c0724e4c>] (vb2_core_streamon) from [<c07478b8>] (vidioc_streamon+0x64/0xa0)
[<c07478b8>] (vidioc_streamon) from [<c0709640>] (__video_do_ioctl+0x28c/0x45c)
[<c0709640>] (__video_do_ioctl) from [<c0709bc8>] (video_usercopy+0x260/0x8a4)
[<c0709bc8>] (video_usercopy) from [<c02b3820>] (do_vfs_ioctl+0xb0/0x9fc)
[<c02b3820>] (do_vfs_ioctl) from [<c02b41a0>] (ksys_ioctl+0x34/0x58)
[<c02b41a0>] (ksys_ioctl) from [<c0101000>] (ret_fast_syscall+0x0/0x28)
Exception stack(0xe73ddfa8 to 0xe73ddff0)
...
---[ end trace 376cf5ba6e0bee93 ]---

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
2019-06-12 10:46:54 -04:00
..
am437x treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
atmel Linux 5.2-rc4 2019-06-11 12:09:28 -04:00
cadence treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
cec-gpio Linux 5.2-rc2 2019-05-28 11:21:51 -04:00
coda media: drivers: media: coda: fix warning same module names 2019-06-12 10:45:05 -04:00
cros-ec-cec treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
davinci media: davinci: vpif_capture: fix memory leak in vpif_probe() 2019-06-12 10:46:06 -04:00
exynos-gsc Linux 5.2-rc4 2019-06-11 12:09:28 -04:00
exynos4-is Linux 5.2-rc4 2019-06-11 12:09:28 -04:00
marvell-ccic Linux 5.2-rc4 2019-06-11 12:09:28 -04:00
meson media: platform: ao-cec-g12a: remove spin_lock_irqsave() locking in meson_ao_cec_g12a_read/write 2019-06-05 15:57:18 -04:00
mtk-jpeg Linux 5.2-rc4 2019-06-11 12:09:28 -04:00
mtk-mdp Linux 5.2-rc4 2019-06-11 12:09:28 -04:00
mtk-vcodec Linux 5.2-rc4 2019-06-11 12:09:28 -04:00
mtk-vpu Linux 5.2-rc4 2019-06-11 12:09:28 -04:00
omap Linux 5.2-rc2 2019-05-28 11:21:51 -04:00
omap3isp Linux 5.2-rc4 2019-06-11 12:09:28 -04:00
qcom Linux 5.2-rc4 2019-06-11 12:09:28 -04:00
rcar-vin media: rcar-csi2: Fix coccinelle warning for PTR_ERR_OR_ZERO() 2019-05-28 12:50:03 -04:00
rockchip/rga treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
s3c-camif treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
s5p-cec treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
s5p-g2d treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
s5p-jpeg treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
s5p-mfc media: s5p-mfc: fix reading min scratch buffer size on MFC v6/v7 2019-06-12 10:46:54 -04:00
seco-cec treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
sti media: platform: Fix Warning of Unneeded Semicolon reported by coccicheck 2019-06-05 15:25:40 -04:00
stm32 media: stm32-dcmi: fix irq = 0 case 2019-06-05 15:28:32 -04:00
sunxi/sun6i-csi media: sun6i: Support A83T variant 2019-05-29 11:27:55 -04:00
tegra-cec treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 201 2019-05-30 11:29:52 -07:00
ti-vpe media: v4l2: Get rid of ->vidioc_enum_fmt_vid_{cap, out}_mplane 2019-06-05 07:48:32 -04:00
vicodec media: vicodec: improve handling of ENC_CMD_STOP/START 2019-06-11 11:33:44 -04:00
vimc Linux 5.2-rc4 2019-06-11 12:09:28 -04:00
vivid media: vivid: fix incorrect assignment operation when setting video mode 2019-06-05 15:25:15 -04:00
vsp1 drm pull request for 5.2 2019-05-08 21:35:19 -07:00
xilinx media: Kconfig files: use the right help coding style 2019-03-20 06:47:51 -04:00
Kconfig Linux 5.2-rc2 2019-05-28 11:21:51 -04:00
Makefile media: soc_camera: Move to the staging tree 2019-02-18 12:09:19 -05:00
aspeed-video.c media: aspeed: use different delays for triggering VE H/W reset 2019-06-05 15:54:39 -04:00
fsl-viu.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
imx-pxp.c media: replace strncpy() by strscpy() 2019-03-29 10:26:13 -04:00
imx-pxp.h media: imx-pxp: add i.MX Pixel Pipeline driver 2018-09-11 13:32:17 -04:00
m2m-deinterlace.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
mx2_emmaprp.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
pxa_camera.c Linux 5.2-rc4 2019-06-11 12:09:28 -04:00
rcar-fcp.c Char/Misc driver patches for 4.19-rc1 2018-08-18 11:04:51 -07:00
rcar_drif.c media: rcar_drif: Remove devm_ioremap_resource() error printing 2019-03-19 13:44:38 -04:00
rcar_fdp1.c media: fdp1: Support M3N and E3 platforms 2019-06-11 12:29:54 -04:00
rcar_jpu.c media: v4l2: Get rid of ->vidioc_enum_fmt_vid_{cap, out}_mplane 2019-06-05 07:48:32 -04:00
renesas-ceu.c media: v4l2: Get rid of ->vidioc_enum_fmt_vid_{cap, out}_mplane 2019-06-05 07:48:32 -04:00
sh_veu.c media: platform/sh_veu.c: remove redundant NULL pointer checks 2019-03-19 13:49:19 -04:00
sh_vou.c media: doc-rst: Fix broken references 2018-11-23 05:42:49 -05:00
via-camera.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 354 2019-06-05 17:37:09 +02:00
via-camera.h media: fix usage of whitespaces and on indentation 2018-01-04 13:12:01 -05:00
video-mux.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 157 2019-05-30 11:26:37 -07:00
vim2m.c media: vim2m: fix two double-free issues 2019-05-28 12:49:42 -04:00