From 147e37ac88511cdcd8a85afb2660c250136b8a4a Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Sat, 22 Feb 2020 00:47:25 -0500 Subject: [PATCH] px4_fmu-v4: cleanup board_dma_map.h --- .../nuttx-config/include/board_dma_map.h | 71 +++++++++++++------ boards/px4/fmu-v4/src/board_config.h | 2 +- 2 files changed, 52 insertions(+), 21 deletions(-) diff --git a/boards/px4/fmu-v4/nuttx-config/include/board_dma_map.h b/boards/px4/fmu-v4/nuttx-config/include/board_dma_map.h index 07befe094e..375b794f5a 100644 --- a/boards/px4/fmu-v4/nuttx-config/include/board_dma_map.h +++ b/boards/px4/fmu-v4/nuttx-config/include/board_dma_map.h @@ -1,23 +1,54 @@ +/**************************************************************************** + * + * Copyright (c) 2020 PX4 Development Team. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name PX4 nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + #pragma once -/* DMA Channel/Stream Selections - * - * DMAMAP_USART3_RX = DMA1, Stream 1, Channel 4 - * DMAMAP_UART4_RX = DMA1, Stream 2, Channel 4 - * DMAMAP_UART7_RX = DMA1, Stream 3, Channel 5 - * DMAMAP_USART2_RX = DMA1, Stream 5, Channel 4 - * DMAMAP_TIM4_UP = DMA1, Stream 6, Channel 2 - * - *   DMAMAP_SPI1_RX_1 = DMA2, Stream 0, Channel 3 - *   DMAMAP_USART6_RX_1 = DMA2, Stream 1, Channel 4 - *   DMAMAP_USART1_RX_1 = DMA2, Stream 2, Channel 4 - *   DMAMAP_SPI1_TX_1 = DMA2, Stream 3, Channel 3 - * DMAMAP_TIM1_UP = DMA2, Stream 5, Channel 6 - *   DMAMAP_SDIO_2 = DMA2, Stream 6, Channel 4 - */ -#define DMACHAN_SPI1_RX DMAMAP_SPI1_RX_1 -#define DMAMAP_USART6_RX DMAMAP_USART6_RX_1 -#define DMAMAP_USART1_RX DMAMAP_USART1_RX_1 -#define DMACHAN_SPI1_TX DMAMAP_SPI1_TX_1 -#define DMAMAP_SDIO DMAMAP_SDIO_2 +// DMA1 Channel/Stream Selections +//--------------------------------------------//---------------------------//---------------- +// DMAMAP_USART3_RX // DMA1, Stream 1, Channel 4 +// DMAMAP_UART4_RX // DMA1, Stream 2, Channel 4 +// DMAMAP_UART7_RX // DMA1, Stream 3, Channel 5 +// DMAMAP_USART2_RX // DMA1, Stream 5, Channel 4 +// DMAMAP_TIM4_UP // DMA1, Stream 6, Channel 2 (DSHOT) + + +// DMA2 Channel/Stream Selections +//--------------------------------------------//---------------------------//---------------- +#define DMACHAN_SPI1_RX DMAMAP_SPI1_RX_1 // DMA2, Stream 0, Channel 3 (SPI sensors RX) +#define DMAMAP_USART6_RX DMAMAP_USART6_RX_1 // DMA2, Stream 1, Channel 4 +#define DMAMAP_USART1_RX DMAMAP_USART1_RX_1 // DMA2, Stream 2, Channel 4 +#define DMACHAN_SPI1_TX DMAMAP_SPI1_TX_1 // DMA2, Stream 3, Channel 3 (SPI sensors TX) +// AVAILABLE // DMA2, Stream 4 +// DMAMAP_TIM1_UP // DMA2, Stream 5, Channel 6 (DSHOT) +#define DMAMAP_SDIO DMAMAP_SDIO_2 // DMA2, Stream 6, Channel 4 diff --git a/boards/px4/fmu-v4/src/board_config.h b/boards/px4/fmu-v4/src/board_config.h index 1d4368bb27..c3bca4eb25 100644 --- a/boards/px4/fmu-v4/src/board_config.h +++ b/boards/px4/fmu-v4/src/board_config.h @@ -278,7 +278,7 @@ #define BOARD_HAS_PWM DIRECT_PWM_OUTPUT_CHANNELS /* This board provides a DMA pool and APIs. */ -#define BOARD_DMA_ALLOC_POOL_SIZE (5120 + 512 + 1008) // 5120 fat + 512 + 1008 spi +#define BOARD_DMA_ALLOC_POOL_SIZE (5120 + 512 + 1024) // 5120 fat + 512 + 1024 spi #define BOARD_HAS_ON_RESET 1