platform/kernel/linux-rpi.git
2 years agomedia: Kconfig: cleanup VIDEO_DEV dependencies
Mauro Carvalho Chehab [Sun, 13 Mar 2022 06:25:46 +0000 (07:25 +0100)]
media: Kconfig: cleanup VIDEO_DEV dependencies

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 <laurent.pinchart@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
Reviewed-by: Neil Armstrong <narmstrong@baylibre.com> # for meson-vdec & meson-ge2d
Acked-by: Andrzej Pietrasiewicz <andrzejtp2010@gmail.com>
Acked-by: Łukasz Stelmach <l.stelmach@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform/*/Kconfig: make manufacturer menus more uniform
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:34:06 +0000 (11:34 +0100)]
media: platform/*/Kconfig: make manufacturer menus more uniform

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 <laurent.pinchart@ideasonboard.com>
Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com> # For sunxi
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: Create vendor/{Makefile,Kconfig} files
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:21 +0000 (11:18 +0100)]
media: platform: Create vendor/{Makefile,Kconfig} files

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 <mchehab@kernel.org>
2 years agomedia: platform: ti/Kconfig: move VPE/CAL entries to it
Mauro Carvalho Chehab [Mon, 14 Mar 2022 12:39:20 +0000 (13:39 +0100)]
media: platform: ti/Kconfig: move VPE/CAL entries to it

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 <mchehab@kernel.org>
2 years agomedia: platform: re-structure TI drivers
Pratyush Yadav [Fri, 21 Jan 2022 14:29:00 +0000 (19:59 +0530)]
media: platform: re-structure TI drivers

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 <p.yadav@ti.com>
Reviewed-by: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: rename omap/ to ti/omap/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:20 +0000 (11:18 +0100)]
media: platform: rename omap/ to ti/omap/

As the end goal is to have platform drivers split by vendor,
rename omap/ to ti/omap/.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Peter Ujfalusi <peter.ujfalusi@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: rename omap3isp/ to ti/omap3isp/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:20 +0000 (11:18 +0100)]
media: platform: rename omap3isp/ to ti/omap3isp/

As the end goal is to have platform drivers split by vendor,
rename omap3isp/ to ti/omap3isp/.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: rename davinci/ to ti/davinci/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:19 +0000 (11:18 +0100)]
media: platform: rename davinci/ to ti/davinci/

As the end goal is to have platform drivers split by vendor,
rename davinci/ to ti/davinci/.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: rename am437x/ to ti/am437x/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:19 +0000 (11:18 +0100)]
media: platform: rename am437x/ to ti/am437x/

As the end goal is to have platform drivers split by vendor,
rename am437x/ to ti/am437x/.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Lad Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: place stm32/ and sti/ under st/ dir
Mauro Carvalho Chehab [Mon, 14 Mar 2022 11:43:10 +0000 (12:43 +0100)]
media: platform: place stm32/ and sti/ under st/ dir

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 <hugues.fruchet@st.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: rename s5p-mfc/ to samsung/s5p-mfc/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:18 +0000 (11:18 +0100)]
media: platform: rename s5p-mfc/ to samsung/s5p-mfc/

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 <mchehab@kernel.org>
2 years agomedia: platform: rename s5p-jpeg/ to samsung/s5p-jpeg/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:17 +0000 (11:18 +0100)]
media: platform: rename s5p-jpeg/ to samsung/s5p-jpeg/

As the end goal is to have platform drivers split by vendor,
rename s5p-jpeg/ to samsung/s5p-jpeg/.

Acked-by: Andrzej Pietrasiewicz <andrzejtp2010@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: rename s5p-g2d/ to samsung/s5p-g2d/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:17 +0000 (11:18 +0100)]
media: platform: rename s5p-g2d/ to samsung/s5p-g2d/

As the end goal is to have platform drivers split by vendor,
rename s5p-g2d/ to samsung/s5p-g2d/.

Acked-by: Łukasz Stelmach <l.stelmach@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: rename s3c-camif/ to samsung/s3c-camif/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:16 +0000 (11:18 +0100)]
media: platform: rename s3c-camif/ to samsung/s3c-camif/

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 <mchehab@kernel.org>
2 years agomedia: platform: rename exynos-gsc/ to samsung/exynos-gsc/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:16 +0000 (11:18 +0100)]
media: platform: rename exynos-gsc/ to samsung/exynos-gsc/

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 <mchehab@kernel.org>
2 years agomedia: platform: rename exynos4-is/ to samsung/exynos4-is/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:16 +0000 (11:18 +0100)]
media: platform: rename exynos4-is/ to samsung/exynos4-is/

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 <mchehab@kernel.org>
2 years agomedia: platform: rename tegra/vde/ to nvidia/tegra-vde/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:15 +0000 (11:18 +0100)]
media: platform: rename tegra/vde/ to nvidia/tegra-vde/

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 <mchehab@kernel.org>
2 years agomedia: platform: rename mtk-vpu/ to mediatek/mtk-vpu/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:14 +0000 (11:18 +0100)]
media: platform: rename mtk-vpu/ to mediatek/mtk-vpu/

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 <mchehab@kernel.org>
2 years agomedia: platform: rename mtk-vcodec/ to mediatek/mtk-vcodec/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:13 +0000 (11:18 +0100)]
media: platform: rename mtk-vcodec/ to mediatek/mtk-vcodec/

