Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion bsp/stm32/libraries/HAL_Drivers/drivers/SConscript
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import os
cwd = GetCurrentDir()
group = []
src = []
src += ['drv_dma.c']
path = [cwd]

if GetDepend(['RT_USING_PIN']):
Expand Down Expand Up @@ -35,7 +36,7 @@ if GetDepend('RT_USING_SOFT_SPI'):
if GetDepend(['RT_USING_I2C', 'RT_USING_I2C_BITOPS']):
if GetDepend('BSP_USING_I2C1') or GetDepend('BSP_USING_I2C2') or GetDepend('BSP_USING_I2C3') or GetDepend('BSP_USING_I2C4'):
src += ['drv_soft_i2c.c']

if GetDepend(['RT_USING_I2C']):
if GetDepend('BSP_USING_HARD_I2C1') or GetDepend('BSP_USING_HARD_I2C2') or GetDepend('BSP_USING_HARD_I2C3') or GetDepend('BSP_USING_HARD_I2C4'):
src += ['drv_hard_i2c.c']
Expand Down
101 changes: 81 additions & 20 deletions bsp/stm32/libraries/HAL_Drivers/drivers/config/f0/spi_config.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
* Date Author Notes
* 2018-11-06 SummerGift first version
* 2019-01-05 SummerGift modify DMA support
* 2026-04-13 wdfk-prog Unify DMA config descriptors
*/

