aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2022-03-18media: amphion: fix some issues to improve robustMing Qian11-43/+78
fix some issues reported by Dan, 1. fix some signedness bug 2. don't use u32 as function return value 3. prevent a divide by zero bug 4. Just return zero on success, don't return a known parameter 5. check the validity of some variables 6. reset buffer state when return buffers 7. make sure the ALIGN won't wrap to zero Signed-off-by: Ming Qian <[email protected]> Reported-by: Dan Carpenter <[email protected]> Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: amphion: fix some error related with undefined reference to __divdi3Ming Qian5-60/+19
1. use ns_to_timespec64 instead of division method 2. use timespec64_to_ns instead of custom macro 3. remove unused custom macro 4. don't modify minus timestamp 5. remove some unused debug timestamp information Signed-off-by: Ming Qian <[email protected]> Reported-by: kernel test robot <[email protected]> Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: amphion: fix an issue that using pm_runtime_get_sync incorrectlyMing Qian3-11/+5
pm_runtime_get_sync() also returns 1 on success. The documentation for pm_runtime_get_sync() suggests using pm_runtime_resume_and_get() instead Signed-off-by: Ming Qian <[email protected]> Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: vidtv: use vfree() for memory allocated with vzalloc()Yihao Han1-1/+1
It is allocated with vzalloc(), the corresponding release function should not be kfree(), use vfree() instead. Generated by: scripts/coccinelle/api/kfree_mismatch.cocci Signed-off-by: Yihao Han <[email protected]> Signed-off-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: m5mols/m5mols.h: document new reset fieldHans Verkuil1-0/+1
The new reset field in struct m5mols_info was not documented, add this. This fixes a kerneldoc warning: drivers/media/i2c/m5mols/m5mols.h:244: warning: Function parameter or member 'reset' not described in 'm5mols_info' Signed-off-by: Hans Verkuil <[email protected]> Fixes: aaaf357fa61c (media: m5mols: Convert to use GPIO descriptors) Reviewed-by: Linus Walleij <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: pixfmt-yuv-planar.rst: fix PIX_FMT labelsHans Verkuil1-2/+3
Two labels used _ instead of - so were never found and one new PIX_FMT was missing the label altogether. This led to these warnings: Documentation/output/videodev2.h.rst:6: WARNING: undefined label: v4l2-pix-fmt-nv12m-8l128 Documentation/output/videodev2.h.rst:6: WARNING: undefined label: v4l2-pix-fmt-nv12m-10be-8l128 Documentation/output/videodev2.h.rst:6: WARNING: undefined label: v4l2-pix-fmt-mm21 Signed-off-by: Hans Verkuil <[email protected]> Fixes: 72a74c8f0a0d ("media: add nv12m_8l128 and nv12m_10be_8l128 video format.") Reported-by: Stephen Rothwell <[email protected]> Acked-by: Nicolas Dufresne <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: Remove unnecessary print function dev_err()Yang Li2-6/+2
The print function dev_err() is redundant because platform_get_irq() already prints an error. Eliminate the follow coccicheck warnings: ./drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_drv.c:119:2-9: line 119 is redundant because platform_get_irq() already prints an error ./drivers/media/platform/mediatek/vcodec/mtk_vcodec_dec_hw.c:103:2-9: line 103 is redundant because platform_get_irq() already prints an error Link: https://lore.kernel.org/linux-media/[email protected] Reported-by: Abaci Robot <[email protected]> Signed-off-by: Yang Li <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: amphion: Add missing of_node_put() in vpu_core_parse_dt()Xiongfeng Wang1-0/+8
of_parse_phandle() will increment the refcount of the returned device_node. Calling of_node_put() to avoid the refcount leak. Link: https://lore.kernel.org/linux-media/[email protected] Signed-off-by: Xiongfeng Wang <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: mtk-vcodec: Add missing of_node_put() in mtk_vdec_hw_prob_done()Xiongfeng Wang1-0/+2
of_find_compatible_node() will increment the refcount of the returned device_node. Calling of_node_put() to avoid the refcount leak. Link: https://lore.kernel.org/linux-media/[email protected] Signed-off-by: Xiongfeng Wang <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: amphion: Fix build error without MAILBOXYueHaibing1-1/+1
while COMPILE_TEST is y and MAILBOX is n, build fails: ERROR: modpost: "mbox_request_channel_byname" [drivers/media/platform/amphion/amphion-vpu.ko] undefined! ERROR: modpost: "mbox_free_channel" [drivers/media/platform/amphion/amphion-vpu.ko] undefined! ERROR: modpost: "mbox_send_message" [drivers/media/platform/amphion/amphion-vpu.ko] undefined! Adding a MAILBOX dependency in VIDEO_AMPHION_VPU to fix this. Link: https://lore.kernel.org/linux-media/[email protected] Fixes: 52b3a219dd4a ("media: platform: amphion: move config to its own file") Signed-off-by: YueHaibing <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: spi: Kconfig: Place SPI drivers on a single menuMauro Carvalho Chehab1-17/+9
It makes no sense to have two menus for SPI drivers, each one with a single driver. Merge them and keep the Kconfig sorted. Suggested-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: i2c: Kconfig: move camera drivers to the topMauro Carvalho Chehab1-713/+713
The camera drivers are the ones that suffer additions/changes on those days. Place them on the top of the I2C drivers. Suggested-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: atomisp: fix bad usage at error handling logicMauro Carvalho Chehab1-9/+19
As warned by sparse: atomisp: drivers/staging/media/atomisp/pci/atomisp_acc.c:508 atomisp_acc_load_extensions() warn: iterator used outside loop: 'acc_fw' The acc_fw interactor is used outside the loop, at the error handling logic. On most cases, this is actually safe there, but, if atomisp_css_set_acc_parameters() has an error, an attempt to use it will pick an invalid value for acc_fw. Reported-by: Hans Verkuil <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename mediatek/mtk-jpeg/ to mediatek/jpeg/Mauro Carvalho Chehab77-15/+15
As the end goal is to have platform drivers split by vendor, rename mediatek/mtk-jpeg/ to mediatek/jpeg/. Requested-by: AngeloGioacchino Del Regno <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: media/*/Kconfig: sort entriesMauro Carvalho Chehab14-1338/+1367
Currently, the idems inside media Kconfig are out of order. Sort them using the script below: <script> use strict; use warnings; my %config; my @source; my $out; sub flush_config() { if (scalar %config) { for my $c (sort keys %config) { $out .= $config{$c} . "\n"; } %config = (); } return if (!scalar @source); $out .= "\n"; for my $s (sort @source) { $out .= $s; } $out .= "\n"; @source = (); } sub sort_kconfig($) { my $fname = shift; my $cur_config = ""; @source = (); $out = ""; %config = (); open IN, $fname or die; while (<IN>) { if (m/^config\s+(.*)/) { $cur_config = $1; $config{$cur_config} .= $_; } elsif (m/^source\s+(.*)/) { push @source, $_; } elsif (m/^\s+/) { if ($cur_config eq "") { $out .= $_; } else { $config{$cur_config} .= $_; } } else { flush_config(); $cur_config = ""; $out .= $_; } } close IN or die; flush_config(); $out =~ s/\n\n+/\n\n/g; $out =~ s/\n+$/\n/; open OUT, ">$fname"; print OUT $out; close OUT; } for my $fname(@ARGV) { sort_kconfig $fname } </script> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: Kconfig: cleanup VIDEO_DEV dependenciesMauro Carvalho Chehab115-374/+356
media Kconfig has two entries associated to V4L API: VIDEO_DEV and VIDEO_V4L2. On Kernel 2.6.x, there were two V4L APIs, each one with its own flag. VIDEO_DEV were meant to: 1) enable Video4Linux and make its Kconfig options to appear; 2) it makes the Kernel build the V4L core. while VIDEO_V4L2 where used to distinguish between drivers that implement the newer API and drivers that implemented the former one. With time, such meaning changed, specially after the removal of all V4L version 1 drivers. At the current implementation, VIDEO_DEV only does (1): it enables the media options related to V4L, that now has: menu "Video4Linux options" visible if VIDEO_DEV source "drivers/media/v4l2-core/Kconfig" endmenu but it doesn't affect anymore the V4L core drivers. The rationale is that the V4L2 core has a "soft" dependency at the I2C bus, and now requires to select a number of other Kconfig options: config VIDEO_V4L2 tristate depends on (I2C || I2C=n) && VIDEO_DEV select RATIONAL select VIDEOBUF2_V4L2 if VIDEOBUF2_CORE default (I2C || I2C=n) && VIDEO_DEV In the past, merging them would be tricky, but it seems that it is now possible to merge those symbols, in order to simplify V4L dependencies. Let's keep VIDEO_DEV, as this one is used on some make *defconfig configurations. Suggested-by: Laurent Pinchart <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Reviewed-by: Jacopo Mondi <[email protected]> Reviewed-by: Neil Armstrong <[email protected]> # for meson-vdec & meson-ge2d Acked-by: Andrzej Pietrasiewicz <[email protected]> Acked-by: Łukasz Stelmach <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform/*/Kconfig: make manufacturer menus more uniformMauro Carvalho Chehab19-33/+53
Do some adjustments at the per-vendor Kconfig, adding a comment at the beginning in order to identify the manufacturer, and adjust a few entries to make them look more uniform. Reviewed-by: Laurent Pinchart <[email protected]> Acked-by: Jernej Skrabec <[email protected]> # For sunxi Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: Create vendor/{Makefile,Kconfig} filesMauro Carvalho Chehab17-46/+79
Instead of placing multiple per-vendor entries at the platform/{Makefile,Kconfig}, create them at the per-vendor directories. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: ti/Kconfig: move VPE/CAL entries to itMauro Carvalho Chehab1-2/+4
In order to follow the changes made by the previous patch, which moved platform/ti-vpe to platform/ti, move the Kconfig entries to the same place. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: re-structure TI driversPratyush Yadav20-10/+9
The ti-vpe/ sub-directory does not only contain the VPE-specific things. It also contains the CAL driver, which is a completely different subsystem. This is also not a good place to add new drivers for other TI platforms since they will all get mixed up. Separate the VPE and CAL parts into different sub-directories and rename the ti-vpe/ sub-directory to ti/. This is now the place where new TI platform drivers can be added. [mchehab: rebased to apple on the top of media/platform/Kconfig series] Signed-off-by: Pratyush Yadav <[email protected]> Reviewed-by: Tomi Valkeinen <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename omap/ to ti/omap/Mauro Carvalho Chehab10-2/+2
As the end goal is to have platform drivers split by vendor, rename omap/ to ti/omap/. Reviewed-by: Laurent Pinchart <[email protected]> Reviewed-by: Peter Ujfalusi <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename omap3isp/ to ti/omap3isp/Mauro Carvalho Chehab37-6/+6
As the end goal is to have platform drivers split by vendor, rename omap3isp/ to ti/omap3isp/. Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename davinci/ to ti/davinci/Mauro Carvalho Chehab27-13/+13
As the end goal is to have platform drivers split by vendor, rename davinci/ to ti/davinci/. Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename am437x/ to ti/am437x/Mauro Carvalho Chehab8-1/+3
As the end goal is to have platform drivers split by vendor, rename am437x/ to ti/am437x/. Reviewed-by: Laurent Pinchart <[email protected]> Reviewed-by: Lad Prabhakar <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: place stm32/ and sti/ under st/ dirMauro Carvalho Chehab55-17/+17
As the end goal is to have platform drivers split by vendor, move both stm32/ and sti/ for them to be inside st/ directory. Acked-by: Hugues Fruchet <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename s5p-mfc/ to samsung/s5p-mfc/Mauro Carvalho Chehab36-22/+22
As the end goal is to have platform drivers split by vendor, rename s5p-mfc/ to samsung/s5p-mfc/. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename s5p-jpeg/ to samsung/s5p-jpeg/Mauro Carvalho Chehab16-11/+11
As the end goal is to have platform drivers split by vendor, rename s5p-jpeg/ to samsung/s5p-jpeg/. Acked-by: Andrzej Pietrasiewicz <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename s5p-g2d/ to samsung/s5p-g2d/Mauro Carvalho Chehab9-3/+3
As the end goal is to have platform drivers split by vendor, rename s5p-g2d/ to samsung/s5p-g2d/. Acked-by: Łukasz Stelmach <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename s3c-camif/ to samsung/s3c-camif/Mauro Carvalho Chehab10-3/+3
As the end goal is to have platform drivers split by vendor, rename s3c-camif/ to samsung/s3c-camif/. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename exynos-gsc/ to samsung/exynos-gsc/Mauro Carvalho Chehab9-2/+2
As the end goal is to have platform drivers split by vendor, rename exynos-gsc/ to samsung/exynos-gsc/. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename exynos4-is/ to samsung/exynos4-is/Mauro Carvalho Chehab40-11/+11
As the end goal is to have platform drivers split by vendor, rename exynos4-is/ to samsung/exynos4-is/. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename tegra/vde/ to nvidia/tegra-vde/Mauro Carvalho Chehab13-4/+7
As the end goal is to have platform drivers split by vendor, rename tegra/vde/ to nvidia/tegra-vde/. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename mtk-vpu/ to mediatek/mtk-vpu/Mauro Carvalho Chehab8-5/+5
As the end goal is to have platform drivers split by vendor, rename mtk-vpu/ to mediatek/mtk-vpu/. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename mtk-vcodec/ to mediatek/mtk-vcodec/Mauro Carvalho Chehab49-3/+3
As the end goal is to have platform drivers split by vendor, rename mtk-vcodec/ to mediatek/mtk-vcodec/. Acked-by: Nicolas Dufresne <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename mtk-mdp/ to mediatek/mtk-mdp/Mauro Carvalho Chehab16-3/+3
As the end goal is to have platform drivers split by vendor, rename mtk-mdp/ to mediatek/mtk-mdp/. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename mtk-jpeg/ to mediatek/mtk-jpeg/Mauro Carvalho Chehab14-3/+3
As the end goal is to have platform drivers split by vendor, rename mtk-jpeg/ to mediatek/mtk-jpeg/. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename meson/ge2d/ to amlogic/meson-ge2d/Mauro Carvalho Chehab7-3/+3
As the end goal is to have platform drivers split by vendor, rename meson/ge2d/ to amlogic/meson-ge2d/. Acked-by: Neil Armstrong <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename marvell-ccic/ to marvell/Mauro Carvalho Chehab9-3/+3
As the end goal is to have platform drivers split by vendor, rename marvell-ccic/ to marvell/. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rename coda/ to chips-media/Mauro Carvalho Chehab17-6/+6
As the end goal is to have platform drivers split by vendor, rename coda/ to chips-media/. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: Kconfig: place platform drivers on a submenuMauro Carvalho Chehab2-3/+15
Just like media bus drivers, place platform drivers on a submenu, in order to better organize user-selection: Media drivers ---> *** media drivers *** [*] Media USB Adapters ---> [*] Media PCI Adapters ---> -*- Radio Adapters ---> [*] Media platform devices ---> *** MMC/SDIO DVB adapters *** < > Siano SMS1xxx based MDTV via SDIO interface [*] V4L test drivers ---> [*] DVB test drivers ---> *** FireWire (IEEE 1394) Adapters *** <*> FireDTV and FloppyDTV *** common driver options *** [ ] Enable Remote Controller support for Siano devices [ ] Enable debugfs for smsdvb As this submenu depends on MEDIA_PLATFORM_DRIVERS and defaults to "y", there's no need to change already-existing .config entries, nor touch the several make *_defconfig. Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: move some manufacturer entriesMauro Carvalho Chehab5-10/+17
As there are 4 manufacturer's directories with multiple sources (qcom, rockchip, sti and sunxi), move the sources from platform/Kconfig to their specific Konfig files. Acked-by: Jernej Skrabec <[email protected]> Reviewed-by: Robert Foss <[email protected]> Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: Kconfig: sort entriesMauro Carvalho Chehab1-51/+39
Now that each non-generic driver has their own directory, sort the entries. Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: s5p-jpeg: move config to its own fileMauro Carvalho Chehab2-12/+13
In order to better organize the platform/Kconfig, place s5p-jpeg-specific config stuff on a separate Kconfig file. Acked-by: Andrzej Pietrasiewicz <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: s5p-mfc: move config to its own fileMauro Carvalho Chehab2-8/+10
In order to better organize the platform/Kconfig, place s5p-mfc-specific config stuff on a separate Kconfig file. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: bdisp: move config to its own fileMauro Carvalho Chehab2-9/+11
In order to better organize the platform/Kconfig, place bdisp-specific config stuff on a separate Kconfig file. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: delta: move config to its own fileMauro Carvalho Chehab2-35/+37
In order to better organize the platform/Kconfig, place delta-specific config stuff on a separate Kconfig file. Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: rkisp1: move config to its own fileMauro Carvalho Chehab2-19/+20
In order to better organize the platform/Kconfig, place rkisp1-specific config stuff on a separate Kconfig file. Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: ti-vpe: move config to its own fileMauro Carvalho Chehab2-59/+63
In order to better organize the platform/Kconfig, place ti-vpe-specific config stuff on a separate Kconfig file. Reviewed-by: Laurent Pinchart <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: vde: move config to its own fileMauro Carvalho Chehab2-18/+18
In order to better organize the platform/Kconfig, place vde-specific config stuff on a separate Kconfig file. Acked-by: Dmitry Osipenko <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>
2022-03-18media: platform: sun8i-rotate: move config to its own fileMauro Carvalho Chehab2-13/+15
In order to better organize the platform/Kconfig, place sun8i-rotate-specific config stuff on a separate Kconfig file. Acked-by: Jernej Skrabec <[email protected]> Signed-off-by: Mauro Carvalho Chehab <[email protected]>