As the end goal is to have platform drivers split by vendor,
rename mtk-vcodec/ to mediatek/mtk-vcodec/.

Acked-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: rename mtk-mdp/ to mediatek/mtk-mdp/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:13 +0000 (11:18 +0100)]
media: platform: rename mtk-mdp/ to mediatek/mtk-mdp/

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 <mchehab@kernel.org>
2 years agomedia: platform: rename mtk-jpeg/ to mediatek/mtk-jpeg/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:13 +0000 (11:18 +0100)]
media: platform: rename mtk-jpeg/ to mediatek/mtk-jpeg/

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 <mchehab@kernel.org>
2 years agomedia: platform: rename meson/ge2d/ to amlogic/meson-ge2d/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:12 +0000 (11:18 +0100)]
media: platform: rename meson/ge2d/ to amlogic/meson-ge2d/

As the end goal is to have platform drivers split by vendor,
rename meson/ge2d/ to amlogic/meson-ge2d/.

Acked-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: rename marvell-ccic/ to marvell/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:12 +0000 (11:18 +0100)]
media: platform: rename marvell-ccic/ to marvell/

As the end goal is to have platform drivers split by vendor,
rename marvell-ccic/ to marvell/.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: rename coda/ to chips-media/
Mauro Carvalho Chehab [Sun, 13 Mar 2022 10:18:11 +0000 (11:18 +0100)]
media: platform: rename coda/ to chips-media/

As the end goal is to have platform drivers split by vendor,
rename coda/ to chips-media/.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: Kconfig: place platform drivers on a submenu
Mauro Carvalho Chehab [Sun, 13 Mar 2022 05:47:32 +0000 (06:47 +0100)]
media: platform: Kconfig: place platform drivers on a submenu

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 <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: move some manufacturer entries
Mauro Carvalho Chehab [Fri, 11 Mar 2022 13:20:46 +0000 (14:20 +0100)]
media: platform: move some manufacturer entries

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 <jernej.skrabec@gmail.com>
Reviewed-by: Robert Foss <robert.foss@linaro.org>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: Kconfig: sort entries
Mauro Carvalho Chehab [Fri, 11 Mar 2022 13:16:38 +0000 (14:16 +0100)]
media: platform: Kconfig: sort entries

Now that each non-generic driver has their own directory,
sort the entries.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: s5p-jpeg: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 12:38:15 +0000 (13:38 +0100)]
media: platform: s5p-jpeg: move config to its own file

In order to better organize the platform/Kconfig, place
s5p-jpeg-specific config stuff on a separate Kconfig file.

Acked-by: Andrzej Pietrasiewicz <andrzejtp2010@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: s5p-mfc: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 12:36:27 +0000 (13:36 +0100)]
media: platform: s5p-mfc: move config to its own file

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 <mchehab@kernel.org>
2 years agomedia: platform: bdisp: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 12:34:39 +0000 (13:34 +0100)]
media: platform: bdisp: move config to its own file

In order to better organize the platform/Kconfig, place
bdisp-specific config stuff on a separate Kconfig file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: delta: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 12:29:17 +0000 (13:29 +0100)]
media: platform: delta: move config to its own file

In order to better organize the platform/Kconfig, place
delta-specific config stuff on a separate Kconfig file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: rkisp1: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 12:24:31 +0000 (13:24 +0100)]
media: platform: rkisp1: move config to its own file

In order to better organize the platform/Kconfig, place
rkisp1-specific config stuff on a separate Kconfig file.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: ti-vpe: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:49:30 +0000 (12:49 +0100)]
media: platform: ti-vpe: move config to its own file

In order to better organize the platform/Kconfig, place
ti-vpe-specific config stuff on a separate Kconfig file.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: vde: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:47:45 +0000 (12:47 +0100)]
media: platform: vde: move config to its own file

In order to better organize the platform/Kconfig, place
vde-specific config stuff on a separate Kconfig file.

Acked-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: sun8i-rotate: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:43:29 +0000 (12:43 +0100)]
media: platform: sun8i-rotate: move config to its own file

In order to better organize the platform/Kconfig, place
sun8i-rotate-specific config stuff on a separate Kconfig file.

Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: sun8i-di: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:41:19 +0000 (12:41 +0100)]
media: platform: sun8i-di: move config to its own file

In order to better organize the platform/Kconfig, place
sun8i-di-specific config stuff on a separate Kconfig file.

Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: stm32: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:40:11 +0000 (12:40 +0100)]
media: platform: stm32: move config to its own file

In order to better organize the platform/Kconfig, place
stm32-specific config stuff on a separate Kconfig file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: hva: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:38:45 +0000 (12:38 +0100)]
media: platform: hva: move config to its own file

