From c17a0ebacf8880674a016d6e53061ad243bfa614 Mon Sep 17 00:00:00 2001 From: David Sidrane Date: Thu, 3 Sep 2020 05:29:12 -0700 Subject: [PATCH] holybro_durandal-v1:Add support for DMA on SPI6 --- .../durandal-v1/nuttx-config/include/board_dma_map.h | 5 +++++ boards/holybro/durandal-v1/nuttx-config/nsh/defconfig | 4 ++++ boards/holybro/durandal-v1/nuttx-config/scripts/script.ld | 6 ++++++ .../holybro/durandal-v1/nuttx-config/stackcheck/defconfig | 4 ++++ 4 files changed, 19 insertions(+) diff --git a/boards/holybro/durandal-v1/nuttx-config/include/board_dma_map.h b/boards/holybro/durandal-v1/nuttx-config/include/board_dma_map.h index 9af52490b9..c93b7fe49c 100644 --- a/boards/holybro/durandal-v1/nuttx-config/include/board_dma_map.h +++ b/boards/holybro/durandal-v1/nuttx-config/include/board_dma_map.h @@ -33,8 +33,13 @@ #pragma once +// DMAMUX1 #define DMAMAP_SPI1_RX DMAMAP_DMA12_SPI1RX_0 /* DMA1:37 */ #define DMAMAP_SPI1_TX DMAMAP_DMA12_SPI1TX_0 /* DMA1:38 */ #define DMAMAP_UART8_RX DMAMAP_DMA12_UART8RX_0 /* DMA1:81 */ #define DMAMAP_UART8_TX DMAMAP_DMA12_UART8TX_0 /* DMA1:82 */ + +// DMAMUX2 +#define DMAMAP_SPI6_RX DMAMAP_BDMA_SPI6_RX /* BDMA:11 */ +#define DMAMAP_SPI6_TX DMAMAP_BDMA_SPI6_TX /* BDMA:12 */ diff --git a/boards/holybro/durandal-v1/nuttx-config/nsh/defconfig b/boards/holybro/durandal-v1/nuttx-config/nsh/defconfig index 008033b05d..fffc7ab0b4 100644 --- a/boards/holybro/durandal-v1/nuttx-config/nsh/defconfig +++ b/boards/holybro/durandal-v1/nuttx-config/nsh/defconfig @@ -53,6 +53,7 @@ CONFIG_CDCACM_VENDORSTR="Holybro" CONFIG_CLOCK_MONOTONIC=y CONFIG_DEBUG_FULLOPT=y CONFIG_DEBUG_HARDFAULT_ALERT=y +CONFIG_DEBUG_MEMFAULT=y CONFIG_DEBUG_SYMBOLS=y CONFIG_DEFAULT_SMALL=y CONFIG_DEV_FIFO_SIZE=0 @@ -153,6 +154,7 @@ CONFIG_STDIO_BUFFER_SIZE=256 CONFIG_STM32H7_ADC1=y CONFIG_STM32H7_BBSRAM=y CONFIG_STM32H7_BBSRAM_FILES=5 +CONFIG_STM32H7_BDMA=y CONFIG_STM32H7_BKPSRAM=y CONFIG_STM32H7_DMA1=y CONFIG_STM32H7_DMA2=y @@ -181,6 +183,8 @@ CONFIG_STM32H7_SPI2=y CONFIG_STM32H7_SPI4=y CONFIG_STM32H7_SPI5=y CONFIG_STM32H7_SPI6=y +CONFIG_STM32H7_SPI6_DMA=y +CONFIG_STM32H7_SPI6_DMA_BUFFER=1024 CONFIG_STM32H7_SPI_DMA=y CONFIG_STM32H7_SPI_DMATHRESHOLD=8 CONFIG_STM32H7_TIM1=y diff --git a/boards/holybro/durandal-v1/nuttx-config/scripts/script.ld b/boards/holybro/durandal-v1/nuttx-config/scripts/script.ld index 96b6686795..809450b838 100644 --- a/boards/holybro/durandal-v1/nuttx-config/scripts/script.ld +++ b/boards/holybro/durandal-v1/nuttx-config/scripts/script.ld @@ -205,6 +205,12 @@ SECTIONS _ebss = ABSOLUTE(.); } > sram + /* Emit the the D3 power domain section for locating BDMA data */ + + .sram4 (NOLOAD) : + { + } > sram4 + /* Stabs debugging sections. */ .stab 0 : { *(.stab) } .stabstr 0 : { *(.stabstr) } diff --git a/boards/holybro/durandal-v1/nuttx-config/stackcheck/defconfig b/boards/holybro/durandal-v1/nuttx-config/stackcheck/defconfig index 71250753cf..dba7c2719d 100644 --- a/boards/holybro/durandal-v1/nuttx-config/stackcheck/defconfig +++ b/boards/holybro/durandal-v1/nuttx-config/stackcheck/defconfig @@ -54,6 +54,7 @@ CONFIG_CDCACM_VENDORSTR="Holybro" CONFIG_CLOCK_MONOTONIC=y CONFIG_DEBUG_FULLOPT=y CONFIG_DEBUG_HARDFAULT_ALERT=y +CONFIG_DEBUG_MEMFAULT=y CONFIG_DEBUG_SYMBOLS=y CONFIG_DEFAULT_SMALL=y CONFIG_DEV_FIFO_SIZE=0 @@ -154,6 +155,7 @@ CONFIG_STDIO_BUFFER_SIZE=256 CONFIG_STM32H7_ADC1=y CONFIG_STM32H7_BBSRAM=y CONFIG_STM32H7_BBSRAM_FILES=5 +CONFIG_STM32H7_BDMA=y CONFIG_STM32H7_BKPSRAM=y CONFIG_STM32H7_DMA1=y CONFIG_STM32H7_DMA2=y @@ -182,6 +184,8 @@ CONFIG_STM32H7_SPI2=y CONFIG_STM32H7_SPI4=y CONFIG_STM32H7_SPI5=y CONFIG_STM32H7_SPI6=y +CONFIG_STM32H7_SPI6_DMA=y +CONFIG_STM32H7_SPI6_DMA_BUFFER=1024 CONFIG_STM32H7_SPI_DMA=y CONFIG_STM32H7_SPI_DMATHRESHOLD=8 CONFIG_STM32H7_TIM1=y