/linux/Documentation/arch/arm/stm32/ |
H A D | stm32-dma-mdma-chaining.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 STM32 DMA-MDMA chaining 9 ------------ 11 This document describes the STM32 DMA-MDMA chaining feature. But before going 14 To offload data transfers from the CPU, STM32 microprocessors (MPUs) embed 15 direct memory access controllers (DMA). 17 STM32MP1 SoCs embed both STM32 DMA and STM32 MDMA controllers. STM32 DMA 18 request routing capabilities are enhanced by a DMA request multiplexer 19 (STM32 DMAMUX). 21 **STM32 DMAMUX** [all …]
|
/linux/drivers/dma/stm32/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 3 # STM32 DMA controllers drivers 8 bool "STMicroelectronics STM32 DMA support" 12 Enable support for the on-chip DMA controller on STMicroelectronics 13 STM32 platforms. 14 If you have a board based on STM32 SoC with such DMA controller 15 and want to use DMA say Y here. 18 bool "STMicroelectronics STM32 DMA multiplexer support" 21 Enable support for the on-chip DMA multiplexer on STMicroelectronics 22 STM32 platforms. [all …]
|
H A D | Makefile | 1 # SPDX-License-Identifier: GPL-2.0-only 2 obj-$(CONFIG_STM32_DMA) += stm32-dma.o 3 obj-$(CONFIG_STM32_DMAMUX) += stm32-dmamux.o 4 obj-$(CONFIG_STM32_MDMA) += stm32-mdma.o 5 obj-$(CONFIG_STM32_DMA3) += stm32-dma3.o
|
H A D | stm32-dmamux.c | 1 // SPDX-License-Identifier: GPL-2.0-only 6 * Pierre-Yves Mordret <pierre-yves.mordret@st.com> 8 * DMA Router driver for STM32 DMA MUX 10 * Based on TI DMA Crossbar driver 41 u32 dma_requests; /* Number of DMA requests connected to DMAMUX */ 42 u32 dmamux_requests; /* Number of DMA requests routed toward DMAs */ 44 DECLARE_BITMAP(dma_inuse, STM32_DMAMUX_MAX_DMA_REQUESTS); /* Used DMA channel */ 48 u32 dma_reqs[]; /* Number of DMA Request per DMA masters. 49 * [0] holds number of DMA Masters. 70 /* Clear dma request */ in stm32_dmamux_free() [all …]
|
H A D | stm32-dma.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * Driver for STM32 DMA controller 5 * Inspired by dma-jz4740.c and tegra20-apb-dma.c 9 * Pierre-Yves Mordret <pierre-yves.mordret@st.com> 16 #include <linux/dma-mapping.h> 31 #include "../virt-dma.h" 33 #define STM32_DMA_LISR 0x0000 /* DMA Low Int Status Reg */ 34 #define STM32_DMA_HISR 0x0004 /* DMA High Int Status Reg */ 36 #define STM32_DMA_LIFCR 0x0008 /* DMA Low Int Flag Clear Reg */ 37 #define STM32_DMA_HIFCR 0x000c /* DMA High Int Flag Clear Reg */ [all …]
|
H A D | stm32-mdma.c | 1 // SPDX-License-Identifier: GPL-2.0-only 6 * Pierre-Yves Mordret <pierre-yves.mordret@st.com> 8 * Driver for STM32 MDMA controller 10 * Inspired by stm32-dma.c and dma-jz4780.c 17 #include <linux/dma-mapping.h> 33 #include "../virt-dma.h" 201 bool m2m_hw; /* True when MDMA is triggered by STM32 DMA */ 231 u32 request; /* STM32 DMA channel stream id, triggering MDMA */ 232 u32 cmar; /* STM32 DMA interrupt flag clear register address */ 233 u32 cmdr; /* STM32 DMA Transfer Complete flag */ [all …]
|
/linux/Documentation/devicetree/bindings/dma/stm32/ |
H A D | st,stm32-dma.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/dma/stm32/st,stm32-dma.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics STM32 DMA Controller 10 The STM32 DMA is a general-purpose direct memory access controller capable of 11 supporting 8 independent DMA channels. Each channel can have up to 8 requests. 12 DMA clients connected to the STM32 DMA controller must use the format 13 described in the dma.txt file, using a four-cell specifier for each 14 channel: a phandle to the DMA controller plus the following four integer cells: [all …]
|
H A D | st,stm32-mdma.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/dma/stm32/st,stm32-mdma.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics STM32 MDMA Controller 10 The STM32 MDMA is a general-purpose direct memory access controller capable of 11 supporting 64 independent DMA channels with 256 HW requests. 12 DMA clients connected to the STM32 MDMA controller must use the format 13 described in the dma.txt file, using a five-cell specifier for each channel: 21 3. A 32bit mask specifying the DMA channel configuration [all …]
|
H A D | st,stm32-dmamux.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/dma/stm3 [all...] |
/linux/arch/arm/boot/dts/st/ |
H A D | stm32f429.dtsi | 2 * Copyright 2015 - Maxime Coquelin <mcoquelin.stm32@gmail.com> 4 * This file is dual-licensed: you can use it either under the terms 22 * MA 02110-1301 USA 48 #include "../armv7-m.dtsi" 49 #include <dt-bindings/clock/stm32fx-clock.h> 50 #include <dt-bindings/mfd/stm32f4-rcc.h> 53 #address-cells = <1>; 54 #size-cells = <1>; 57 clk_hse: clk-hse { 58 #clock-cells = <0>; [all …]
|
H A D | stm32h743.dtsi | 2 * Copyright 2017 - Alexandre Torgue <alexandre.torgue@st.com> 4 * This file is dual-licensed: you can use it either under the terms 43 #include "../armv7-m.dtsi" 44 #include <dt-bindings/clock/stm32h7-clks.h> 45 #include <dt-bindings/mfd/stm32h7-rcc.h> 46 #include <dt-bindings/interrupt-controller/irq.h> 49 #address-cells = <1>; 50 #size-cells = <1>; 53 clk_hse: clk-hse { 54 #clock-cells = <0>; [all …]
|
H A D | stm32f746.dtsi | 2 * Copyright 2015 - Maxime Coquelin <mcoquelin.stm32@gmail.com> 4 * This file is dual-licensed: you can use it either under the terms 43 #include "../armv7-m.dtsi" 44 #include <dt-bindings/clock/stm32fx-clock.h> 45 #include <dt-bindings/mfd/stm32f7-rcc.h> 48 #address-cells = <1>; 49 #size-cells = <1>; 52 clk_hse: clk-hse { 53 #clock-cells = <0>; 54 compatible = "fixed-clock"; [all …]
|
/linux/Documentation/devicetree/bindings/spi/ |
H A D | st,stm32-spi.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/spi/st,stm32-spi.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics STM32 SPI Controller 10 The STM32 SPI controller is used to communicate with external devices using 11 the Serial Peripheral Interface. It supports full-duplex, half-duplex and 13 from 4 to 32-bit data size. 16 - Erwan Leray <erwan.leray@foss.st.com> 17 - Fabrice Gasnier <fabrice.gasnier@foss.st.com> [all …]
|
H A D | st,stm32-qspi.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/spi/st,stm32-qspi.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics STM32 Quad Serial Peripheral Interface (QSPI) 10 - Christophe Kerello <christophe.kerello@foss.st.com> 11 - Patrice Chotard <patrice.chotard@foss.st.com> 14 - $ref: spi-controller.yaml# 18 const: st,stm32f469-qspi 22 - description: registers [all …]
|
/linux/drivers/mfd/ |
H A D | stm32-timers.c | 1 // SPDX-License-Identifier: GPL-2.0 8 #include <linux/mfd/stm32-timers.h> 16 /* DIER register DMA enable bits */ 29 struct stm32_timers_dma *dma = p; in stm32_timers_dma_done() local 33 status = dmaengine_tx_status(dma->chan, dma->chan->cookie, &state); in stm32_timers_dma_done() 35 complete(&dma->completion); in stm32_timers_dma_done() 39 * stm32_timers_dma_burst_read - Read from timers registers using DMA. 41 * Read from STM32 timers registers using DMA on a single event. 43 * @buf: DMA'able destination buffer 45 * @reg: registers start offset for DMA to read from (like CCRx for capture) [all …]
|
/linux/Documentation/devicetree/bindings/mfd/ |
H A D | st,stm32-timers.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/mfd/st,stm32-timers.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics STM32 Timers 11 - advanced-control timers consist of a 16-bit auto-reload counter driven 14 - general-purpose timers consist of a 16-bit or 32-bit auto-reload counter 16 - basic timers consist of a 16-bit auto-reload counter driven by a 20 - Fabrice Gasnier <fabrice.gasnier@foss.st.com> 24 const: st,stm32-timers [all …]
|
/linux/Documentation/devicetree/bindings/iio/adc/ |
H A D | st,stm32-dfsdm-adc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/iio/adc/st,stm32-dfsdm-adc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics STM32 DFSDM ADC device driver 10 - Fabrice Gasnier <fabrice.gasnier@foss.st.com> 11 - Olivier Moysan <olivier.moysan@foss.st.com> 14 STM32 DFSDM ADC is a sigma delta analog-to-digital converter dedicated to 15 interface external sigma delta modulators to STM32 micro controllers. 17 - Sigma delta modulators (motor control, metering...) [all …]
|
/linux/Documentation/arch/arm/ |
H A D | index.rst | 1 .. SPDX-License-Identifier: GPL-2.0 12 cluster-pm-race-avoidance 28 SoC-specific documents 34 google/chromebook-boot-flow 45 keystone/knav-qmss 54 stm32/stm32f746-overview 55 stm32/overview 56 stm32/stm32h743-overview 57 stm32/stm32h750-overview 58 stm32/stm32f769-overview [all …]
|
/linux/Documentation/devicetree/bindings/media/ |
H A D | st,stm32-dcmi.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/media/st,stm32-dcmi.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics STM32 Digital Camera Memory Interface (DCMI) 10 - Hugues Fruchet <hugues.fruchet@foss.st.com> 14 const: st,stm32-dcmi 25 clock-names: 27 - const: mclk 32 dma-names: [all …]
|
/linux/Documentation/devicetree/bindings/crypto/ |
H A D | st,stm32-hash.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/crypto/st,stm32-hash.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics STM32 HASH 9 description: The STM32 HASH block is built on the HASH block found in 14 - Lionel Debieve <lionel.debieve@foss.st.com> 19 - st,stn8820-hash 20 - stericsson,ux500-hash 21 - st,stm32f456-hash [all …]
|
H A D | st,stm32-cryp.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/crypto/st,stm32-cryp.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STMicroelectronics STM32 CRYP 9 description: The STM32 CRYP block is built on the CRYP block found in 14 - Lionel Debieve <lionel.debieve@foss.st.com> 19 - st,stn8820-cryp 20 - stericsson,ux500-cryp 21 - st,stm32f756-cryp [all …]
|
/linux/Documentation/devicetree/bindings/serial/ |
H A D | st,stm32-uart.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/serial/st,stm32-uart.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 8 - Erwan Le Ray <erwan.leray@foss.st.com> 10 title: STMicroelectronics STM32 USART 15 - st,stm32-uart 16 - st,stm32f7-uart 17 - st,stm32h7-uart 34 st,hw-flow-ctrl: [all …]
|
/linux/Documentation/devicetree/bindings/bus/ |
H A D | st,stm32-etzpc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/bus/st,stm32-etzpc.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: STM32 Extended TrustZone protection controller 11 devices with programmable-security attributes (securable resources). 14 - Gatien Chevallier <gatien.chevallier@foss.st.com> 20 const: st,stm32-etzpc 22 - compatible 27 - const: st,stm32-etzpc [all …]
|
/linux/drivers/i2c/busses/ |
H A D | i2c-stm32.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * i2c-stm32.c 9 #include "i2c-stm32.h" 11 /* Functions for DMA support */ 17 struct stm32_i2c_dma *dma; in stm32_i2c_dma_request() local 21 dma = devm_kzalloc(dev, sizeof(*dma), GFP_KERNEL); in stm32_i2c_dma_request() 22 if (!dma) in stm32_i2c_dma_request() 23 return ERR_PTR(-ENOMEM); in stm32_i2c_dma_request() 25 /* Request and configure I2C TX dma channel */ in stm32_i2c_dma_request() 26 dma->chan_tx = dma_request_chan(dev, "tx"); in stm32_i2c_dma_request() [all …]
|
/linux/Documentation/devicetree/bindings/i2c/ |
H A D | st,stm32-i2c.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 4 $id: http://devicetree.org/schemas/i2c/st,stm32-i2c.yaml# 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 7 title: I2C controller embedded in STMicroelectronics STM32 I2C platform 10 - Pierre-Yves MORDRET <pierre-yves.mordret@foss.st.com> 13 - $ref: /schemas/i2c/i2c-controller.yaml# 14 - if: 19 - st,stm32f7-i2c 20 - st,stm32mp13-i2c [all …]
|