forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
dt-bindings: dma: Convert stm32 MDMA bindings to json-schema
Convert the STM32 MDMA binding to DT schema format using json-schema Signed-off-by: Benjamin Gaignard <benjamin.gaignard@st.com> Signed-off-by: Rob Herring <robh@kernel.org>
- Loading branch information
1 parent
b80103f
commit 71021f3
Showing
2 changed files
with
105 additions
and
94 deletions.
There are no files selected for viewing
105 changes: 105 additions & 0 deletions
105
Documentation/devicetree/bindings/dma/st,stm32-mdma.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,105 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/dma/st,stm32-mdma.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: STMicroelectronics STM32 MDMA Controller bindings | ||
|
||
description: | | ||
The STM32 MDMA is a general-purpose direct memory access controller capable of | ||
supporting 64 independent DMA channels with 256 HW requests. | ||
DMA clients connected to the STM32 MDMA controller must use the format | ||
described in the dma.txt file, using a five-cell specifier for each channel: | ||
a phandle to the MDMA controller plus the following five integer cells: | ||
1. The request line number | ||
2. The priority level | ||
0x0: Low | ||
0x1: Medium | ||
0x2: High | ||
0x3: Very high | ||
3. A 32bit mask specifying the DMA channel configuration | ||
-bit 0-1: Source increment mode | ||
0x0: Source address pointer is fixed | ||
0x2: Source address pointer is incremented after each data transfer | ||
0x3: Source address pointer is decremented after each data transfer | ||
-bit 2-3: Destination increment mode | ||
0x0: Destination address pointer is fixed | ||
0x2: Destination address pointer is incremented after each data transfer | ||
0x3: Destination address pointer is decremented after each data transfer | ||
-bit 8-9: Source increment offset size | ||
0x0: byte (8bit) | ||
0x1: half-word (16bit) | ||
0x2: word (32bit) | ||
0x3: double-word (64bit) | ||
-bit 10-11: Destination increment offset size | ||
0x0: byte (8bit) | ||
0x1: half-word (16bit) | ||
0x2: word (32bit) | ||
0x3: double-word (64bit) | ||
-bit 25-18: The number of bytes to be transferred in a single transfer | ||
(min = 1 byte, max = 128 bytes) | ||
-bit 29:28: Trigger Mode | ||
0x00: Each MDMA request triggers a buffer transfer (max 128 bytes) | ||
0x1: Each MDMA request triggers a block transfer (max 64K bytes) | ||
0x2: Each MDMA request triggers a repeated block transfer | ||
0x3: Each MDMA request triggers a linked list transfer | ||
4. A 32bit value specifying the register to be used to acknowledge the request | ||
if no HW ack signal is used by the MDMA client | ||
5. A 32bit mask specifying the value to be written to acknowledge the request | ||
if no HW ack signal is used by the MDMA client | ||
maintainers: | ||
- Amelie Delaunay <amelie.delaunay@st.com> | ||
|
||
allOf: | ||
- $ref: "dma-controller.yaml#" | ||
|
||
properties: | ||
"#dma-cells": | ||
const: 5 | ||
|
||
compatible: | ||
const: st,stm32h7-mdma | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
clocks: | ||
maxItems: 1 | ||
|
||
interrupts: | ||
maxItems: 1 | ||
|
||
resets: | ||
maxItems: 1 | ||
|
||
st,ahb-addr-masks: | ||
$ref: /schemas/types.yaml#/definitions/uint32-array | ||
description: Array of u32 mask to list memory devices addressed via AHB bus. | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- clocks | ||
- interrupts | ||
|
||
examples: | ||
- | | ||
#include <dt-bindings/interrupt-controller/arm-gic.h> | ||
#include <dt-bindings/clock/stm32mp1-clks.h> | ||
#include <dt-bindings/reset/stm32mp1-resets.h> | ||
dma-controller@52000000 { | ||
compatible = "st,stm32h7-mdma"; | ||
reg = <0x52000000 0x1000>; | ||
interrupts = <122>; | ||
clocks = <&timer_clk>; | ||
resets = <&rcc 992>; | ||
#dma-cells = <5>; | ||
dma-channels = <16>; | ||
dma-requests = <32>; | ||
st,ahb-addr-masks = <0x20000000>, <0x00000000>; | ||
}; | ||
... | ||
|
This file was deleted.
Oops, something went wrong.