#ifndef __SPI_CONFIG_H__
Expand All @@ -30,24 +31,54 @@ extern "C" {
#endif /* BSP_USING_SPI1 */

#ifdef BSP_SPI1_TX_USING_DMA
#ifndef SPI1_TX_DMA_PRIORITY
#define SPI1_TX_DMA_PRIORITY DMA_PRIORITY_LOW
#endif /* SPI1_TX_DMA_PRIORITY */

#ifndef SPI1_TX_DMA_PREEMPT_PRIORITY
#define SPI1_TX_DMA_PREEMPT_PRIORITY 1
#endif /* SPI1_TX_DMA_PREEMPT_PRIORITY */

#ifndef SPI1_TX_DMA_SUB_PRIORITY
#define SPI1_TX_DMA_SUB_PRIORITY 0
#endif /* SPI1_TX_DMA_SUB_PRIORITY */
#ifndef SPI1_TX_DMA_CONFIG
#define SPI1_TX_DMA_CONFIG \
{ \
.dma_rcc = SPI1_TX_DMA_RCC, \
.Instance = SPI1_TX_DMA_INSTANCE, \
.dma_irq = SPI1_TX_DMA_IRQ, \
}
STM32_DMA_TX_BYTE_CONFIG_INIT_EX( \
SPI1_TX_DMA_INSTANCE, \
SPI1_TX_DMA_RCC, \
SPI1_TX_DMA_IRQ, \
SPI1_TX_DMA_CHANNEL, \
0U, \
SPI1_TX_DMA_PRIORITY, \
SPI1_TX_DMA_PREEMPT_PRIORITY, \
SPI1_TX_DMA_SUB_PRIORITY)
#endif /* SPI1_TX_DMA_CONFIG */
#endif /* BSP_SPI1_TX_USING_DMA */

#ifdef BSP_SPI1_RX_USING_DMA
#ifndef SPI1_RX_DMA_PRIORITY
#define SPI1_RX_DMA_PRIORITY DMA_PRIORITY_HIGH
#endif /* SPI1_RX_DMA_PRIORITY */

#ifndef SPI1_RX_DMA_PREEMPT_PRIORITY
#define SPI1_RX_DMA_PREEMPT_PRIORITY 0
#endif /* SPI1_RX_DMA_PREEMPT_PRIORITY */

#ifndef SPI1_RX_DMA_SUB_PRIORITY
#define SPI1_RX_DMA_SUB_PRIORITY 0
#endif /* SPI1_RX_DMA_SUB_PRIORITY */
#ifndef SPI1_RX_DMA_CONFIG
#define SPI1_RX_DMA_CONFIG \
{ \
.dma_rcc = SPI1_RX_DMA_RCC, \
.Instance = SPI1_RX_DMA_INSTANCE, \
.dma_irq = SPI1_RX_DMA_IRQ, \
}
STM32_DMA_RX_BYTE_CONFIG_INIT_EX( \
SPI1_RX_DMA_INSTANCE, \
SPI1_RX_DMA_RCC, \
SPI1_RX_DMA_IRQ, \
SPI1_RX_DMA_CHANNEL, \
0U, \
SPI1_RX_DMA_PRIORITY, \
SPI1_RX_DMA_PREEMPT_PRIORITY, \
SPI1_RX_DMA_SUB_PRIORITY)
#endif /* SPI1_RX_DMA_CONFIG */
#endif /* BSP_SPI1_RX_USING_DMA */

Expand All @@ -63,24 +94,54 @@ extern "C" {
#endif /* BSP_USING_SPI2 */

#ifdef BSP_SPI2_TX_USING_DMA
#ifndef SPI2_TX_DMA_PRIORITY
#define SPI2_TX_DMA_PRIORITY DMA_PRIORITY_LOW
#endif /* SPI2_TX_DMA_PRIORITY */

#ifndef SPI2_TX_DMA_PREEMPT_PRIORITY
#define SPI2_TX_DMA_PREEMPT_PRIORITY 1
#endif /* SPI2_TX_DMA_PREEMPT_PRIORITY */

#ifndef SPI2_TX_DMA_SUB_PRIORITY
#define SPI2_TX_DMA_SUB_PRIORITY 0
#endif /* SPI2_TX_DMA_SUB_PRIORITY */
#ifndef SPI2_TX_DMA_CONFIG
#define SPI2_TX_DMA_CONFIG \
{ \
.dma_rcc = SPI2_TX_DMA_RCC, \
.Instance = SPI2_TX_DMA_INSTANCE, \
.dma_irq = SPI2_TX_DMA_IRQ, \
}
STM32_DMA_TX_BYTE_CONFIG_INIT_EX( \
SPI2_TX_DMA_INSTANCE, \
SPI2_TX_DMA_RCC, \
SPI2_TX_DMA_IRQ, \
SPI2_TX_DMA_CHANNEL, \
0U, \
SPI2_TX_DMA_PRIORITY, \
SPI2_TX_DMA_PREEMPT_PRIORITY, \
SPI2_TX_DMA_SUB_PRIORITY)
#endif /* SPI2_TX_DMA_CONFIG */
#endif /* BSP_SPI2_TX_USING_DMA */

#ifdef BSP_SPI2_RX_USING_DMA
#ifndef SPI2_RX_DMA_PRIORITY
#define SPI2_RX_DMA_PRIORITY DMA_PRIORITY_HIGH
#endif /* SPI2_RX_DMA_PRIORITY */

#ifndef SPI2_RX_DMA_PREEMPT_PRIORITY
#define SPI2_RX_DMA_PREEMPT_PRIORITY 0
#endif /* SPI2_RX_DMA_PREEMPT_PRIORITY */

#ifndef SPI2_RX_DMA_SUB_PRIORITY
#define SPI2_RX_DMA_SUB_PRIORITY 0
#endif /* SPI2_RX_DMA_SUB_PRIORITY */
#ifndef SPI2_RX_DMA_CONFIG
#define SPI2_RX_DMA_CONFIG \
{ \
.dma_rcc = SPI2_RX_DMA_RCC, \
.Instance = SPI2_RX_DMA_INSTANCE, \
.dma_irq = SPI2_RX_DMA_IRQ, \
}
STM32_DMA_RX_BYTE_CONFIG_INIT_EX( \
SPI2_RX_DMA_INSTANCE, \
SPI2_RX_DMA_RCC, \
SPI2_RX_DMA_IRQ, \
SPI2_RX_DMA_CHANNEL, \
0U, \
SPI2_RX_DMA_PRIORITY, \
SPI2_RX_DMA_PREEMPT_PRIORITY, \
SPI2_RX_DMA_SUB_PRIORITY)
#endif /* SPI2_RX_DMA_CONFIG */
#endif /* BSP_SPI2_RX_USING_DMA */

Expand Down
57 changes: 45 additions & 12 deletions bsp/stm32/libraries/HAL_Drivers/drivers/config/f0/uart_config.h
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
* Change Logs:
* Date Author Notes
* 2018-10-30 zylx first version
* 2026-04-13 wdfk-prog Unify DMA config descriptors
*/

#ifndef __UART_CONFIG_H__
Expand All @@ -29,13 +30,29 @@ extern "C" {
#endif /* BSP_USING_UART1 */

#if defined(BSP_UART1_RX_USING_DMA)
#ifndef UART1_RX_DMA_PRIORITY
#define UART1_RX_DMA_PRIORITY DMA_PRIORITY_MEDIUM
#endif /* UART1_RX_DMA_PRIORITY */

#ifndef UART1_RX_DMA_PREEMPT_PRIORITY
#define UART1_RX_DMA_PREEMPT_PRIORITY 0
#endif /* UART1_RX_DMA_PREEMPT_PRIORITY */

#ifndef UART1_RX_DMA_SUB_PRIORITY
#define UART1_RX_DMA_SUB_PRIORITY 0
#endif /* UART1_RX_DMA_SUB_PRIORITY */

#ifndef UART1_DMA_RX_CONFIG
#define UART1_DMA_RX_CONFIG \
{ \
.Instance = UART1_RX_DMA_INSTANCE, \
.dma_rcc = UART1_RX_DMA_RCC, \
.dma_irq = UART1_RX_DMA_IRQ, \
}
#define UART1_DMA_RX_CONFIG \
STM32_DMA_RX_BYTE_CIRCULAR_CONFIG_INIT_EX( \
UART1_RX_DMA_INSTANCE, \
UART1_RX_DMA_RCC, \
UART1_RX_DMA_IRQ, \
UART1_RX_DMA_CHANNEL, \
UART1_RX_DMA_REQUEST, \
UART1_RX_DMA_PRIORITY, \
UART1_RX_DMA_PREEMPT_PRIORITY, \
UART1_RX_DMA_SUB_PRIORITY)
#endif /* UART1_DMA_RX_CONFIG */
#endif /* BSP_UART1_RX_USING_DMA */

Expand All @@ -51,13 +68,29 @@ extern "C" {
#endif /* BSP_USING_UART2 */

#if defined(BSP_UART2_RX_USING_DMA)
#ifndef UART2_RX_DMA_PRIORITY
#define UART2_RX_DMA_PRIORITY DMA_PRIORITY_MEDIUM
#endif /* UART2_RX_DMA_PRIORITY */

#ifndef UART2_RX_DMA_PREEMPT_PRIORITY
#define UART2_RX_DMA_PREEMPT_PRIORITY 0
#endif /* UART2_RX_DMA_PREEMPT_PRIORITY */

#ifndef UART2_RX_DMA_SUB_PRIORITY
#define UART2_RX_DMA_SUB_PRIORITY 0
#endif /* UART2_RX_DMA_SUB_PRIORITY */

#ifndef UART2_DMA_RX_CONFIG
#define UART2_DMA_RX_CONFIG \
{ \
.Instance = UART2_RX_DMA_INSTANCE, \
.dma_rcc = UART2_RX_DMA_RCC, \
.dma_irq = UART2_RX_DMA_IRQ, \
}
#define UART2_DMA_RX_CONFIG \
STM32_DMA_RX_BYTE_CIRCULAR_CONFIG_INIT_EX( \
UART2_RX_DMA_INSTANCE, \
UART2_RX_DMA_RCC, \
UART2_RX_DMA_IRQ, \
UART2_RX_DMA_CHANNEL, \
UART2_RX_DMA_REQUEST, \
UART2_RX_DMA_PRIORITY, \
UART2_RX_DMA_PREEMPT_PRIORITY, \
UART2_RX_DMA_SUB_PRIORITY)
#endif /* UART2_DMA_RX_CONFIG */
#endif /* BSP_UART2_RX_USING_DMA */

Expand Down
Loading
Loading