Home
last modified time | relevance | path

Searched +full:bcm2835 +full:- +full:vchiq (Results 1 – 25 of 37) sorted by relevance

12

/kernel/linux/linux-6.6/drivers/staging/vc04_services/
DKconfig1 # SPDX-License-Identifier: GPL-2.0
9 the BCM2835 family of products which is used
15 tristate "BCM2835 VCHIQ"
19 Broadcom BCM2835 and similar SoCs have a VPU called VideoCore. This config
20 enables the VCHIQ driver, which implements a messaging interface between
22 interface to communicate to the VPU. More specifically, the VCHIQ driver is
24 API, which is in turn used by several multimedia services on the BCM2835
32 bool "VCHIQ Character Driver"
34 Enable the creation of VCHIQ character driver. The cdev exposes ioctls used
36 the VCHIQ core driver (Check BCM2835_VCHIQ for more info).
[all …]
DMakefile1 # SPDX-License-Identifier: GPL-2.0
2 obj-$(CONFIG_BCM2835_VCHIQ) += vchiq.o
4 vchiq-objs := \
11 vchiq-objs += interface/vchiq_arm/vchiq_dev.o
14 obj-$(CONFIG_SND_BCM2835) += bcm2835-audio/
15 obj-$(CONFIG_VIDEO_BCM2835) += bcm2835-camera/
16 obj-$(CONFIG_BCM2835_VCHIQ_MMAL) += vchiq-mmal/
/kernel/linux/linux-6.6/Documentation/devicetree/bindings/soc/bcm/
Dbrcm,bcm2835-vchiq.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/soc/bcm/brcm,bcm2835-vchiq.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Broadcom VCHIQ firmware services
10 - Nicolas Saenz Julienne <nsaenz@kernel.org>
13 The VCHIQ communication channel can be provided by BCM283x and Capri SoCs,
14 to communicate with the VPU-side OS services.
19 - description: BCM2835 based boards
21 - enum:
[all …]
/kernel/linux/linux-5.10/Documentation/devicetree/bindings/soc/bcm/
Dbrcm,bcm2835-vchiq.txt1 Broadcom VCHIQ firmware services
5 - compatible: Should be "brcm,bcm2835-vchiq" on BCM2835, otherwise
6 "brcm,bcm2836-vchiq".
7 - reg: Physical base address and length of the doorbell register pair
8 - interrupts: The interrupt number
9 See bindings/interrupt-controller/brcm,bcm2835-armctrl-ic.txt
14 compatible = "brcm,bcm2835-vchiq";
/kernel/linux/linux-6.6/arch/arm/boot/dts/broadcom/
Dbcm2836-rpi.dtsi1 // SPDX-License-Identifier: GPL-2.0
2 #include "bcm2835-rpi.dtsi"
3 #include "bcm2835-rpi-common.dtsi"
5 &vchiq {
6 compatible = "brcm,bcm2836-vchiq", "brcm,bcm2835-vchiq";
Dbcm2835-rpi.dtsi1 #include <dt-bindings/power/raspberrypi-power.h>
6 compatible = "raspberrypi,bcm2835-firmware", "simple-mfd";
7 #address-cells = <1>;
8 #size-cells = <1>;
11 dma-ranges;
15 compatible = "raspberrypi,bcm2835-power";
17 #power-domain-cells = <1>;
20 vchiq: mailbox@7e00b840 { label
21 compatible = "brcm,bcm2835-vchiq";
41 pinctrl-names = "default";
[all …]
Dbcm2711-rpi.dtsi1 // SPDX-License-Identifier: GPL-2.0
2 #include "bcm2835-rpi.dtsi"
4 #include <dt-bindings/reset/raspberrypi,firmware-reset.h>
23 compatible = "raspberrypi,firmware-clocks";
24 #clock-cells = <1>;
28 compatible = "raspberrypi,firmware-gpio";
29 gpio-controller;
30 #gpio-cells = <2>;
35 compatible = "raspberrypi,firmware-reset";
36 #reset-cells = <1>;
[all …]
/kernel/linux/linux-5.10/drivers/staging/vc04_services/
DKconfig1 # SPDX-License-Identifier: GPL-2.0
9 the BCM2835 family of products which is used
15 tristate "BCM2835 VCHIQ"
18 BCM2835 family of products.
22 source "drivers/staging/vc04_services/bcm2835-audio/Kconfig"
24 source "drivers/staging/vc04_services/bcm2835-camera/Kconfig"
26 source "drivers/staging/vc04_services/vchiq-mmal/Kconfig"
DMakefile1 # SPDX-License-Identifier: GPL-2.0
2 obj-$(CONFIG_BCM2835_VCHIQ) += vchiq.o
4 vchiq-objs := \
11 obj-$(CONFIG_SND_BCM2835) += bcm2835-audio/
12 obj-$(CONFIG_VIDEO_BCM2835) += bcm2835-camera/
13 obj-$(CONFIG_BCM2835_VCHIQ_MMAL) += vchiq-mmal/
15 ccflags-y += -I $(srctree)/$(src)/include -D__VCCOREVER__=0x04000000
/kernel/linux/linux-5.10/arch/arm/boot/dts/
Dbcm2836-rpi.dtsi1 // SPDX-License-Identifier: GPL-2.0
2 #include "bcm2835-rpi.dtsi"
4 &vchiq {
5 compatible = "brcm,bcm2836-vchiq", "brcm,bcm2835-vchiq";
Dbcm2835-rpi.dtsi1 #include <dt-bindings/power/raspberrypi-power.h>
5 compatible = "gpio-leds";
7 led-act {
9 default-state = "keep";
10 linux,default-trigger = "heartbeat";
16 compatible = "raspberrypi,bcm2835-firmware", "simple-mfd";
17 #address-cells = <1>;
18 #size-cells = <1>;
21 dma-ranges;
25 compatible = "raspberrypi,bcm2835-power";
[all …]
/kernel/linux/linux-6.6/drivers/staging/vc04_services/vchiq-mmal/
DMakefile1 # SPDX-License-Identifier: GPL-2.0
2 bcm2835-mmal-vchiq-objs := mmal-vchiq.o
4 obj-$(CONFIG_BCM2835_VCHIQ_MMAL) += bcm2835-mmal-vchiq.o
Dmmal-vchiq.h1 /* SPDX-License-Identifier: GPL-2.0 */
3 * Broadcom BCM2835 V4L2 driver
13 * MMAL interface to VCHIQ message passing
19 #include "mmal-common.h"
20 #include "mmal-msg-format.h"
34 MMAL_ES_TYPE_SUBPICTURE /**< Sub-picture elementary stream */
/kernel/linux/linux-5.10/drivers/staging/vc04_services/vchiq-mmal/
DMakefile1 # SPDX-License-Identifier: GPL-2.0
2 bcm2835-mmal-vchiq-objs := mmal-vchiq.o
4 obj-$(CONFIG_BCM2835_VCHIQ_MMAL) += bcm2835-mmal-vchiq.o
6 ccflags-y += \
7 -I$(srctree)/$(src)/.. \
8 -I$(srctree)/$(src)/../include \
9 -D__VCCOREVER__=0x04000000
/kernel/linux/linux-6.6/drivers/staging/vc04_services/interface/
DTESTING1 This document contains some hints to test the function of the VCHIQ driver
6 Testing the VCHIQ driver requires a Raspberry Pi with one of the following SoC:
7 - BCM2835 ( e.g. Raspberry Pi Zero W )
8 - BCM2836 ( e.g. Raspberry Pi 2 )
9 - BCM2837 ( e.g. Raspberry Pi 3 B+ )
14 There are no specific requirements to the VideoCore firmware to get VCHIQ
24 1. BCM2835 target SoC (ARM 32 bit)
26 Just use bcm2835_defconfig which already has VCHIQ enabled.
30 Use the multi_v7_defconfig as a base and then enable all VCHIQ options.
34 Use the defconfig as a base and then enable all VCHIQ options.
[all …]
/kernel/linux/linux-6.6/drivers/staging/vc04_services/bcm2835-audio/
DMakefile1 # SPDX-License-Identifier: GPL-2.0
2 obj-$(CONFIG_SND_BCM2835) += snd-bcm2835.o
3 snd-bcm2835-objs := bcm2835.o bcm2835-ctl.o bcm2835-pcm.o bcm2835-vchiq.o
DKconfig1 # SPDX-License-Identifier: GPL-2.0
3 tristate "BCM2835 Audio"
8 Say Y or M if you want to support BCM2835 built in audio.
10 the VCHIQ messaging interface between the kernel and the firmware
/kernel/linux/linux-5.10/drivers/staging/vc04_services/bcm2835-audio/
DMakefile1 # SPDX-License-Identifier: GPL-2.0
2 obj-$(CONFIG_SND_BCM2835) += snd-bcm2835.o
3 snd-bcm2835-objs := bcm2835.o bcm2835-ctl.o bcm2835-pcm.o bcm2835-vchiq.o
5 ccflags-y += -I $(srctree)/$(src)/../include -D__VCCOREVER__=0x04000000
Dbcm2835-pcm.c1 // SPDX-License-Identifier: GPL-2.0
9 #include "bcm2835.h"
49 kfree(runtime->private_data); in snd_bcm2835_playback_free()
55 struct snd_pcm_substream *substream = alsa_stream->substream; in bcm2835_playback_fifo()
58 if (!alsa_stream->period_size) in bcm2835_playback_fifo()
61 if (bytes >= alsa_stream->buffer_size) { in bcm2835_playback_fifo()
64 alsa_stream->draining ? in bcm2835_playback_fifo()
71 pos = atomic_read(&alsa_stream->pos); in bcm2835_playback_fifo()
73 pos %= alsa_stream->buffer_size; in bcm2835_playback_fifo()
74 atomic_set(&alsa_stream->pos, pos); in bcm2835_playback_fifo()
[all …]
/kernel/linux/linux-5.10/drivers/staging/vc04_services/bcm2835-camera/
DMakefile1 # SPDX-License-Identifier: GPL-2.0
2 bcm2835-v4l2-$(CONFIG_VIDEO_BCM2835) := \
3 bcm2835-camera.o \
6 obj-$(CONFIG_VIDEO_BCM2835) += bcm2835-v4l2.o
8 ccflags-y += \
9 -I $(srctree)/$(src)/.. \
10 -I $(srctree)/$(src)/../vchiq-mmal/ \
11 -D__VCCOREVER__=0x04000000
DKconfig1 # SPDX-License-Identifier: GPL-2.0
3 tristate "BCM2835 Camera"
12 Broadcom BCM2835 SoC. This operates over the VCHIQ interface
/kernel/linux/linux-6.6/drivers/staging/vc04_services/bcm2835-camera/
DKconfig1 # SPDX-License-Identifier: GPL-2.0
3 tristate "BCM2835 Camera"
12 Broadcom BCM2835 SoC. This operates over the VCHIQ interface
/kernel/linux/linux-5.10/drivers/staging/vc04_services/interface/
DTODO6 - vc_mem (https://github.com/raspberrypi/linux/blob/rpi-4.4.y/drivers/char/broadcom/vc_mem.c)
9 requests to the firmware, which are transmitted across VCHIQ. vcdbg
12 - VCSM (https://github.com/raspberrypi/linux/tree/rpi-4.4.y/drivers/char/broadcom/vc_sm)
16 to manage these buffers as dmabufs so that we can zero-copy import
19 2) Garbage-collect unused code
23 days. Once we have the set of VCHI-using drivers we want in tree, we
32 vchiq_test -f 1
38 Even the VPU firmware doesn't support a VCHI re-connect, the driver
50 A short top-down description of this driver's architecture (function of
76 able to use bcm2835-audio without having /dev/vchiq created. One could argue
[all …]
/kernel/linux/linux-6.6/drivers/staging/vc04_services/interface/vchiq_arm/
Dvchiq_arm.c1 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
4 * Copyright (c) 2010-2012 Broadcom. All rights reserved.
24 #include <linux/dma-mapping.h>
31 #include <soc/bcm2835/raspberrypi-firmware.h>
40 #define DEVICE_NAME "vchiq"
85 /* Keepalive-related data */
111 * Flag to indicate that the first vchiq connect has made it through.
140 * Modern VPU firmware looks for a DT "cache-line-size" property in
141 * the VCHIQ node and will overwrite it with the actual L2 cache size,
179 if (pagelistinfo->scatterlist_mapped) { in cleanup_pagelistinfo()
[all …]
/kernel/linux/linux-5.10/drivers/staging/vc04_services/interface/vchiq_arm/
Dvchiq_arm.c1 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
4 * Copyright (c) 2010-2012 Broadcom. All rights reserved.
24 #include <linux/dma-mapping.h>
28 #include <soc/bcm2835/raspberrypi-firmware.h>
35 #define DEVICE_NAME "vchiq"
41 /* Some per-instance constants */
171 ret = -ENOTCONN; in vchiq_initialise()
182 "%s: error allocating vchiq instance\n", __func__); in vchiq_initialise()
183 ret = -ENOMEM; in vchiq_initialise()
187 instance->connected = 0; in vchiq_initialise()
[all …]

12