199b75a4eSGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 26bbfe4a7SMichael Zoranmenuconfig BCM_VIDEOCORE 3ce95e3a9SArnd Bergmann tristate "Broadcom VideoCore support" 4b3bd0f28SArnd Bergmann depends on OF 56fde3789SArnd Bergmann depends on RASPBERRYPI_FIRMWARE || (COMPILE_TEST && !RASPBERRYPI_FIRMWARE) 671bad7f0Spopcornmix default y 771bad7f0Spopcornmix help 86bbfe4a7SMichael Zoran Support for Broadcom VideoCore services including 96bbfe4a7SMichael Zoran the BCM2835 family of products which is used 106bbfe4a7SMichael Zoran by the Raspberry PI. 116bbfe4a7SMichael Zoran 126bbfe4a7SMichael Zoranif BCM_VIDEOCORE 136bbfe4a7SMichael Zoran 146bbfe4a7SMichael Zoranconfig BCM2835_VCHIQ 156bbfe4a7SMichael Zoran tristate "BCM2835 VCHIQ" 16*f3e93e3eSGeert Uytterhoeven depends on HAS_DMA 17bb13dc2bSOjaswin Mujoo imply VCHIQ_CDEV 186bbfe4a7SMichael Zoran help 1969c92a74SOjaswin Mujoo Broadcom BCM2835 and similar SoCs have a VPU called VideoCore. This config 2069c92a74SOjaswin Mujoo enables the VCHIQ driver, which implements a messaging interface between 2169c92a74SOjaswin Mujoo the kernel and the firmware running on VideoCore. Other drivers use this 2269c92a74SOjaswin Mujoo interface to communicate to the VPU. More specifically, the VCHIQ driver is 2369c92a74SOjaswin Mujoo used by audio/video and camera drivers as well as for implementing MMAL 2469c92a74SOjaswin Mujoo API, which is in turn used by several multimedia services on the BCM2835 2569c92a74SOjaswin Mujoo family of SoCs. 2669c92a74SOjaswin Mujoo Defaults to Y when the Broadcom Videocore services are included in 2769c92a74SOjaswin Mujoo the build, N otherwise. 28051420a9SMichael Zoran 292b5930fbSOjaswin Mujooif BCM2835_VCHIQ 302b5930fbSOjaswin Mujoo 312b5930fbSOjaswin Mujooconfig VCHIQ_CDEV 322b5930fbSOjaswin Mujoo bool "VCHIQ Character Driver" 332b5930fbSOjaswin Mujoo help 3469c92a74SOjaswin Mujoo Enable the creation of VCHIQ character driver. The cdev exposes ioctls used 3569c92a74SOjaswin Mujoo by userspace libraries and testing tools to interact with VideoCore, via 3669c92a74SOjaswin Mujoo the VCHIQ core driver (Check BCM2835_VCHIQ for more info). 3769c92a74SOjaswin Mujoo This can be set to 'N' if the VideoCore communication is not needed by 3869c92a74SOjaswin Mujoo userspace but only by other kernel modules (like bcm2835-audio). If not 3969c92a74SOjaswin Mujoo sure, set this to 'Y'. 402b5930fbSOjaswin Mujoo 412b5930fbSOjaswin Mujooendif 422b5930fbSOjaswin Mujoo 43051420a9SMichael Zoransource "drivers/staging/vc04_services/bcm2835-audio/Kconfig" 44051420a9SMichael Zoran 45212afb97SMichael Zoransource "drivers/staging/vc04_services/bcm2835-camera/Kconfig" 46212afb97SMichael Zoran 47b18ee53aSJacopo Mondisource "drivers/staging/vc04_services/vchiq-mmal/Kconfig" 48b18ee53aSJacopo Mondi 49051420a9SMichael Zoranendif 50051420a9SMichael Zoran 51