0001 # SPDX-License-Identifier: GPL-2.0
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/dma/arm,pl330.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: ARM PrimeCell PL330 DMA Controller
0008
0009 maintainers:
0010 - Vinod Koul <vkoul@kernel.org>
0011
0012 description:
0013 The ARM PrimeCell PL330 DMA controller can move blocks of memory contents
0014 between memory and peripherals or memory to memory.
0015
0016 # We need a select here so we don't match all nodes with 'arm,primecell'
0017 select:
0018 properties:
0019 compatible:
0020 contains:
0021 const: arm,pl330
0022 required:
0023 - compatible
0024
0025 allOf:
0026 - $ref: dma-controller.yaml#
0027 - $ref: /schemas/arm/primecell.yaml#
0028
0029 properties:
0030 compatible:
0031 items:
0032 - enum:
0033 - arm,pl330
0034 - const: arm,primecell
0035
0036 reg:
0037 maxItems: 1
0038
0039 interrupts:
0040 minItems: 1
0041 maxItems: 32
0042 description: A single combined interrupt or an interrupt per event
0043
0044 '#dma-cells':
0045 const: 1
0046 description: Contains the DMA request number for the consumer
0047
0048 arm,pl330-broken-no-flushp:
0049 type: boolean
0050 description: quirk for avoiding to execute DMAFLUSHP
0051
0052 arm,pl330-periph-burst:
0053 type: boolean
0054 description: quirk for performing burst transfer only
0055
0056 dma-coherent: true
0057
0058 power-domains:
0059 maxItems: 1
0060
0061 resets:
0062 minItems: 1
0063 maxItems: 2
0064
0065 reset-names:
0066 minItems: 1
0067 items:
0068 - const: dma
0069 - const: dma-ocp
0070
0071 required:
0072 - compatible
0073 - reg
0074 - interrupts
0075
0076 unevaluatedProperties: false
0077
0078 examples:
0079 - |
0080 dma-controller@12680000 {
0081 compatible = "arm,pl330", "arm,primecell";
0082 reg = <0x12680000 0x1000>;
0083 interrupts = <99>;
0084 #dma-cells = <1>;
0085 };
0086 ...