In order to better organize the platform/Kconfig, place
hva-specific config stuff on a separate Kconfig file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: s5p-g2d: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:37:24 +0000 (12:37 +0100)]
media: platform: s5p-g2d: move config to its own file

In order to better organize the platform/Kconfig, place
s5p-g2d-specific config stuff on a separate Kconfig file.

Acked-by: Łukasz Stelmach <l.stelmach@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: s3c-camif: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:36:46 +0000 (12:36 +0100)]
media: platform: s3c-camif: move config to its own file

In order to better organize the platform/Kconfig, place
s3c-camif-specific config stuff on a separate Kconfig file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: rga: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:36:04 +0000 (12:36 +0100)]
media: platform: rga: move config to its own file

In order to better organize the platform/Kconfig, place
rga-specific config stuff on a separate Kconfig file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: venus: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:35:22 +0000 (12:35 +0100)]
media: platform: venus: move config to its own file

In order to better organize the platform/Kconfig, place
venus-specific config stuff on a separate Kconfig file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: camss: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:34:07 +0000 (12:34 +0100)]
media: platform: camss: move config to its own file

In order to better organize the platform/Kconfig, place
camss-specific config stuff on a separate Kconfig file.

Reviewed-by: Robert Foss <robert.foss@linaro.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: omap3isp: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:32:30 +0000 (12:32 +0100)]
media: platform: omap3isp: move config to its own file

In order to better organize the platform/Kconfig, place
omap3isp-specific config stuff on a separate Kconfig file.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: mtk-vpu: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:31:51 +0000 (12:31 +0100)]
media: platform: mtk-vpu: move config to its own file

In order to better organize the platform/Kconfig, place
mtk-vpu-specific config stuff on a separate Kconfig file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: mtk-vcodec: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:31:11 +0000 (12:31 +0100)]
media: platform: mtk-vcodec: move config to its own file

In order to better organize the platform/Kconfig, place
mtk-vcodec-specific config stuff on a separate Kconfig file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: mtk-mdp: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:29:59 +0000 (12:29 +0100)]
media: platform: mtk-mdp: move config to its own file

In order to better organize the platform/Kconfig, place
mtk-mdp-specific config stuff on a separate Kconfig file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: mtk-jpeg: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:29:12 +0000 (12:29 +0100)]
media: platform: mtk-jpeg: move config to its own file

In order to better organize the platform/Kconfig, place
mtk-jpeg-specific config stuff on a separate Kconfig file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: ge2d: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:28:13 +0000 (12:28 +0100)]
media: platform: ge2d: move config to its own file

In order to better organize the platform/Kconfig, place
ge2d-specific config stuff on a separate Kconfig file.

Acked-by: Neil Armstrong <narmstrong@baylibre.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: exynos-gsc: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:26:30 +0000 (12:26 +0100)]
media: platform: exynos-gsc: move config to its own file

In order to better organize the platform/Kconfig, place
exynos-gsc-specific config stuff on a separate Kconfig file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: coda: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:25:33 +0000 (12:25 +0100)]
media: platform: coda: move config to its own file

In order to better organize the platform/Kconfig, place
coda-specific config stuff on a separate Kconfig file.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: amphion: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:24:34 +0000 (12:24 +0100)]
media: platform: amphion: move config to its own file

In order to better organize the platform/Kconfig, place
amphion-specific config stuff on a separate Kconfig file.

Reviewed-by: Shijie Qin <shijie.qin@nxp.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: allegro-dvt: move config to its own file
Mauro Carvalho Chehab [Fri, 11 Mar 2022 11:22:38 +0000 (12:22 +0100)]
media: platform: allegro-dvt: move config to its own file

In order to better organize the platform/Kconfig, place
allegro-dvt-specific config stuff on a separate Kconfig file.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: place Renesas drivers on a separate dir
Mauro Carvalho Chehab [Thu, 10 Mar 2022 15:33:16 +0000 (16:33 +0100)]
media: platform: place Renesas drivers on a separate dir

In order to cleanup the main platform media directory, move Renesas
driver to its own directory.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: place Via drivers on a separate dir
Mauro Carvalho Chehab [Fri, 11 Mar 2022 09:06:44 +0000 (10:06 +0100)]
media: platform: place Via drivers on a separate dir

In order to cleanup the main platform media directory, move Via
driver to its own directory.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: place Intel drivers on a separate dir
Mauro Carvalho Chehab [Fri, 11 Mar 2022 08:56:53 +0000 (09:56 +0100)]
media: platform: place Intel drivers on a separate dir

In order to cleanup the main platform media directory, move Intel
driver to its own directory.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: place NXP drivers on a separate dir
Mauro Carvalho Chehab [Thu, 10 Mar 2022 15:40:21 +0000 (16:40 +0100)]
media: platform: place NXP drivers on a separate dir

