1# SPDX-License-Identifier: GPL-2.0 2menuconfig BCM_VIDEOCORE 3 tristate "Broadcom VideoCore support" 4 depends on OF 5 depends on RASPBERRYPI_FIRMWARE || (COMPILE_TEST && !RASPBERRYPI_FIRMWARE) 6 default y 7 help 8 Support for Broadcom VideoCore services including 9 the BCM2835 family of products which is used 10 by the Raspberry PI. 11 12if BCM_VIDEOCORE 13 14config BCM2835_VCHIQ 15 tristate "BCM2835 VCHIQ" 16 depends on HAS_DMA 17 imply VCHIQ_CDEV 18 help 19 Broadcom BCM2835 and similar SoCs have a VPU called VideoCore. 20 This config enables the VCHIQ driver, which implements a 21 messaging interface between the kernel and the firmware running 22 on VideoCore. Other drivers use this interface to communicate to 23 the VPU. More specifically, the VCHIQ driver is used by 24 audio/video and camera drivers as well as for implementing MMAL 25 API, which is in turn used by several multimedia services on the 26 BCM2835 family of SoCs. 27 28 Defaults to Y when the Broadcom Videocore services are included 29 in the build, N otherwise. 30 31if BCM2835_VCHIQ 32 33config VCHIQ_CDEV 34 bool "VCHIQ Character Driver" 35 help 36 Enable the creation of VCHIQ character driver. The cdev exposes 37 ioctls used by userspace libraries and testing tools to interact 38 with VideoCore, via the VCHIQ core driver (Check BCM2835_VCHIQ 39 for more info). 40 41 This can be set to 'N' if the VideoCore communication is not 42 needed by userspace but only by other kernel modules 43 (like bcm2835-audio). 44 45 If not sure, set this to 'Y'. 46 47endif 48 49source "drivers/staging/vc04_services/bcm2835-audio/Kconfig" 50 51source "drivers/staging/vc04_services/bcm2835-camera/Kconfig" 52 53source "drivers/staging/vc04_services/vchiq-mmal/Kconfig" 54 55endif 56 57