diff --git a/boards/px4/fmu-v5x/nuttx-config/include/board.h b/boards/px4/fmu-v5x/nuttx-config/include/board.h index ac02f6fe6a..1cdc8ce1f8 100644 --- a/boards/px4/fmu-v5x/nuttx-config/include/board.h +++ b/boards/px4/fmu-v5x/nuttx-config/include/board.h @@ -381,7 +381,7 @@ * SPI1 is sensors1 * SPI2 is sensors2 * SPI3 is sensors3 - * SPI4 is MAG + * SPI4 is Not Used * SPI5 is FRAM * SPI6 is EXTERNAL1 * @@ -399,10 +399,6 @@ #define GPIO_SPI3_MOSI GPIO_SPI3_MOSI_1 /* PB2 */ #define GPIO_SPI3_SCK GPIO_SPI3_SCK_2 /* PC10 */ -#define GPIO_SPI4_MISO GPIO_SPI4_MISO_2 /* PE13 */ -#define GPIO_SPI4_MOSI GPIO_SPI4_MOSI_1 /* PE6 */ -#define GPIO_SPI4_SCK GPIO_SPI4_SCK_2 /* PE12 */ - #define GPIO_SPI5_MISO GPIO_SPI5_MISO_1 /* PF8 */ #define GPIO_SPI5_MOSI GPIO_SPI5_MOSI_2 /* PF11 */ #define GPIO_SPI5_SCK GPIO_SPI5_SCK_1 /* PF7 */ diff --git a/boards/px4/fmu-v5x/nuttx-config/nsh/defconfig b/boards/px4/fmu-v5x/nuttx-config/nsh/defconfig index 076a77fda3..41a92a78f8 100644 --- a/boards/px4/fmu-v5x/nuttx-config/nsh/defconfig +++ b/boards/px4/fmu-v5x/nuttx-config/nsh/defconfig @@ -199,12 +199,12 @@ CONFIG_STM32F7_I2C4=y CONFIG_STM32F7_I2C_DYNTIMEO=y CONFIG_STM32F7_I2C_DYNTIMEO_STARTSTOP=10 CONFIG_STM32F7_OTGFS=y -CONFIG_STM32F7_PROGMEM=y CONFIG_STM32F7_PHYSR=16 CONFIG_STM32F7_PHYSR_100MBPS=0x0 CONFIG_STM32F7_PHYSR_FULLDUPLEX=0x01 CONFIG_STM32F7_PHYSR_MODE=0x04 CONFIG_STM32F7_PHYSR_SPEED=0x2 +CONFIG_STM32F7_PROGMEM=y CONFIG_STM32F7_PWR=y CONFIG_STM32F7_RTC=y CONFIG_STM32F7_RTC_HSECLOCK=y @@ -217,7 +217,6 @@ CONFIG_STM32F7_SERIAL_DISABLE_REORDERING=y CONFIG_STM32F7_SPI1=y CONFIG_STM32F7_SPI2=y CONFIG_STM32F7_SPI3=y -CONFIG_STM32F7_SPI4=y CONFIG_STM32F7_SPI5=y CONFIG_STM32F7_SPI6=y CONFIG_STM32F7_TIM10=y diff --git a/boards/px4/fmu-v5x/src/board_config.h b/boards/px4/fmu-v5x/src/board_config.h index 836902b553..5b991d549b 100644 --- a/boards/px4/fmu-v5x/src/board_config.h +++ b/boards/px4/fmu-v5x/src/board_config.h @@ -119,11 +119,6 @@ * DRDY ACCL PI6 * DRDY GYRO PI7 * - * SPI4 is MAG - * BMM150 - * CS PH15 - * DRDY PF3 - * * SPI5 is FRAM * FM25V02A * CS PG7 @@ -200,23 +195,6 @@ #define GPIO_DRDY_OFF_SPI3_DRDY1_BMI088 _PIN_OFF(GPIO_SPI3_DRDY1_BMI088_INT1_ACCEL) #define GPIO_DRDY_OFF_SPI3_DRDY2_BMI088 _PIN_OFF(GPIO_SPI3_DRDY2_BMI088_INT3_GYRO) - -/* SPI 4 CS */ - -#define GPIO_SPI4_nCS1_BMM150 /* PH15 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTH|GPIO_PIN15) - -/* Define the SPI4 Data Ready interrupts */ - -#define GPIO_SPI4_DRDY1_BMM150 /* PF3 */ (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI|GPIO_PORTF|GPIO_PIN3) - -/* SPI4 off */ - -#define GPIO_SPI4_SCK_OFF _PIN_OFF(GPIO_SPI4_SCK) -#define GPIO_SPI4_MISO_OFF _PIN_OFF(GPIO_SPI4_MISO) -#define GPIO_SPI4_MOSI_OFF _PIN_OFF(GPIO_SPI4_MOSI) - -#define GPIO_DRDY_OFF_SPI4_DRDY1_BMM150 _PIN_OFF(GPIO_SPI4_DRDY1_BMM150) - /* SPI 5 CS */ #define GPIO_SPI5_nCS1_FRAM /* PG7 */ (GPIO_OUTPUT|GPIO_PUSHPULL|GPIO_SPEED_2MHz|GPIO_OUTPUT_SET|GPIO_PORTG|GPIO_PIN7) @@ -258,9 +236,6 @@ #define PX4_SPIDEV_BMI088_ACC PX4_MK_SPI_SEL(PX4_SPI_BUS_SENSORS3,1) #define PX4_SENSORS3_BUS_CS_GPIO {GPIO_SPI3_nCS2_BMI088_GYRO, GPIO_SPI3_nCS1_BMI088_ACCEL} -#define PX4_SPIDEV_BMM150 PX4_MK_SPI_SEL(PX4_SPI_BUS_SENSORS4,0) -#define PX4_SENSORS4_BUS_CS_GPIO {GPIO_SPI4_nCS1_BMM150} - #define PX4_SPIDEV_MEMORY PX4_MK_SPI_SEL(PX4_SPI_BUS_MEMORY,0) #define PX4_MEMORY_BUS_CS_GPIO {GPIO_SPI5_nCS1_FRAM} @@ -277,11 +252,12 @@ #define PX4_I2C_BUS_ONBOARD 4 #define PX4_I2C_BUS_LED PX4_I2C_BUS_EXPANSION -/* Devices on the onboard bus. +/* Devices on the onboard buses. * * Note that these are unshifted addresses. */ -#define PX4_I2C_OBDEV_BMP388 0x76 +#define PX4_I2C_OBDEV_BMP388 0x76 // On IMU +#define PX4_I2C_OBDEV1_BMP388 0x77 // On FMUM #define PX4_I2C_OBDEV_A71CH 0x49 #define BOARD_NUMBER_I2C_BUSES 4 diff --git a/boards/px4/fmu-v5x/src/spi.cpp b/boards/px4/fmu-v5x/src/spi.cpp index 3cc7d258df..fce3116c11 100644 --- a/boards/px4/fmu-v5x/src/spi.cpp +++ b/boards/px4/fmu-v5x/src/spi.cpp @@ -61,7 +61,9 @@ static constexpr uint32_t spi1selects_gpio[] = PX4_SENSORS1_BUS_CS_GPIO; static constexpr uint32_t spi2selects_gpio[] = PX4_SENSORS2_BUS_CS_GPIO; static constexpr uint32_t spi3selects_gpio[] = PX4_SENSORS3_BUS_CS_GPIO; +#ifdef CONFIG_STM32F7_SPI4 static constexpr uint32_t spi4selects_gpio[] = PX4_SENSORS4_BUS_CS_GPIO; +#endif static constexpr uint32_t spi5selects_gpio[] = PX4_MEMORY_BUS_CS_GPIO; static constexpr uint32_t spi6selects_gpio[] = PX4_EXTERNAL1_BUS_CS_GPIO; @@ -357,16 +359,6 @@ __EXPORT void board_spi_reset(int mask_ms) } if (mask & 8) { - for (auto cs : spi4selects_gpio) { - stm32_configgpio(_PIN_OFF(cs)); - } - - stm32_configgpio(GPIO_SPI4_SCK_OFF); - stm32_configgpio(GPIO_SPI4_MISO_OFF); - stm32_configgpio(GPIO_SPI4_MOSI_OFF); -#if BOARD_USE_DRDY - stm32_configgpio(GPIO_DRDY_OFF_SPI4_DRDY1_BMM150); -#endif /* set the sensor rail off */ stm32_gpiowrite(GPIO_VDD_3V3_SENSORS4_EN, 0); } @@ -425,21 +417,6 @@ __EXPORT void board_spi_reset(int mask_ms) #if BOARD_USE_DRDY stm32_configgpio(GPIO_SPI3_DRDY1_BMI088); stm32_configgpio(GPIO_SPI3_DRDY2_BMI088); -#endif - } - - if (mask & 8) { - /* reconfigure the SPI pins */ - for (auto cs : spi4selects_gpio) { - stm32_configgpio(cs); - } - - - stm32_configgpio(GPIO_SPI4_SCK); - stm32_configgpio(GPIO_SPI4_MISO); - stm32_configgpio(GPIO_SPI4_MOSI); -#if BOARD_USE_DRDY - stm32_configgpio(GPIO_SPI4_DRDY1_BMM150); #endif } }