1e67e8565SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0 2e67e8565SEmmanuel Vadot%YAML 1.2 3e67e8565SEmmanuel Vadot--- 4e67e8565SEmmanuel Vadot$id: http://devicetree.org/schemas/dma/arm,pl330.yaml# 5e67e8565SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6e67e8565SEmmanuel Vadot 7e67e8565SEmmanuel Vadottitle: ARM PrimeCell PL330 DMA Controller 8e67e8565SEmmanuel Vadot 9e67e8565SEmmanuel Vadotmaintainers: 10e67e8565SEmmanuel Vadot - Vinod Koul <vkoul@kernel.org> 11e67e8565SEmmanuel Vadot 12e67e8565SEmmanuel Vadotdescription: 13e67e8565SEmmanuel Vadot The ARM PrimeCell PL330 DMA controller can move blocks of memory contents 14e67e8565SEmmanuel Vadot between memory and peripherals or memory to memory. 15e67e8565SEmmanuel Vadot 16e67e8565SEmmanuel Vadot# We need a select here so we don't match all nodes with 'arm,primecell' 17e67e8565SEmmanuel Vadotselect: 18e67e8565SEmmanuel Vadot properties: 19e67e8565SEmmanuel Vadot compatible: 20e67e8565SEmmanuel Vadot contains: 21e67e8565SEmmanuel Vadot const: arm,pl330 22e67e8565SEmmanuel Vadot required: 23e67e8565SEmmanuel Vadot - compatible 24e67e8565SEmmanuel Vadot 25e67e8565SEmmanuel VadotallOf: 26e67e8565SEmmanuel Vadot - $ref: dma-controller.yaml# 27e67e8565SEmmanuel Vadot - $ref: /schemas/arm/primecell.yaml# 28e67e8565SEmmanuel Vadot 29e67e8565SEmmanuel Vadotproperties: 30e67e8565SEmmanuel Vadot compatible: 31e67e8565SEmmanuel Vadot items: 32e67e8565SEmmanuel Vadot - enum: 33e67e8565SEmmanuel Vadot - arm,pl330 34e67e8565SEmmanuel Vadot - const: arm,primecell 35e67e8565SEmmanuel Vadot 36e67e8565SEmmanuel Vadot reg: 37e67e8565SEmmanuel Vadot maxItems: 1 38e67e8565SEmmanuel Vadot 39e67e8565SEmmanuel Vadot interrupts: 40e67e8565SEmmanuel Vadot minItems: 1 41e67e8565SEmmanuel Vadot maxItems: 32 42e67e8565SEmmanuel Vadot description: A single combined interrupt or an interrupt per event 43e67e8565SEmmanuel Vadot 44e67e8565SEmmanuel Vadot '#dma-cells': 45e67e8565SEmmanuel Vadot const: 1 46e67e8565SEmmanuel Vadot description: Contains the DMA request number for the consumer 47e67e8565SEmmanuel Vadot 48e67e8565SEmmanuel Vadot arm,pl330-broken-no-flushp: 49e67e8565SEmmanuel Vadot type: boolean 50e67e8565SEmmanuel Vadot description: quirk for avoiding to execute DMAFLUSHP 51e67e8565SEmmanuel Vadot 52e67e8565SEmmanuel Vadot arm,pl330-periph-burst: 53e67e8565SEmmanuel Vadot type: boolean 54e67e8565SEmmanuel Vadot description: quirk for performing burst transfer only 55e67e8565SEmmanuel Vadot 56e67e8565SEmmanuel Vadot dma-coherent: true 57e67e8565SEmmanuel Vadot 58*7ef62cebSEmmanuel Vadot iommus: 59*7ef62cebSEmmanuel Vadot minItems: 1 60*7ef62cebSEmmanuel Vadot maxItems: 9 61*7ef62cebSEmmanuel Vadot description: Up to 1 IOMMU entry per DMA channel for writes and 1 62*7ef62cebSEmmanuel Vadot IOMMU entry for reads. 63*7ef62cebSEmmanuel Vadot 64d5b0e70fSEmmanuel Vadot power-domains: 65d5b0e70fSEmmanuel Vadot maxItems: 1 66d5b0e70fSEmmanuel Vadot 67e67e8565SEmmanuel Vadot resets: 68e67e8565SEmmanuel Vadot minItems: 1 69e67e8565SEmmanuel Vadot maxItems: 2 70e67e8565SEmmanuel Vadot 71e67e8565SEmmanuel Vadot reset-names: 72e67e8565SEmmanuel Vadot minItems: 1 73e67e8565SEmmanuel Vadot items: 74e67e8565SEmmanuel Vadot - const: dma 75e67e8565SEmmanuel Vadot - const: dma-ocp 76e67e8565SEmmanuel Vadot 77e67e8565SEmmanuel Vadotrequired: 78e67e8565SEmmanuel Vadot - compatible 79e67e8565SEmmanuel Vadot - reg 80e67e8565SEmmanuel Vadot - interrupts 81e67e8565SEmmanuel Vadot 82e67e8565SEmmanuel VadotunevaluatedProperties: false 83e67e8565SEmmanuel Vadot 84e67e8565SEmmanuel Vadotexamples: 85e67e8565SEmmanuel Vadot - | 86e67e8565SEmmanuel Vadot dma-controller@12680000 { 87e67e8565SEmmanuel Vadot compatible = "arm,pl330", "arm,primecell"; 88e67e8565SEmmanuel Vadot reg = <0x12680000 0x1000>; 89e67e8565SEmmanuel Vadot interrupts = <99>; 90e67e8565SEmmanuel Vadot #dma-cells = <1>; 91e67e8565SEmmanuel Vadot }; 92e67e8565SEmmanuel Vadot... 93