In order to cleanup the main platform media directory, move NXP
drivers to their own directory.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: place Aspeed driver on a separate dir
Mauro Carvalho Chehab [Fri, 11 Mar 2022 09:01:12 +0000 (10:01 +0100)]
media: platform: place Aspeed driver on a separate dir

In order to cleanup the main platform media directory, move Aspeed
driver to its own directory.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: move platform menu dependencies to drivers
Mauro Carvalho Chehab [Fri, 11 Mar 2022 10:21:45 +0000 (11:21 +0100)]
media: platform: move platform menu dependencies to drivers

Right now, platform dependencies are organized by the type of
the platform driver. Yet, things tend to become very messy with
time. The better seems to organize the drivers per manufacturer,
as other Kernel subsystems are doing.

As a preparation for such purpose, get rid of menuconfigs,
moving the per-menu dependencies to be at the driver-specifig
config entires.

This shoud give flexibility to reorganize the platform drivers
per manufacturer and re-sort them.

This patch removes all "if..endif" options from the platform
Kconfig, converting them into depends on.

Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: platform: Makefile: reorganize its contents
Mauro Carvalho Chehab [Thu, 10 Mar 2022 14:48:58 +0000 (15:48 +0100)]
media: platform: Makefile: reorganize its contents

There are lots of inconsistencies here: some directories are
included as-is, and others included using one (or more) symbols
that are inside it. Also, its entries are not sorted.

That makes it harder to maintain.

Reorganize it by placing everything on alphabetic order and
providing some hints about how patches for such file is expected.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: Makefiles: sort entries where it fits
Mauro Carvalho Chehab [Wed, 9 Mar 2022 13:17:02 +0000 (14:17 +0100)]
media: Makefiles: sort entries where it fits

Alphabetically sort entries at the Makefiles per group,
in ASCII order, e. g., using the output of:

$ LC_ALL=C sort Makefile |grep obj-y
...
$ LC_ALL=C sort Makefile |grep obj.*CONFIG
...

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: Makefiles: remove extra spaces
Mauro Carvalho Chehab [Wed, 9 Mar 2022 13:25:35 +0000 (14:25 +0100)]
media: Makefiles: remove extra spaces

It is hard to keep all those options aligned as newer config
changes get added, and we really don't want to have patches adding
new options also touching already existing entries.

So, drop the extra spaces.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: xc2028: rename the driver from tuner-xc2028
Mauro Carvalho Chehab [Wed, 9 Mar 2022 13:59:01 +0000 (14:59 +0100)]
media: xc2028: rename the driver from tuner-xc2028

This is the only tuner driver that has "tuner-" on its name.

Rename it, in order to match all the other tuner drivers.

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agoMerge tag 'br-v5.18s' of git://linuxtv.org/hverkuil/media_tree into media_stage
Mauro Carvalho Chehab [Mon, 7 Mar 2022 16:38:29 +0000 (17:38 +0100)]
Merge tag 'br-v5.18s' of git://linuxtv.org/hverkuil/media_tree into media_stage

Tag branch

* tag 'br-v5.18s' of git://linuxtv.org/hverkuil/media_tree:
  ivtv: fix incorrect device_caps for ivtvfb
  media: rcar-csi2: Drop comma after SoC match table sentinel
  media: camss: Replace hard coded value with parameter
  media: saa7134: fix incorrect use to determine if list is empty
  media: MAINTAINERS: update rksip1 maintainers info
  MAINTAINERS: update media vimc driver maintainers
  media: i2c: max2175: Use rbtree rather than flat register cache

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agoMerge tag 'br-v5.18r' of git://linuxtv.org/hverkuil/media_tree into media_stage
Mauro Carvalho Chehab [Mon, 7 Mar 2022 16:36:23 +0000 (17:36 +0100)]
Merge tag 'br-v5.18r' of git://linuxtv.org/hverkuil/media_tree into media_stage

Tag branch

* tag 'br-v5.18r' of git://linuxtv.org/hverkuil/media_tree:
  media: amphion: add amphion vpu entry in Kconfig and Makefile
  MAINTAINERS: add AMPHION VPU CODEC V4L2 driver entry
  media: amphion: implement malone decoder rpc interface
  media: amphion: implement windsor encoder rpc interface
  media: amphion: add v4l2 m2m vpu decoder stateful driver
  media: amphion: add v4l2 m2m vpu encoder stateful driver
  media: amphion: add vpu v4l2 m2m support
  media: amphion: implement vpu core communication based on mailbox
  media: amphion: add vpu core driver
  media: amphion: add amphion vpu device driver
  media: add nv12m_8l128 and nv12m_10be_8l128 video format.
  dt-bindings: media: amphion: add amphion video codec bindings

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agoivtv: fix incorrect device_caps for ivtvfb
Hans Verkuil [Sun, 6 Mar 2022 11:29:11 +0000 (12:29 +0100)]
ivtv: fix incorrect device_caps for ivtvfb

The VIDIOC_G_FBUF and related overlay ioctls no longer worked (-ENOTTY was
returned).

