/linux-6.12.1/arch/arm/boot/dts/broadcom/ |
D | bcm2835-common.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 4 * bcm2835, bcm2836 and bcm2837 implementations. 8 interrupt-parent = <&intc>; 11 dma: dma-controller@7e007000 { label 12 compatible = "brcm,bcm2835-dma"; 25 /* dma channel 11-14 share one irq */ 32 interrupt-names = "dma0", 47 "dma-shared-all"; 48 #dma-cells = <1>; 49 brcm,dma-channel-mask = <0x7f35>; [all …]
|
D | bcm2711.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 4 #include <dt-bindings/interrupt-controller/arm-gic.h> 5 #include <dt-bindings/soc/bcm2835-pm.h> 10 #address-cells = <2>; 11 #size-cells = <1>; 13 interrupt-parent = <&gicv2>; 16 compatible = "brcm,bcm2711-vc5"; 20 clk_27MHz: clk-27M { 21 #clock-cells = <0>; 22 compatible = "fixed-clock"; [all …]
|
D | bcm2835.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 #include "bcm2835-common.dtsi" 6 compatible = "brcm,bcm2835"; 9 #address-cells = <1>; 10 #size-cells = <0>; 14 compatible = "arm,arm1176jzf-s"; 16 /* Source for d/i-cache-line-size and d/i-cache-sets 18 * /h/level-one-memory-system/cache-organization?lang=en 20 * Source for d/i-cache-size 23 * NOTE: The BCM2835 has a L2 cache but it is dedicated to the GPU [all …]
|
D | bcm283x.dtsi | 1 #include <dt-bindings/pinctrl/bcm2835.h> 2 #include <dt-bindings/clock/bcm2835.h> 3 #include <dt-bindings/clock/bcm2835-aux.h> 4 #include <dt-bindings/gpio/gpio.h> 5 #include <dt-bindings/interrupt-controller/irq.h> 6 #include <dt-bindings/soc/bcm2835-pm.h> 8 /* firmware-provided startup stubs live here, where the secondary CPUs are 14 * bcm2835 and bcm2836 implementations, leaving the CPU configuration to 15 * bcm2835.dtsi and bcm2836.dtsi. 19 compatible = "brcm,bcm2835"; [all …]
|
D | bcm2837.dtsi | 2 #include "bcm2835-common.dtsi" 10 dma-ranges = <0xc0000000 0x00000000 0x3f000000>; 12 local_intc: interrupt-controller@40000000 { 13 compatible = "brcm,bcm2836-l1-intc"; 15 interrupt-controller; 16 #interrupt-cells = <2>; 17 interrupt-parent = <&local_intc>; 21 arm-pmu { 22 compatible = "arm,cortex-a53-pmu"; 23 interrupt-parent = <&local_intc>; [all …]
|
D | bcm2836.dtsi | 1 // SPDX-License-Identifier: GPL-2.0 3 #include "bcm2835-common.dtsi" 11 dma-ranges = <0xc0000000 0x00000000 0x3f000000>; 13 local_intc: interrupt-controller@40000000 { 14 compatible = "brcm,bcm2836-l1-intc"; 16 interrupt-controller; 17 #interrupt-cells = <2>; 18 interrupt-parent = <&local_intc>; 22 arm-pmu { 23 compatible = "arm,cortex-a7-pmu"; [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/dma/ |
D | brcm,bcm2835-dma.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/dma/brcm,bcm2835-dma.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: BCM2835 DMA controller 10 - Nicolas Saenz Julienne <nsaenz@kernel.org> 13 The BCM2835 DMA controller has 16 channels in total. Only the lower 19 - $ref: dma-controller.yaml# 23 const: brcm,bcm2835-dma 30 Should contain the DMA interrupts associated to the DMA channels in [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/mmc/ |
D | brcm,bcm2835-sdhost.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/mmc/brcm,bcm2835-sdhost.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: Broadcom BCM2835 SDHOST controller 10 - Stefan Wahren <stefan.wahren@i2se.com> 13 - $ref: mmc-controller.yaml 17 const: brcm,bcm2835-sdhost 31 dma-names: 32 const: rx-tx [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/sound/ |
D | brcm,bcm2835-i2s.txt | 1 * Broadcom BCM2835 SoC I2S/PCM module 4 - compatible: "brcm,bcm2835-i2s" 5 - reg: Should contain PCM registers location and length. 6 - clocks: the (PCM) clock to use 7 - dmas: List of DMA controller phandle and DMA request line ordered pairs. 8 - dma-names: Identifier string for each DMA request line in the dmas property. 11 One of the DMA channels will be responsible for transmission (should be 17 compatible = "brcm,bcm2835-i2s"; 21 dmas = <&dma 2>, 22 <&dma 3>; [all …]
|
/linux-6.12.1/drivers/spi/ |
D | spi-bcm2835.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * Driver for Broadcom BCM2835 SPI Controllers 10 * spi-ath79.c, Copyright (C) 2009-2011 Gabor Juhos <juhosg@openwrt.org> 11 * spi-atmel.c, Copyright (C) 2006 Atmel Corporation 19 #include <linux/dma-mapping.h> 76 #define DRV_NAME "spi-bcm2835" 85 * struct bcm2835_spi - BCM2835 SPI controller 88 * @cs_gpio: chip-select GPIO descriptor 97 * @tx_prologue: bytes transmitted without DMA if first TX sglist entry's 99 * @rx_prologue: bytes received without DMA if first RX sglist entry's [all …]
|
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 13 dynamic device discovery; some are even write-only or read-only. 17 chips, analog to digital (and d-to-a) converters, and more. 44 If your system has an master-capable SPI controller (which 56 by providing a high-level interface to send memory-like commands. 66 This enables support for SPI-NAND mode on the Airoha NAND 68 is implemented as a SPI-MEM controller. 155 supports spi-mem interface. 174 tristate "BCM2835 SPI controller" 178 This selects a driver for the Broadcom BCM2835 SPI master. [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/display/ |
D | brcm,bcm2835-hdmi.yaml | 1 # SPDX-License-Identifier: GPL-2.0 3 --- 4 $id: http://devicetree.org/schemas/display/brcm,bcm2835-hdmi.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 10 - Eric Anholt <eric@anholt.net> 14 const: brcm,bcm2835-hdmi 18 - description: HDMI register range 19 - description: HD register range 26 - description: The pixel clock 27 - description: The HDMI state machine clock [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/interrupt-controller/ |
D | brcm,bcm2835-armctrl-ic.txt | 1 BCM2835 Top-Level ("ARMCTRL") Interrupt Controller 3 The BCM2835 contains a custom top-level interrupt controller, which supports 4 72 interrupt sources using a 2-level register scheme. The interrupt 9 interrupts, but the per-CPU interrupt controller is the root, and an 14 - compatible : should be "brcm,bcm2835-armctrl-ic" or 15 "brcm,bcm2836-armctrl-ic" 16 - reg : Specifies base physical address and size of the registers. 17 - interrupt-controller : Identifies the node as an interrupt controller 18 - #interrupt-cells : Specifies the number of cells needed to encode an 28 Additional required properties for brcm,bcm2836-armctrl-ic: [all …]
|
/linux-6.12.1/drivers/dma/ |
D | bcm2835-dma.c | 1 // SPDX-License-Identifier: GPL-2.0+ 3 * BCM2835 DMA engine support 11 * BCM2708 DMA Driver 17 * MARVELL MMP Peripheral DMA Driver 21 #include <linux/dma-mapping.h> 35 #include "virt-dma.h" 41 * struct bcm2835_dmadev - BCM2835 DMA controller 42 * @ddev: DMA device 108 /* DMA CS Control and Status bits */ 109 #define BCM2835_DMA_ACTIVE BIT(0) /* activate the DMA */ [all …]
|
D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0 3 subdir-ccflags-$(CONFIG_DMADEVICES_DEBUG) := -DDEBUG 4 subdir-ccflags-$(CONFIG_DMADEVICES_VDEBUG) += -DVERBOSE_DEBUG 7 obj-$(CONFIG_DMA_ENGINE) += dmaengine.o 8 obj-$(CONFIG_DMA_VIRTUAL_CHANNELS) += virt-dma.o 9 obj-$(CONFIG_DMA_ACPI) += acpi-dma.o 10 obj-$(CONFIG_DMA_OF) += of-dma.o 13 obj-$(CONFIG_DMATEST) += dmatest.o 16 obj-$(CONFIG_ALTERA_MSGDMA) += altera-msgdma.o 17 obj-$(CONFIG_AMBA_PL08X) += amba-pl08x.o [all …]
|
/linux-6.12.1/drivers/mailbox/ |
D | bcm2835-mailbox.c | 1 // SPDX-License-Identifier: GPL-2.0 4 * Copyright (C) 2013-2014 Lubomir Rintel 8 * - arch/arm/mach-bcm2708/vcio.c file written by Gray Girling that was 9 * obtained from branch "rpi-3.6.y" of git://github.com/raspberrypi/ 11 * - drivers/mailbox/bcm2835-ipc.c by Lubomir Rintel at 12 * https://github.com/hackerspace/rpi-linux/blob/lr-raspberry-pi/drivers/ 13 * mailbox/bcm2835-ipc.c 14 * - documentation available on the following web site: 15 * https://github.com/raspberrypi/firmware/wiki/Mailbox-property-interface 19 #include <linux/dma-mapping.h> [all …]
|
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 6 on-chip processors through queued messages and interrupt driven 37 will be discovered and possibly managed at probe-time. 71 running on the Cortex-M3 rWTM secure processor of the Armada 37xx 88 This driver provides support for inter-processor communication 114 tristate "BCM2835 Mailbox" 119 BCM2835 Mailbox. 176 module will be called mailbox-mpfs. 185 providing an interface for invoking the inter-process communication 198 tristate "APM SoC X-Gene SLIMpro Mailbox Controller" [all …]
|
/linux-6.12.1/drivers/staging/vc04_services/bcm2835-audio/ |
D | bcm2835.c | 1 // SPDX-License-Identifier: GPL-2.0 4 #include <linux/dma-mapping.h> 10 #include "bcm2835.h" 38 return -ENOMEM; in bcm2835_devm_add_vchi_ctx() 95 .shortname = "bcm2835 HDMI", 96 .longname = "bcm2835 HDMI", 108 .shortname = "bcm2835 Headphones", 109 .longname = "bcm2835 Headphones", 145 err = snd_card_new(dev, -1, NULL, THIS_MODULE, sizeof(*chip), &card); in snd_add_child_device() 151 chip = card->private_data; in snd_add_child_device() [all …]
|
/linux-6.12.1/sound/soc/bcm/ |
D | bcm2835-i2s.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * ALSA SoC I2S Audio Layer for Broadcom BCM2835 SoC 23 * Copyright 2007-2010 Freescale Semiconductor, Inc. 130 unsigned int provider = dev->fmt & SND_SOC_DAIFMT_CLOCK_PROVIDER_MASK; in bcm2835_i2s_start_clock() 132 if (dev->clk_prepared) in bcm2835_i2s_start_clock() 138 clk_prepare_enable(dev->clk); in bcm2835_i2s_start_clock() 139 dev->clk_prepared = true; in bcm2835_i2s_start_clock() 148 if (dev->clk_prepared) in bcm2835_i2s_stop_clock() 149 clk_disable_unprepare(dev->clk); in bcm2835_i2s_stop_clock() 150 dev->clk_prepared = false; in bcm2835_i2s_stop_clock() [all …]
|
/linux-6.12.1/drivers/mmc/host/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 42 This option will enable the dma to work correctly, if you are using 43 Qcom SOCs and MMC, you would probably need this option to get DMA working. 53 If you have a STM32 sdmmc host with internal DMA say Y here. 94 implements a hardware byte swapper using a 32-bit datum. 123 disabled, it will steal the MMC cards away - rendering them 388 bool "DMA support on S3C SDHCI" 391 Enable DMA support on the Samsung S3C SDHCI glue. The DMA 431 tristate "SDHCI support for the BCM2835 & iProc SD/MMC Controller" 440 If you have a BCM2835 or IPROC platform with SD or MMC devices, [all …]
|
D | bcm2835.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * bcm2835 sdhost driver. 21 * Copyright (C) 2015-2016 Raspberry Pi (Trading) Ltd. 24 * mmc-bcm2835.c by Gellert Weisz 26 * sdhci-bcm2708.c by Broadcom 27 * sdhci-bcm2835.c by Stephen Warren and Oleksandr Tymoshenko 28 * sdhci.c and sdhci-pci.c by Pierre Ossman 34 #include <linux/dma-mapping.h> 52 #define SDCMD 0x00 /* Command to SD card - 16 R/W */ 53 #define SDARG 0x04 /* Argument to SD card - 32 R/W */ [all …]
|
/linux-6.12.1/drivers/gpu/drm/vc4/ |
D | vc4_drv.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Copyright (C) 2014-2015 Broadcom 11 * OpenGL ES 2.0-compatible 3D engine called V3D, and a highly 16 * compute shader-style jobs using the same shader processor as is 26 #include <linux/dma-mapping.h> 39 #include <soc/bcm2835/raspberrypi-firmware.h> 67 int min_pitch = DIV_ROUND_UP(args->width * args->bpp, 8); in vc4_dumb_fixup_args() 69 if (args->pitch < min_pitch) in vc4_dumb_fixup_args() 70 args->pitch = min_pitch; in vc4_dumb_fixup_args() 72 if (args->size < args->pitch * args->height) in vc4_dumb_fixup_args() [all …]
|
D | vc4_dsi.c | 1 // SPDX-License-Identifier: GPL-2.0-only 9 * BCM2835 contains two DSI modules, DSI0 and DSI1. DSI0 is a 10 * single-lane DSI controller, while DSI1 is a more modern 4-lane DSI 16 * This driver has been tested for DSI1 video-mode display only 21 #include <linux/clk-provider.h> 25 #include <linux/dma-mapping.h> 146 * of going to LP-STOP. 149 /* Transmit blanking packet only during vblank, instead of allowing LP-STOP. */ 151 /* Transmit blanking packet only during HFP, instead of allowing LP-STOP. */ 153 /* Transmit blanking packet only during HBP, instead of allowing LP-STOP. */ [all …]
|
/linux-6.12.1/drivers/firmware/ |
D | raspberrypi.c | 1 // SPDX-License-Identifier: GPL-2.0 9 #include <linux/dma-mapping.h> 18 #include <soc/bcm2835/raspberrypi-firmware.h> 42 complete(&fw->c); in response_callback() 46 * Sends a request to the firmware through the BCM2835 mailbox driver, 58 reinit_completion(&fw->c); in rpi_firmware_transaction() 59 ret = mbox_send_message(fw->chan, &message); in rpi_firmware_transaction() 61 if (wait_for_completion_timeout(&fw->c, HZ)) { in rpi_firmware_transaction() 64 ret = -ETIMEDOUT; in rpi_firmware_transaction() 67 dev_err(fw->cl.dev, "mbox_send_message returned %d\n", ret); in rpi_firmware_transaction() [all …]
|
/linux-6.12.1/arch/arm64/boot/dts/broadcom/ |
D | bcm2712.dtsi | 1 // SPDX-License-Identifier: (GPL-2.0 OR MIT) 2 #include <dt-bindings/interrupt-controller/arm-gic.h> 7 #address-cells = <2>; 8 #size-cells = <2>; 10 interrupt-parent = <&gicv2>; 14 clk_osc: clk-osc { 15 compatible = "fixed-clock"; 16 #clock-cells = <0>; 17 clock-output-names = "osc"; 18 clock-frequency = <54000000>; [all …]
|