Path: blob/master/Documentation/devicetree/bindings/dma/brcm,bcm2835-dma.yaml
26308 views
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)1%YAML 1.22---3$id: http://devicetree.org/schemas/dma/brcm,bcm2835-dma.yaml#4$schema: http://devicetree.org/meta-schemas/core.yaml#56title: BCM2835 DMA controller78maintainers:9- Nicolas Saenz Julienne <nsaenz@kernel.org>1011description:12The BCM2835 DMA controller has 16 channels in total. Only the lower1313 channels have an associated IRQ. Some arbitrary channels are used by the14VideoCore firmware (1,3,6,7 in the current firmware version). The channels150, 2 and 3 have special functionality and should not be used by the driver.1617allOf:18- $ref: dma-controller.yaml#1920properties:21compatible:22const: brcm,bcm2835-dma2324reg:25maxItems: 12627interrupts:28description:29Should contain the DMA interrupts associated to the DMA channels in30ascending order.31minItems: 132maxItems: 163334interrupt-names:35minItems: 136maxItems: 163738'#dma-cells':39description: The single cell represents the DREQ number.40const: 14142brcm,dma-channel-mask:43$ref: /schemas/types.yaml#/definitions/uint3244description:45Bitmask of available DMA channels in ascending order that are46not reserved by firmware and are available to the47kernel. i.e. first channel corresponds to LSB.4849unevaluatedProperties: false5051required:52- compatible53- reg54- interrupts55- "#dma-cells"56- brcm,dma-channel-mask5758examples:59- |60dma-controller@7e007000 {61compatible = "brcm,bcm2835-dma";62reg = <0x7e007000 0xf00>;63interrupts = <1 16>,64<1 17>,65<1 18>,66<1 19>,67<1 20>,68<1 21>,69<1 22>,70<1 23>,71<1 24>,72<1 25>,73<1 26>,74/* dma channel 11-14 share one irq */75<1 27>,76<1 27>,77<1 27>,78<1 27>,79/* unused shared irq for all channels */80<1 28>;81interrupt-names = "dma0",82"dma1",83"dma2",84"dma3",85"dma4",86"dma5",87"dma6",88"dma7",89"dma8",90"dma9",91"dma10",92"dma11",93"dma12",94"dma13",95"dma14",96"dma-shared-all";97#dma-cells = <1>;98brcm,dma-channel-mask = <0x7f35>;99};100101...102103104