The root cause was the introduction of the caps field in ivtv-driver.h.
While loading the ivtvfb module would update the video_device device_caps
field with V4L2_CAP_VIDEO_OUTPUT_OVERLAY it would not update that caps
field, and that's what the overlay ioctls would look at.

It's a bad idea to keep information in two places, so drop the caps field
and only use vdev.device_caps.

Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Reported-by: Martin Dauskardt <martin.dauskardt@gmx.de>
Fixes: 2161536516ed (media: media/pci: set device_caps in struct video_device)

2 years agomedia: rcar-csi2: Drop comma after SoC match table sentinel
Geert Uytterhoeven [Thu, 3 Mar 2022 12:43:57 +0000 (13:43 +0100)]
media: rcar-csi2: Drop comma after SoC match table sentinel

It does not make sense to have a comma after a sentinel, as any new
elements must be added before the sentinel.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agomedia: camss: Replace hard coded value with parameter
Souptick Joarder (HPE) [Tue, 1 Mar 2022 06:05:30 +0000 (11:35 +0530)]
media: camss: Replace hard coded value with parameter

Kernel test robot reported below warning ->
drivers/media/platform/qcom/camss/camss-csid-gen2.c:407:3:
warning: Value stored to 'val' is never read
[clang-analyzer-deadcode.DeadStores]

Replace hard coded value with val.

Reported-by: kernel test robot <lkp@intel.com>
Signed-off-by: Souptick Joarder (HPE) <jrdr.linux@gmail.com>
Reviewed-by: Robert Foss <robert.foss@linaro.org>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agomedia: saa7134: fix incorrect use to determine if list is empty
Jakob Koschel [Mon, 28 Feb 2022 14:26:26 +0000 (15:26 +0100)]
media: saa7134: fix incorrect use to determine if list is empty

'dev' will *always* be set by list_for_each_entry().
It is incorrect to assume that the iterator value will be NULL if the
list is empty.

Instead of checking the pointer it should be checked if
the list is empty.

Fixes: 79dd0c69f05f ("V4L: 925: saa7134 alsa is now a standalone module")
Signed-off-by: Jakob Koschel <jakobkoschel@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agomedia: MAINTAINERS: update rksip1 maintainers info
Dafna Hirschfeld [Sat, 26 Feb 2022 11:35:38 +0000 (13:35 +0200)]
media: MAINTAINERS: update rksip1 maintainers info

Due to changes in maintainers info/position

Signed-off-by: Dafna Hirschfeld <dafna@fastmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agoMAINTAINERS: update media vimc driver maintainers
Shuah Khan [Wed, 23 Feb 2022 00:48:01 +0000 (17:48 -0700)]
MAINTAINERS: update media vimc driver maintainers

Based on the dicussion with Hans Verkuil and others in the thread below,
vimc is need of a maintainer. I will start maintaining the driver with
help from Kieran Bingham as the reviewer.

Link: https://lore.kernel.org/linux-media/5d5dee88-9dbf-e4d0-4a91-11ff4ecd82ea@xs4all.nl/
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
Acked-by: Helen Koike <helen@koikeco.de>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agomedia: i2c: max2175: Use rbtree rather than flat register cache
Mark Brown [Tue, 22 Feb 2022 21:52:44 +0000 (21:52 +0000)]
media: i2c: max2175: Use rbtree rather than flat register cache

The max2175 uses a flat register cache but supplies only a single default
value and has many volatile registers. This is a poor fit for a flat cache
since the cache will assume a default of zero for any register not yet
written which can lead to bugs for example when regmap_update_bits()
suppresses a noop write. A rbtree cache is a much better fit, this will
only cache default values and values that have been written to the device
with any reads of uncached values going to the hardware. Convert the driver
to use a rbtree cache.

Since the device is controlled via I2C the cost of manging the rbtree
should be immaterial compared to the cost of accessing the device.

Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agomedia: amphion: add amphion vpu entry in Kconfig and Makefile
Ming Qian [Thu, 24 Feb 2022 03:10:13 +0000 (11:10 +0800)]
media: amphion: add amphion vpu entry in Kconfig and Makefile

Add V4L2 driver entry for the amphion vpu encoder/decoder.

Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agoMAINTAINERS: add AMPHION VPU CODEC V4L2 driver entry
Ming Qian [Thu, 24 Feb 2022 03:10:11 +0000 (11:10 +0800)]
MAINTAINERS: add AMPHION VPU CODEC V4L2 driver entry

Add AMPHION VPU CODEC v4l2 driver entry

Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Signed-off-by: Zhou Peng <eagle.zhou@nxp.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agomedia: amphion: implement malone decoder rpc interface
Ming Qian [Thu, 24 Feb 2022 03:10:08 +0000 (11:10 +0800)]
media: amphion: implement malone decoder rpc interface

This part implements the malone decoder rpc interface.

Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Signed-off-by: Zhou Peng <eagle.zhou@nxp.com>
Tested-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agomedia: amphion: implement windsor encoder rpc interface
Ming Qian [Thu, 24 Feb 2022 03:10:07 +0000 (11:10 +0800)]
media: amphion: implement windsor encoder rpc interface

