mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-28 15:13:55 +08:00
ff681022c6
Moving the pxa_camera driver from soc_camera lots the implied
VIDEO_V4L2 Kconfig dependency, and building the driver without
V4L2 results in a kernel that cannot link:
drivers/media/platform/pxa_camera.o: In function `pxa_camera_remove':
pxa_camera.c:(.text.pxa_camera_remove+0x10): undefined reference to `v4l2_clk_unregister'
pxa_camera.c:(.text.pxa_camera_remove+0x18): undefined reference to `v4l2_device_unregister'
drivers/media/platform/pxa_camera.o: In function `pxa_camera_probe':
pxa_camera.c:(.text.pxa_camera_probe+0x458): undefined reference to `v4l2_of_parse_endpoint'
drivers/media/v4l2-core/videobuf2-core.o: In function `__enqueue_in_driver':
drivers/media/v4l2-core/videobuf2-core.o: In function `vb2_core_streamon':
videobuf2-core.c:(.text.vb2_core_streamon+0x1b4): undefined reference to `v4l_vb2q_enable_media_source'
drivers/media/v4l2-core/videobuf2-v4l2.o: In function `vb2_ioctl_reqbufs':
videobuf2-v4l2.c:(.text.vb2_ioctl_reqbufs+0xc): undefined reference to `video_devdata'
This adds back an explicit dependency.
Fixes: 3050b99850
("[media] media: platform: pxa_camera: move pxa_camera out of soc_camera")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
396 lines
12 KiB
Plaintext
396 lines
12 KiB
Plaintext
#
|
|
# Platform drivers
|
|
# Most drivers here are currently for webcam support
|
|
|
|
menuconfig V4L_PLATFORM_DRIVERS
|
|
bool "V4L platform devices"
|
|
depends on MEDIA_CAMERA_SUPPORT
|
|
default n
|
|
---help---
|
|
Say Y here to enable support for platform-specific V4L drivers.
|
|
|
|
if V4L_PLATFORM_DRIVERS
|
|
|
|
source "drivers/media/platform/marvell-ccic/Kconfig"
|
|
|
|
config VIDEO_VIA_CAMERA
|
|
tristate "VIAFB camera controller support"
|
|
depends on FB_VIA
|
|
select VIDEOBUF_DMA_SG
|
|
select VIDEO_OV7670
|
|
help
|
|
Driver support for the integrated camera controller in VIA
|
|
Chrome9 chipsets. Currently only tested on OLPC xo-1.5 systems
|
|
with ov7670 sensors.
|
|
|
|
#
|
|
# Platform multimedia device configuration
|
|
#
|
|
|
|
source "drivers/media/platform/davinci/Kconfig"
|
|
|
|
source "drivers/media/platform/omap/Kconfig"
|
|
|
|
source "drivers/media/platform/blackfin/Kconfig"
|
|
|
|
config VIDEO_SH_VOU
|
|
tristate "SuperH VOU video output driver"
|
|
depends on MEDIA_CAMERA_SUPPORT
|
|
depends on VIDEO_DEV && I2C && HAS_DMA
|
|
depends on ARCH_SHMOBILE || COMPILE_TEST
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
help
|
|
Support for the Video Output Unit (VOU) on SuperH SoCs.
|
|
|
|
config VIDEO_VIU
|
|
tristate "Freescale VIU Video Driver"
|
|
depends on VIDEO_V4L2 && PPC_MPC512x
|
|
select VIDEOBUF_DMA_CONTIG
|
|
default y
|
|
---help---
|
|
Support for Freescale VIU video driver. This device captures
|
|
video data, or overlays video on DIU frame buffer.
|
|
|
|
Say Y here if you want to enable VIU device on MPC5121e Rev2+.
|
|
In doubt, say N.
|
|
|
|
config VIDEO_M32R_AR
|
|
tristate "AR devices"
|
|
depends on VIDEO_V4L2
|
|
depends on M32R || COMPILE_TEST
|
|
---help---
|
|
This is a video4linux driver for the Renesas AR (Artificial Retina)
|
|
camera module.
|
|
|
|
config VIDEO_M32R_AR_M64278
|
|
tristate "AR device with color module M64278(VGA)"
|
|
depends on PLAT_M32700UT
|
|
select VIDEO_M32R_AR
|
|
---help---
|
|
This is a video4linux driver for the Renesas AR (Artificial
|
|
Retina) with M64278E-800 camera module.
|
|
This module supports VGA(640x480 pixels) resolutions.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called arv.
|
|
|
|
config VIDEO_OMAP3
|
|
tristate "OMAP 3 Camera support"
|
|
depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API && ARCH_OMAP3
|
|
depends on HAS_DMA && OF
|
|
depends on OMAP_IOMMU
|
|
select ARM_DMA_USE_IOMMU
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
select MFD_SYSCON
|
|
---help---
|
|
Driver for an OMAP 3 camera controller.
|
|
|
|
config VIDEO_OMAP3_DEBUG
|
|
bool "OMAP 3 Camera debug messages"
|
|
depends on VIDEO_OMAP3
|
|
---help---
|
|
Enable debug messages on OMAP 3 camera controller driver.
|
|
|
|
config VIDEO_PXA27x
|
|
tristate "PXA27x Quick Capture Interface driver"
|
|
depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
|
|
depends on PXA27x || COMPILE_TEST
|
|
select VIDEOBUF2_DMA_SG
|
|
select SG_SPLIT
|
|
---help---
|
|
This is a v4l2 driver for the PXA27x Quick Capture Interface
|
|
|
|
config VIDEO_S3C_CAMIF
|
|
tristate "Samsung S3C24XX/S3C64XX SoC Camera Interface driver"
|
|
depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API
|
|
depends on PM
|
|
depends on ARCH_S3C64XX || PLAT_S3C24XX || COMPILE_TEST
|
|
depends on HAS_DMA
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
---help---
|
|
This is a v4l2 driver for s3c24xx and s3c64xx SoC series camera
|
|
host interface (CAMIF).
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called s3c-camif.
|
|
|
|
source "drivers/media/platform/soc_camera/Kconfig"
|
|
source "drivers/media/platform/exynos4-is/Kconfig"
|
|
source "drivers/media/platform/am437x/Kconfig"
|
|
source "drivers/media/platform/xilinx/Kconfig"
|
|
source "drivers/media/platform/rcar-vin/Kconfig"
|
|
source "drivers/media/platform/atmel/Kconfig"
|
|
|
|
config VIDEO_TI_CAL
|
|
tristate "TI CAL (Camera Adaptation Layer) driver"
|
|
depends on VIDEO_DEV && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API
|
|
depends on SOC_DRA7XX || COMPILE_TEST
|
|
depends on HAS_DMA
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
default n
|
|
---help---
|
|
Support for the TI CAL (Camera Adaptation Layer) block
|
|
found on DRA72X SoC.
|
|
In TI Technical Reference Manual this module is referred as
|
|
Camera Interface Subsystem (CAMSS).
|
|
|
|
endif # V4L_PLATFORM_DRIVERS
|
|
|
|
menuconfig V4L_MEM2MEM_DRIVERS
|
|
bool "Memory-to-memory multimedia devices"
|
|
depends on VIDEO_V4L2
|
|
depends on MEDIA_CAMERA_SUPPORT
|
|
default n
|
|
---help---
|
|
Say Y here to enable selecting drivers for V4L devices that
|
|
use system memory for both source and destination buffers, as opposed
|
|
to capture and output drivers, which use memory buffers for just
|
|
one of those.
|
|
|
|
if V4L_MEM2MEM_DRIVERS
|
|
|
|
config VIDEO_CODA
|
|
tristate "Chips&Media Coda multi-standard codec IP"
|
|
depends on VIDEO_DEV && VIDEO_V4L2 && ARCH_MXC
|
|
depends on HAS_DMA
|
|
select SRAM
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
select VIDEOBUF2_VMALLOC
|
|
select V4L2_MEM2MEM_DEV
|
|
select GENERIC_ALLOCATOR
|
|
---help---
|
|
Coda is a range of video codec IPs that supports
|
|
H.264, MPEG-4, and other video formats.
|
|
|
|
config VIDEO_MEDIATEK_VPU
|
|
tristate "Mediatek Video Processor Unit"
|
|
depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
|
|
depends on ARCH_MEDIATEK || COMPILE_TEST
|
|
---help---
|
|
This driver provides downloading VPU firmware and
|
|
communicating with VPU. This driver for hw video
|
|
codec embedded in Mediatek's MT8173 SOCs. It is able
|
|
to handle video decoding/encoding in a range of formats.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called mtk-vpu.
|
|
|
|
config VIDEO_MEDIATEK_MDP
|
|
tristate "Mediatek MDP driver"
|
|
depends on MTK_IOMMU || COMPILE_TEST
|
|
depends on VIDEO_DEV && VIDEO_V4L2
|
|
depends on ARCH_MEDIATEK || COMPILE_TEST
|
|
depends on HAS_DMA
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
select V4L2_MEM2MEM_DEV
|
|
select VIDEO_MEDIATEK_VPU
|
|
default n
|
|
---help---
|
|
It is a v4l2 driver and present in Mediatek MT8173 SoCs.
|
|
The driver supports for scaling and color space conversion.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called mtk-mdp.
|
|
|
|
config VIDEO_MEDIATEK_VCODEC
|
|
tristate "Mediatek Video Codec driver"
|
|
depends on MTK_IOMMU || COMPILE_TEST
|
|
depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
|
|
depends on ARCH_MEDIATEK || COMPILE_TEST
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
select V4L2_MEM2MEM_DEV
|
|
select VIDEO_MEDIATEK_VPU
|
|
default n
|
|
---help---
|
|
Mediatek video codec driver provides HW capability to
|
|
encode and decode in a range of video formats
|
|
This driver rely on VPU driver to communicate with VPU.
|
|
|
|
To compile this driver as a module, choose M here: the
|
|
module will be called mtk-vcodec
|
|
|
|
config VIDEO_MEM2MEM_DEINTERLACE
|
|
tristate "Deinterlace support"
|
|
depends on VIDEO_DEV && VIDEO_V4L2 && DMA_ENGINE
|
|
depends on HAS_DMA
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
select V4L2_MEM2MEM_DEV
|
|
help
|
|
Generic deinterlacing V4L2 driver.
|
|
|
|
config VIDEO_SAMSUNG_S5P_G2D
|
|
tristate "Samsung S5P and EXYNOS4 G2D 2d graphics accelerator driver"
|
|
depends on VIDEO_DEV && VIDEO_V4L2
|
|
depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
|
|
depends on HAS_DMA
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
select V4L2_MEM2MEM_DEV
|
|
default n
|
|
---help---
|
|
This is a v4l2 driver for Samsung S5P and EXYNOS4 G2D
|
|
2d graphics accelerator.
|
|
|
|
config VIDEO_SAMSUNG_S5P_JPEG
|
|
tristate "Samsung S5P/Exynos3250/Exynos4 JPEG codec driver"
|
|
depends on VIDEO_DEV && VIDEO_V4L2
|
|
depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
|
|
depends on HAS_DMA
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
select V4L2_MEM2MEM_DEV
|
|
---help---
|
|
This is a v4l2 driver for Samsung S5P, EXYNOS3250
|
|
and EXYNOS4 JPEG codec
|
|
|
|
config VIDEO_SAMSUNG_S5P_MFC
|
|
tristate "Samsung S5P MFC Video Codec"
|
|
depends on VIDEO_DEV && VIDEO_V4L2
|
|
depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
|
|
depends on HAS_DMA
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
default n
|
|
help
|
|
MFC 5.1 and 6.x driver for V4L2
|
|
|
|
config VIDEO_MX2_EMMAPRP
|
|
tristate "MX2 eMMa-PrP support"
|
|
depends on VIDEO_DEV && VIDEO_V4L2
|
|
depends on SOC_IMX27 || COMPILE_TEST
|
|
depends on HAS_DMA
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
select V4L2_MEM2MEM_DEV
|
|
help
|
|
MX2X chips have a PrP that can be used to process buffers from
|
|
memory to memory. Operations include resizing and format
|
|
conversion.
|
|
|
|
config VIDEO_SAMSUNG_EXYNOS_GSC
|
|
tristate "Samsung Exynos G-Scaler driver"
|
|
depends on VIDEO_DEV && VIDEO_V4L2
|
|
depends on ARCH_EXYNOS5 || COMPILE_TEST
|
|
depends on HAS_DMA
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
select V4L2_MEM2MEM_DEV
|
|
help
|
|
This is a v4l2 driver for Samsung EXYNOS5 SoC G-Scaler.
|
|
|
|
config VIDEO_STI_BDISP
|
|
tristate "STMicroelectronics BDISP 2D blitter driver"
|
|
depends on VIDEO_DEV && VIDEO_V4L2
|
|
depends on HAS_DMA
|
|
depends on ARCH_STI || COMPILE_TEST
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
select V4L2_MEM2MEM_DEV
|
|
help
|
|
This v4l2 mem2mem driver is a 2D blitter for STMicroelectronics SoC.
|
|
|
|
config VIDEO_STI_HVA
|
|
tristate "STMicroelectronics HVA multi-format video encoder V4L2 driver"
|
|
depends on VIDEO_DEV && VIDEO_V4L2
|
|
depends on HAS_DMA
|
|
depends on ARCH_STI || COMPILE_TEST
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
select V4L2_MEM2MEM_DEV
|
|
help
|
|
This V4L2 driver enables HVA (Hardware Video Accelerator) multi-format
|
|
video encoder of STMicroelectronics SoC, allowing hardware encoding of
|
|
raw uncompressed formats in various compressed video bitstreams format.
|
|
|
|
To compile this driver as a module, choose M here:
|
|
the module will be called st-hva.
|
|
|
|
config VIDEO_SH_VEU
|
|
tristate "SuperH VEU mem2mem video processing driver"
|
|
depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
select V4L2_MEM2MEM_DEV
|
|
help
|
|
Support for the Video Engine Unit (VEU) on SuperH and
|
|
SH-Mobile SoCs.
|
|
|
|
config VIDEO_RENESAS_JPU
|
|
tristate "Renesas JPEG Processing Unit"
|
|
depends on VIDEO_DEV && VIDEO_V4L2 && HAS_DMA
|
|
depends on ARCH_RENESAS || COMPILE_TEST
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
select V4L2_MEM2MEM_DEV
|
|
---help---
|
|
This is a V4L2 driver for the Renesas JPEG Processing Unit.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called rcar_jpu.
|
|
|
|
config VIDEO_RENESAS_FCP
|
|
tristate "Renesas Frame Compression Processor"
|
|
depends on ARCH_RENESAS || COMPILE_TEST
|
|
depends on OF
|
|
---help---
|
|
This is a driver for the Renesas Frame Compression Processor (FCP).
|
|
The FCP is a companion module of video processing modules in the
|
|
Renesas R-Car Gen3 SoCs. It handles memory access for the codec,
|
|
VSP and FDP modules.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called rcar-fcp.
|
|
|
|
config VIDEO_RENESAS_VSP1
|
|
tristate "Renesas VSP1 Video Processing Engine"
|
|
depends on VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API && HAS_DMA
|
|
depends on (ARCH_RENESAS && OF) || COMPILE_TEST
|
|
depends on (!ARM64 && !VIDEO_RENESAS_FCP) || VIDEO_RENESAS_FCP
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
---help---
|
|
This is a V4L2 driver for the Renesas VSP1 video processing engine.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called vsp1.
|
|
|
|
config VIDEO_TI_VPE
|
|
tristate "TI VPE (Video Processing Engine) driver"
|
|
depends on VIDEO_DEV && VIDEO_V4L2
|
|
depends on SOC_DRA7XX || COMPILE_TEST
|
|
depends on HAS_DMA
|
|
select VIDEOBUF2_DMA_CONTIG
|
|
select V4L2_MEM2MEM_DEV
|
|
default n
|
|
---help---
|
|
Support for the TI VPE(Video Processing Engine) block
|
|
found on DRA7XX SoC.
|
|
|
|
config VIDEO_TI_VPE_DEBUG
|
|
bool "VPE debug messages"
|
|
depends on VIDEO_TI_VPE
|
|
---help---
|
|
Enable debug messages on VPE driver.
|
|
|
|
endif # V4L_MEM2MEM_DRIVERS
|
|
|
|
menuconfig V4L_TEST_DRIVERS
|
|
bool "Media test drivers"
|
|
depends on MEDIA_CAMERA_SUPPORT
|
|
|
|
if V4L_TEST_DRIVERS
|
|
|
|
source "drivers/media/platform/vivid/Kconfig"
|
|
|
|
config VIDEO_VIM2M
|
|
tristate "Virtual Memory-to-Memory Driver"
|
|
depends on VIDEO_DEV && VIDEO_V4L2
|
|
select VIDEOBUF2_VMALLOC
|
|
select V4L2_MEM2MEM_DEV
|
|
default n
|
|
---help---
|
|
This is a virtual test device for the memory-to-memory driver
|
|
framework.
|
|
endif #V4L_TEST_DRIVERS
|
|
|
|
menuconfig DVB_PLATFORM_DRIVERS
|
|
bool "DVB platform devices"
|
|
depends on MEDIA_DIGITAL_TV_SUPPORT
|
|
default n
|
|
---help---
|
|
Say Y here to enable support for platform-specific Digital TV drivers.
|
|
|
|
if DVB_PLATFORM_DRIVERS
|
|
source "drivers/media/platform/sti/c8sectpfe/Kconfig"
|
|
endif #DVB_PLATFORM_DRIVERS
|