1 # SPDX-License-Identifier: (GPL-2.0-only OR BS 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/spi/st,stm3 4 $id: http://devicetree.org/schemas/spi/st,stm32-spi.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: STMicroelectronics STM32 SPI Controller 7 title: STMicroelectronics STM32 SPI Controller 8 8 9 description: | 9 description: | 10 The STM32 SPI controller is used to communic 10 The STM32 SPI controller is used to communicate with external devices using 11 the Serial Peripheral Interface. It supports 11 the Serial Peripheral Interface. It supports full-duplex, half-duplex and 12 simplex synchronous serial communication wit 12 simplex synchronous serial communication with external devices. It supports 13 from 4 to 32-bit data size. 13 from 4 to 32-bit data size. 14 14 15 maintainers: 15 maintainers: 16 - Erwan Leray <erwan.leray@foss.st.com> 16 - Erwan Leray <erwan.leray@foss.st.com> 17 - Fabrice Gasnier <fabrice.gasnier@foss.st.co 17 - Fabrice Gasnier <fabrice.gasnier@foss.st.com> 18 18 19 allOf: 19 allOf: 20 - $ref: spi-controller.yaml# 20 - $ref: spi-controller.yaml# 21 21 22 properties: 22 properties: 23 compatible: 23 compatible: 24 enum: 24 enum: 25 - st,stm32f4-spi 25 - st,stm32f4-spi 26 - st,stm32f7-spi << 27 - st,stm32h7-spi 26 - st,stm32h7-spi 28 - st,stm32mp25-spi << 29 27 30 reg: 28 reg: 31 maxItems: 1 29 maxItems: 1 32 30 33 clocks: 31 clocks: 34 maxItems: 1 32 maxItems: 1 35 33 36 interrupts: 34 interrupts: 37 maxItems: 1 35 maxItems: 1 38 36 39 resets: 37 resets: 40 maxItems: 1 38 maxItems: 1 41 39 42 dmas: 40 dmas: 43 description: | 41 description: | 44 DMA specifiers for tx and rx dma. DMA fi 42 DMA specifiers for tx and rx dma. DMA fifo mode must be used. See 45 the STM32 DMA controllers bindings Docum !! 43 the STM32 DMA bindings Documentation/devicetree/bindings/dma/st,stm32-dma.yaml. 46 items: 44 items: 47 - description: rx DMA channel 45 - description: rx DMA channel 48 - description: tx DMA channel 46 - description: tx DMA channel 49 47 50 dma-names: 48 dma-names: 51 items: 49 items: 52 - const: rx 50 - const: rx 53 - const: tx 51 - const: tx 54 << 55 access-controllers: << 56 minItems: 1 << 57 maxItems: 2 << 58 52 59 required: 53 required: 60 - compatible 54 - compatible 61 - reg 55 - reg 62 - clocks 56 - clocks 63 - interrupts 57 - interrupts 64 58 65 unevaluatedProperties: false 59 unevaluatedProperties: false 66 60 67 examples: 61 examples: 68 - | 62 - | 69 #include <dt-bindings/interrupt-controller 63 #include <dt-bindings/interrupt-controller/arm-gic.h> 70 #include <dt-bindings/clock/stm32mp1-clks. 64 #include <dt-bindings/clock/stm32mp1-clks.h> 71 #include <dt-bindings/reset/stm32mp1-reset 65 #include <dt-bindings/reset/stm32mp1-resets.h> 72 spi@4000b000 { 66 spi@4000b000 { 73 #address-cells = <1>; 67 #address-cells = <1>; 74 #size-cells = <0>; 68 #size-cells = <0>; 75 compatible = "st,stm32h7-spi"; 69 compatible = "st,stm32h7-spi"; 76 reg = <0x4000b000 0x400>; 70 reg = <0x4000b000 0x400>; 77 interrupts = <GIC_SPI 36 IRQ_TYPE_LEVE 71 interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>; 78 clocks = <&rcc SPI2_K>; 72 clocks = <&rcc SPI2_K>; 79 resets = <&rcc SPI2_R>; 73 resets = <&rcc SPI2_R>; 80 dmas = <&dmamux1 0 39 0x400 0x05>, 74 dmas = <&dmamux1 0 39 0x400 0x05>, 81 <&dmamux1 1 40 0x400 0x05>; 75 <&dmamux1 1 40 0x400 0x05>; 82 dma-names = "rx", "tx"; 76 dma-names = "rx", "tx"; 83 cs-gpios = <&gpioa 11 0>; 77 cs-gpios = <&gpioa 11 0>; 84 }; 78 }; 85 79 86 ... 80 ...
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.