This part implements the windsor encoder rpc interface.

Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Signed-off-by: Zhou Peng <eagle.zhou@nxp.com>
Reported-by: kernel test robot <lkp@intel.com>
Tested-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agomedia: amphion: add v4l2 m2m vpu decoder stateful driver
Ming Qian [Thu, 24 Feb 2022 03:10:06 +0000 (11:10 +0800)]
media: amphion: add v4l2 m2m vpu decoder stateful driver

This consists of video decoder implementation plus decoder controls.

Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Signed-off-by: Zhou Peng <eagle.zhou@nxp.com>
Tested-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agomedia: amphion: add v4l2 m2m vpu encoder stateful driver
Ming Qian [Thu, 24 Feb 2022 03:10:05 +0000 (11:10 +0800)]
media: amphion: add v4l2 m2m vpu encoder stateful driver

This consists of video encoder implementation plus encoder controls.

Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Signed-off-by: Zhou Peng <eagle.zhou@nxp.com>
Tested-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agomedia: amphion: add vpu v4l2 m2m support
Ming Qian [Thu, 24 Feb 2022 03:10:04 +0000 (11:10 +0800)]
media: amphion: add vpu v4l2 m2m support

vpu_v4l2.c implements the v4l2 m2m driver methods.
vpu_helpers.c implements the common helper functions
vpu_color.c converts the v4l2 colorspace with
the VUI parameters that specified by ITU-T | ISO/IEC

Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Signed-off-by: Zhou Peng <eagle.zhou@nxp.com>
Reported-by: kernel test robot <lkp@intel.com>
Tested-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agomedia: amphion: implement vpu core communication based on mailbox
Ming Qian [Thu, 24 Feb 2022 03:10:03 +0000 (11:10 +0800)]
media: amphion: implement vpu core communication based on mailbox

driver use mailbox to communicate with vpu core.
and there are a command buffer and a message buffer.
driver will write commands to the command buffer,
then trigger a vpu core interrupt
vpu core will write messages to the message buffer,
then trigger a cpu interrupt.

Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Signed-off-by: Zhou Peng <eagle.zhou@nxp.com>
Reported-by: kernel test robot <lkp@intel.com>
Tested-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agomedia: amphion: add vpu core driver
Ming Qian [Thu, 24 Feb 2022 03:10:02 +0000 (11:10 +0800)]
media: amphion: add vpu core driver

The vpu supports encoder and decoder.
it needs vpu core to handle it.
core will run either encoder or decoder firmware.

This driver is for support the vpu core.

Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Signed-off-by: Zhou Peng <eagle.zhou@nxp.com>
Tested-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agomedia: amphion: add amphion vpu device driver
Ming Qian [Thu, 24 Feb 2022 03:10:01 +0000 (11:10 +0800)]
media: amphion: add amphion vpu device driver

The amphion vpu codec ip contains encoder and decoder.
Windsor is the encoder, it supports to encode H.264.
Malone is the decoder, it features a powerful
video processing unit able to decode many formats,
such as H.264, HEVC, and other formats.

This Driver is for this IP that is based on the v4l2 mem2mem framework.

Supported SoCs are: IMX8QXP, IMX8QM

Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Signed-off-by: Zhou Peng <eagle.zhou@nxp.com>
Reported-by: kernel test robot <lkp@intel.com>
Tested-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agomedia: add nv12m_8l128 and nv12m_10be_8l128 video format.
Ming Qian [Thu, 24 Feb 2022 03:10:00 +0000 (11:10 +0800)]
media: add nv12m_8l128 and nv12m_10be_8l128 video format.

nv12m_8l128 is 8-bit tiled nv12 format used by amphion decoder.
nv12m_10be_8l128 is 10-bit tiled format used by amphion decoder.
The tile size is 8x128

Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Signed-off-by: Zhou Peng <eagle.zhou@nxp.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agodt-bindings: media: amphion: add amphion video codec bindings
Ming Qian [Thu, 24 Feb 2022 03:09:59 +0000 (11:09 +0800)]
dt-bindings: media: amphion: add amphion video codec bindings

Add devicetree binding documentation for amphion
Video Processing Unit IP presents on NXP i.MX8Q

Signed-off-by: Ming Qian <ming.qian@nxp.com>
Signed-off-by: Shijie Qin <shijie.qin@nxp.com>
Signed-off-by: Zhou Peng <eagle.zhou@nxp.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
2 years agoMerge tag 'for-5.18-2.6-signed' of git://linuxtv.org/sailus/media_tree into media_stage
Mauro Carvalho Chehab [Mon, 7 Mar 2022 15:43:02 +0000 (16:43 +0100)]
Merge tag 'for-5.18-2.6-signed' of git://linuxtv.org/sailus/media_tree into media_stage

Even yet more V4L2 patches for 5.18

