Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: dma: Convert stm32 DMAMUX bindings to json-schema

Convert the STM32 DMAMUX 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>

authored by

Benjamin Gaignard and committed by
Rob Herring
0b7c446f 71021f3f

+52 -84
+52
Documentation/devicetree/bindings/dma/st,stm32-dmamux.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/dma/st,stm32-dmamux.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: STMicroelectronics STM32 DMA MUX (DMA request router) bindings 8 + 9 + maintainers: 10 + - Amelie Delaunay <amelie.delaunay@st.com> 11 + 12 + allOf: 13 + - $ref: "dma-router.yaml#" 14 + 15 + properties: 16 + "#dma-cells": 17 + const: 3 18 + 19 + compatible: 20 + const: st,stm32h7-dmamux 21 + 22 + reg: 23 + maxItems: 1 24 + 25 + clocks: 26 + maxItems: 1 27 + 28 + resets: 29 + maxItems: 1 30 + 31 + required: 32 + - compatible 33 + - reg 34 + - dma-masters 35 + 36 + examples: 37 + - | 38 + #include <dt-bindings/interrupt-controller/arm-gic.h> 39 + #include <dt-bindings/clock/stm32mp1-clks.h> 40 + #include <dt-bindings/reset/stm32mp1-resets.h> 41 + dma-router@40020800 { 42 + compatible = "st,stm32h7-dmamux"; 43 + reg = <0x40020800 0x3c>; 44 + #dma-cells = <3>; 45 + dma-requests = <128>; 46 + dma-channels = <16>; 47 + dma-masters = <&dma1 &dma2>; 48 + clocks = <&timer_clk>; 49 + }; 50 + 51 + ... 52 +
-84
Documentation/devicetree/bindings/dma/stm32-dmamux.txt
··· 1 - STM32 DMA MUX (DMA request router) 2 - 3 - Required properties: 4 - - compatible: "st,stm32h7-dmamux" 5 - - reg: Memory map for accessing module 6 - - #dma-cells: Should be set to <3>. 7 - First parameter is request line number. 8 - Second is DMA channel configuration 9 - Third is Fifo threshold 10 - For more details about the three cells, please see 11 - stm32-dma.txt documentation binding file 12 - - dma-masters: Phandle pointing to the DMA controllers. 13 - Several controllers are allowed. Only "st,stm32-dma" DMA 14 - compatible are supported. 15 - 16 - Optional properties: 17 - - dma-channels : Number of DMA requests supported. 18 - - dma-requests : Number of DMAMUX requests supported. 19 - - resets: Reference to a reset controller asserting the DMA controller 20 - - clocks: Input clock of the DMAMUX instance. 21 - 22 - Example: 23 - 24 - /* DMA controller 1 */ 25 - dma1: dma-controller@40020000 { 26 - compatible = "st,stm32-dma"; 27 - reg = <0x40020000 0x400>; 28 - interrupts = <11>, 29 - <12>, 30 - <13>, 31 - <14>, 32 - <15>, 33 - <16>, 34 - <17>, 35 - <47>; 36 - clocks = <&timer_clk>; 37 - #dma-cells = <4>; 38 - st,mem2mem; 39 - resets = <&rcc 150>; 40 - dma-channels = <8>; 41 - dma-requests = <8>; 42 - }; 43 - 44 - /* DMA controller 1 */ 45 - dma2: dma@40020400 { 46 - compatible = "st,stm32-dma"; 47 - reg = <0x40020400 0x400>; 48 - interrupts = <56>, 49 - <57>, 50 - <58>, 51 - <59>, 52 - <60>, 53 - <68>, 54 - <69>, 55 - <70>; 56 - clocks = <&timer_clk>; 57 - #dma-cells = <4>; 58 - st,mem2mem; 59 - resets = <&rcc 150>; 60 - dma-channels = <8>; 61 - dma-requests = <8>; 62 - }; 63 - 64 - /* DMA mux */ 65 - dmamux1: dma-router@40020800 { 66 - compatible = "st,stm32h7-dmamux"; 67 - reg = <0x40020800 0x3c>; 68 - #dma-cells = <3>; 69 - dma-requests = <128>; 70 - dma-channels = <16>; 71 - dma-masters = <&dma1 &dma2>; 72 - clocks = <&timer_clk>; 73 - }; 74 - 75 - /* DMA client */ 76 - usart1: serial@40011000 { 77 - compatible = "st,stm32-usart", "st,stm32-uart"; 78 - reg = <0x40011000 0x400>; 79 - interrupts = <37>; 80 - clocks = <&timer_clk>; 81 - dmas = <&dmamux1 41 0x414 0>, 82 - <&dmamux1 42 0x414 0>; 83 - dma-names = "rx", "tx"; 84 - };