| # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/dma/atmel,at91sam9g45-dma.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Atmel Direct Memory Access Controller (DMA) |
| |
| maintainers: |
| - Ludovic Desroches <ludovic.desroches@microchip.com> |
| |
| description: |
| The Atmel Direct Memory Access Controller (DMAC) transfers data from a source |
| peripheral to a destination peripheral over one or more AMBA buses. One channel |
| is required for each source/destination pair. In the most basic configuration, |
| the DMAC has one master interface and one channel. The master interface reads |
| the data from a source and writes it to a destination. Two AMBA transfers are |
| required for each DMAC data transfer. This is also known as a dual-access transfer. |
| The DMAC is programmed via the APB interface. |
| |
| properties: |
| compatible: |
| enum: |
| - atmel,at91sam9g45-dma |
| - atmel,at91sam9rl-dma |
| |
| reg: |
| maxItems: 1 |
| |
| interrupts: |
| maxItems: 1 |
| |
| "#dma-cells": |
| description: |
| Must be <2>, used to represent the number of integer cells in the dma |
| property of client devices. The two cells in order are |
| 1. The first cell represents the channel number. |
| 2. The second cell is 0 for RX and 1 for TX transfers. |
| const: 2 |
| |
| clocks: |
| maxItems: 1 |
| |
| clock-names: |
| const: dma_clk |
| |
| required: |
| - compatible |
| - reg |
| - interrupts |
| - "#dma-cells" |
| - clocks |
| - clock-names |
| |
| additionalProperties: false |
| |
| examples: |
| - | |
| dma-controller@ffffec00 { |
| compatible = "atmel,at91sam9g45-dma"; |
| reg = <0xffffec00 0x200>; |
| interrupts = <21>; |
| #dma-cells = <2>; |
| clocks = <&pmc 2 20>; |
| clock-names = "dma_clk"; |
| }; |
| |
| ... |