* tag 'for-5.18-2.6-signed' of git://linuxtv.org/sailus/media_tree:
  media: i2c: Fix pixel array positions in ov8865
  media: adv7183: Convert to GPIO descriptors
  media: m5mols: Convert to use GPIO descriptors
  media: noon010p30: Convert to use GPIO descriptors
  media: mt9m111: Drop unused include
  media: adv7511: Drop unused include
  media: i2c: isl7998x: Add driver for Intersil ISL7998x
  media: dt-bindings: Add Intersil ISL79987 DT bindings
  media: media-entity: Clarify media_entity_cleanup() usage
  media: i2c: imx274: Drop surplus includes
  media: i2c: ccs: Drop unused include
  v4l: fwnode: Remove now-redundant loop from v4l2_fwnode_parse_reference()
  v4l: fwnode: Drop redunant -ENODATA check in property reference parsing
  media: media-entity: Simplify media_pipeline_start()
  media: media-entity: Add media_pad_is_streaming() helper function
  media: Add a driver for the og01a1b camera sensor
  media: i2c: ov5648: Fix lockdep error
  media: ov5640: Fix set format, v4l2_mbus_pixelcode not updated

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: gpio-ir-tx: fix transmit with long spaces on Orange Pi PC
Sean Young [Sun, 20 Feb 2022 14:28:24 +0000 (15:28 +0100)]
media: gpio-ir-tx: fix transmit with long spaces on Orange Pi PC

Calling udelay for than 1000us does not always yield the correct
results.

Cc: stable@vger.kernel.org
Reported-by: Михаил <vrserver1@gmail.com>
Signed-off-by: Sean Young <sean@mess.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: lirc: remove unused feature LIRC_CAN_SET_REC_DUTY_CYCLE
Sean Young [Wed, 9 Feb 2022 16:03:12 +0000 (17:03 +0100)]
media: lirc: remove unused feature LIRC_CAN_SET_REC_DUTY_CYCLE

There is no hardware which can filter input on the duty cycle, so no
driver implements this. On top of that, LIRC_CAN_SET_REC_DUTY_CYCLE
has the same value as LIRC_CAN_MEASURE_CARRIER (0x02000000).

Signed-off-by: Sean Young <sean@mess.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agoMerge tag 'br-v5.18q' of git://linuxtv.org/hverkuil/media_tree into media_stage
Mauro Carvalho Chehab [Mon, 7 Mar 2022 15:26:54 +0000 (16:26 +0100)]
Merge tag 'br-v5.18q' of git://linuxtv.org/hverkuil/media_tree into media_stage

Tag branch

* tag 'br-v5.18q' of git://linuxtv.org/hverkuil/media_tree:
  media: cec: seco: Drop pointless include
  media: hantro: sunxi: Fix VP9 steps
  media: imx: csis: Store pads format separately
  doc: media: Document VP9 reference_mode miss-placement
  doc: media: Document MM21 tiled format
  media: imx: imx8mq-mipi-csi2: Remove YUV422 2X8
  media: v4l2-core: Initialize h264 scaling matrix
  media: imx: imx-mipi-csis: Add output format
  media: imx: imx-mipi-csis: Add BGR888
  media: imx: imx-mipi-csis: Add RGB565_1X16
  media: imx: imx-mipi-csis: Set PIXEL_MODE for YUV422
  media: imx: imx7-media-csi: Use dual sampling for YUV 1X16
  media: imx: Rename imx7-mipi-csis.c to imx-mipi-csis.c
  media: imx: De-stage imx7-mipi-csis

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agoMerge tag 'br-v5.18l' of git://linuxtv.org/hverkuil/media_tree into media_stage
Mauro Carvalho Chehab [Mon, 7 Mar 2022 15:24:56 +0000 (16:24 +0100)]
Merge tag 'br-v5.18l' of git://linuxtv.org/hverkuil/media_tree into media_stage

Tag branch

* tag 'br-v5.18l' of git://linuxtv.org/hverkuil/media_tree: (39 commits)
  media: imx-jpeg: Set V4L2_BUF_FLAG_LAST at eos
  media: meson-ir-tx: remove incorrect doc comment
  media: vivid: use time_is_after_jiffies() instead of open coding it
  media: wl128x: use time_is_before_jiffies() instead of open coding it
  media: tda8083: use time_is_after_jiffies() instead of open coding it
  media: stv0299: use time_is_before_jiffies() instead of open coding it
  media: si21xx: use time_is_before_jiffies() instead of open coding it
  media: cedrus: h264: Fix neighbour info buffer size
  media: cx88-mpeg: clear interrupt status register before streaming video
  media: cedrus: H265: Fix neighbour info buffer size
  media: fsl-viu: use GFP_KERNEL
  media: cx18: use GFP_KERNEL
  drivers: meson: vdec: add VP9 support to GXM
  stkwebcam: add new Asus laptop to upside_down table
  media: imx-jpeg: fix a bug of accessing array out of bounds
  media: sun6i-csi: fix colorspace in sun6i_video_try_fmt()
  media: usb: go7007: s2250-board: fix leak in probe()
  media: cedrus: Add watchdog for job completion
  pixfmt-yuv-planar.rst: fix typo: 'Cr, Cr' -> 'Cr, Cb'
  media: imx-jpeg: Remove unnecessary print function dev_err()
  ...

Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: staging: tegra-vde: De-stage driver
Dmitry Osipenko [Sun, 20 Feb 2022 20:46:21 +0000 (21:46 +0100)]
media: staging: tegra-vde: De-stage driver

The TODO of tegra-vde driver has been completed, driver now supports
V4L2 stateless video decoding API. Relocate driver to drivers/media.

Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: staging: tegra-vde: Bump BSEV DMA timeout
Dmitry Osipenko [Sun, 20 Feb 2022 20:46:20 +0000 (21:46 +0100)]
media: staging: tegra-vde: Bump BSEV DMA timeout

BSEV DMA timeouts if VDE is downclocked by x10. Bump the timeout to allow
DMA to complete. We don't support freq scaling yet, this is just a minor
improvement which may become useful sometime later.

Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: staging: tegra-vde: Remove legacy UAPI support
Dmitry Osipenko [Sun, 20 Feb 2022 20:46:19 +0000 (21:46 +0100)]
media: staging: tegra-vde: Remove legacy UAPI support

The legacy UAPI became unnecessary with the V4L stateless decoder API
support addition to the Tegra decoder driver. Remove legacy UAPI support.

Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: staging: tegra-vde: Support V4L stateless video decoder API
Dmitry Osipenko [Sun, 20 Feb 2022 20:46:18 +0000 (21:46 +0100)]
media: staging: tegra-vde: Support V4L stateless video decoder API

Expose Tegra video decoder as a generic V4L M2M stateless video decoder.

Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: staging: tegra-vde: Factor out H.264 code
Dmitry Osipenko [Sun, 20 Feb 2022 20:46:17 +0000 (21:46 +0100)]
media: staging: tegra-vde: Factor out H.264 code

Factor out H.264 hardware programming code into separate source file in a
preparation to support V4L API by the Tegra video decoder driver.

Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: v4l2-ctrls: Add new V4L2_H264_DECODE_PARAM_FLAG_P/BFRAME flags
Dmitry Osipenko [Sun, 20 Feb 2022 20:46:16 +0000 (21:46 +0100)]
media: v4l2-ctrls: Add new V4L2_H264_DECODE_PARAM_FLAG_P/BFRAME flags

Add new V4L2_H264_DECODE_PARAM_FLAG_P/BFRAME flags that are needed by
NVIDIA Tegra video decoder. Userspace will have to set these flags in
accordance to the type of a decoded frame.

Reviewed-by: Nicolas Dufresne <nicolas@collabora.com>
Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: doc: pixfmt-rgb: Fix V4L2_PIX_FMT_BGR24 format description
Laurent Pinchart [Tue, 15 Feb 2022 11:20:32 +0000 (12:20 +0100)]
media: doc: pixfmt-rgb: Fix V4L2_PIX_FMT_BGR24 format description

The V4L2_PIX_FMT_BGR24 format is incorrectly described, with the B and G
components swapped. Fix it.

Fixes: 2ac9280cb459 ("media: doc: pixfmt-rgb: Make 8 bits per component table more compact")
Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: imx: imx8mq-mipi_csi2: Remove unneeded code
Muhammad Usama Anjum [Fri, 28 Jan 2022 17:07:22 +0000 (18:07 +0100)]
media: imx: imx8mq-mipi_csi2: Remove unneeded code

ret is constant in imx8mq_mipi_csi_pm_suspend(). This function cannot
return error. Remove the return variable. Simplify other functions which
are using this function.

Signed-off-by: Muhammad Usama Anjum <usama.anjum@collabora.com>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: dvb_frontends: make static read-only array fec_tab const
Colin Ian King [Sun, 23 Jan 2022 23:02:42 +0000 (00:02 +0100)]
media: dvb_frontends: make static read-only array fec_tab const

The static array fec_tab is read-only so it make sense to make
it const.

Signed-off-by: Colin Ian King <colin.i.king@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: dib7000p: make static read-only arrays notch and sine const
Colin Ian King [Sun, 23 Jan 2022 22:56:27 +0000 (23:56 +0100)]
media: dib7000p: make static read-only arrays notch and sine const

The static arrays notch and sine are read-only so it make sense
to make them const.

Signed-off-by: Colin Ian King <colin.i.king@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
2 years agomedia: dvb_frontend: make static read-only array DIB3000MC_I2C_ADDRESS const
Colin Ian King [Sun, 23 Jan 2022 22:52:56 +0000 (23:52 +0100)]
media: dvb_frontend: make static read-only array DIB3000MC_I2C_ADDRESS const

The static array DIB3000MC_I2C_ADDRESS is read-only so it make sense
to make it const. Also add spaces to clean up checkpatch warnings.

Signed-off-by: Colin Ian King <colin.i.king@gmail.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>