Browse Source

px4fmu-v2 and px4fmu-v3 boards cleanup

sbg
Daniel Agar 7 years ago
parent
commit
3ac6d1aa27
  1. 1
      Makefile
  2. 6
      src/drivers/boards/px4fmu-v2/CMakeLists.txt
  3. 0
      src/drivers/boards/px4fmu-v2/px4fmu_init.c
  4. 0
      src/drivers/boards/px4fmu-v2/px4fmu_led.c
  5. 1
      src/drivers/boards/px4fmu-v2/px4fmu_usb.c
  6. 4
      src/drivers/boards/px4fmu-v3/CMakeLists.txt
  7. 13
      src/drivers/boards/px4fmu-v3/px4fmu_init.c
  8. 0
      src/drivers/boards/px4fmu-v3/px4fmu_led.c
  9. 98
      src/drivers/boards/px4fmu-v3/px4fmu_spi.c

1
Makefile

@ -184,7 +184,6 @@ excelsior_legacy_default: posix_excelsior_legacy qurt_excelsior_legacy
.PHONY: qgc_firmware px4fmu_firmware misc_qgc_extra_firmware alt_firmware .PHONY: qgc_firmware px4fmu_firmware misc_qgc_extra_firmware alt_firmware
.PHONY: sizes check quick_check .PHONY: sizes check quick_check
.PHONY: check_posix_sitl_default check_px4fmu-v3_default
# QGroundControl flashable NuttX firmware # QGroundControl flashable NuttX firmware
qgc_firmware: px4fmu_firmware misc_qgc_extra_firmware sizes qgc_firmware: px4fmu_firmware misc_qgc_extra_firmware sizes

6
src/drivers/boards/px4fmu-v2/CMakeLists.txt

@ -34,11 +34,11 @@ px4_add_module(
MODULE drivers__boards__px4fmu-v2 MODULE drivers__boards__px4fmu-v2
SRCS SRCS
px4fmu_can.c px4fmu_can.c
px4fmu2_init.c px4fmu_init.c
px4fmu_timer_config.c px4fmu_led.c
px4fmu_spi.c px4fmu_spi.c
px4fmu_timer_config.c
px4fmu_usb.c px4fmu_usb.c
px4fmu2_led.c
DEPENDS DEPENDS
platforms__common platforms__common
) )

0
src/drivers/boards/px4fmu-v2/px4fmu2_init.c → src/drivers/boards/px4fmu-v2/px4fmu_init.c

0
src/drivers/boards/px4fmu-v2/px4fmu2_led.c → src/drivers/boards/px4fmu-v2/px4fmu_led.c

1
src/drivers/boards/px4fmu-v2/px4fmu_usb.c

@ -105,4 +105,3 @@ __EXPORT void stm32_usbsuspend(FAR struct usbdev_s *dev, bool resume)
{ {
uinfo("resume: %d\n", resume); uinfo("resume: %d\n", resume);
} }

4
src/drivers/boards/px4fmu-v3/CMakeLists.txt

@ -33,9 +33,9 @@
px4_add_module( px4_add_module(
MODULE drivers__boards__px4fmu-v3 MODULE drivers__boards__px4fmu-v3
SRCS SRCS
px4fmu3_led.c
px4fmu3_init.c
px4fmu_can.c px4fmu_can.c
px4fmu_init.c
px4fmu_led.c
px4fmu_spi.c px4fmu_spi.c
px4fmu_timer_config.c px4fmu_timer_config.c
px4fmu_usb.c px4fmu_usb.c

13
src/drivers/boards/px4fmu-v3/px4fmu3_init.c → src/drivers/boards/px4fmu-v3/px4fmu_init.c

@ -119,17 +119,10 @@ __END_DECLS
/**************************************************************************** /****************************************************************************
* Private Data * Private Data
****************************************************************************/ ****************************************************************************/
#if defined(BOARD_HAS_SIMPLE_HW_VERSIONING)
static int hw_version = 0; static int hw_version = 0;
static int hw_revision = 0; static int hw_revision = 0;
static char hw_type[4] = HW_VER_TYPE_INIT; static char hw_type[4] = HW_VER_TYPE_INIT;
#endif
/****************************************************************************
* Protected Functions
****************************************************************************/
/****************************************************************************
* Public Functions
****************************************************************************/
/************************************************************************************ /************************************************************************************
* Name: board_peripheral_reset * Name: board_peripheral_reset
* *
@ -226,7 +219,6 @@ __EXPORT void board_on_reset(int status)
* *
************************************************************************************/ ************************************************************************************/
#if defined(BOARD_HAS_SIMPLE_HW_VERSIONING)
static int determin_hw_version(int *version, int *revision) static int determin_hw_version(int *version, int *revision)
{ {
*revision = 0; /* default revision */ *revision = 0; /* default revision */
@ -309,7 +301,6 @@ __EXPORT int board_get_hw_revision()
{ {
return hw_revision; return hw_revision;
} }
#endif // BOARD_HAS_SIMPLE_HW_VERSIONING
/************************************************************************************ /************************************************************************************
* Name: stm32_boardinitialize * Name: stm32_boardinitialize
@ -404,7 +395,6 @@ __EXPORT int board_app_initialize(uintptr_t arg)
# error platform is dependent on c++ both CONFIG_HAVE_CXX and CONFIG_HAVE_CXXINITIALIZE must be defined. # error platform is dependent on c++ both CONFIG_HAVE_CXX and CONFIG_HAVE_CXXINITIALIZE must be defined.
#endif #endif
#if defined(BOARD_HAS_SIMPLE_HW_VERSIONING)
if (OK == determin_hw_version(&hw_version, & hw_revision)) { if (OK == determin_hw_version(&hw_version, & hw_revision)) {
switch (hw_version) { switch (hw_version) {
@ -425,7 +415,6 @@ __EXPORT int board_app_initialize(uintptr_t arg)
PX4_INFO("Ver 0x%1X : Rev %x %s", hw_version, hw_revision, hw_type); PX4_INFO("Ver 0x%1X : Rev %x %s", hw_version, hw_revision, hw_type);
} }
#endif // BOARD_HAS_SIMPLE_HW_VERSIONING
/* Bring up the Sensor power */ /* Bring up the Sensor power */

0
src/drivers/boards/px4fmu-v3/px4fmu3_led.c → src/drivers/boards/px4fmu-v3/px4fmu_led.c

98
src/drivers/boards/px4fmu-v3/px4fmu_spi.c

@ -82,14 +82,6 @@ static void stm32_spi1_initialize(void)
stm32_configgpio(GPIO_SPI1_EXTI_DRDY_PD15); stm32_configgpio(GPIO_SPI1_EXTI_DRDY_PD15);
# if !defined(BOARD_HAS_VERSIONING)
stm32_configgpio(GPIO_SPI1_EXTI_DRDY_PB0);
stm32_configgpio(GPIO_SPI1_EXTI_DRDY_PB1);
stm32_configgpio(GPIO_SPI1_EXTI_DRDY_PB4);
stm32_configgpio(GPIO_SPI1_CS_PC13);
stm32_configgpio(GPIO_SPI1_CS_PC15);
# else
if (HW_VER_FMUV2 == board_get_hw_version()) { if (HW_VER_FMUV2 == board_get_hw_version()) {
stm32_configgpio(GPIO_SPI1_EXTI_DRDY_PB0); stm32_configgpio(GPIO_SPI1_EXTI_DRDY_PB0);
stm32_configgpio(GPIO_SPI1_EXTI_DRDY_PB1); stm32_configgpio(GPIO_SPI1_EXTI_DRDY_PB1);
@ -104,8 +96,6 @@ static void stm32_spi1_initialize(void)
} else if (HW_VER_FMUV3 == board_get_hw_version()) { } else if (HW_VER_FMUV3 == board_get_hw_version()) {
stm32_configgpio(GPIO_SPI1_CS_PC1); stm32_configgpio(GPIO_SPI1_CS_PC1);
} }
# endif
} }
#endif // CONFIG_STM32_SPI1 #endif // CONFIG_STM32_SPI1
@ -119,10 +109,6 @@ static void stm32_spi4_initialize(void)
{ {
stm32_configgpio(GPIO_SPI4_NSS_PE4); stm32_configgpio(GPIO_SPI4_NSS_PE4);
# if !defined(BOARD_HAS_VERSIONING)
stm32_configgpio(GPIO_SPI4_GPIO_PC14);
# else
if (HW_VER_FMUV3 == board_get_hw_version()) { if (HW_VER_FMUV3 == board_get_hw_version()) {
stm32_configgpio(GPIO_SPI4_EXTI_DRDY_PB0); stm32_configgpio(GPIO_SPI4_EXTI_DRDY_PB0);
stm32_configgpio(GPIO_SPI4_CS_PB1); stm32_configgpio(GPIO_SPI4_CS_PB1);
@ -133,8 +119,6 @@ static void stm32_spi4_initialize(void)
if (HW_VER_FMUV2MINI != board_get_hw_version()) { if (HW_VER_FMUV2MINI != board_get_hw_version()) {
stm32_configgpio(GPIO_SPI4_GPIO_PC14); stm32_configgpio(GPIO_SPI4_GPIO_PC14);
} }
# endif
} }
#endif //CONFIG_STM32_SPI4 #endif //CONFIG_STM32_SPI4
@ -157,52 +141,6 @@ __EXPORT void stm32_spiinitialize(void)
__EXPORT void stm32_spi1select(FAR struct spi_dev_s *dev, uint32_t devid, bool selected) __EXPORT void stm32_spi1select(FAR struct spi_dev_s *dev, uint32_t devid, bool selected)
{ {
/* SPI select is active low, so write !selected to select the device */ /* SPI select is active low, so write !selected to select the device */
# if !defined(BOARD_HAS_VERSIONING)
switch (devid) {
case PX4_SPIDEV_GYRO:
/* Making sure the other peripherals are not selected */
stm32_gpiowrite(GPIO_SPI1_CS_PC13, !selected);
stm32_gpiowrite(GPIO_SPI1_CS_PC15, 1);
stm32_gpiowrite(GPIO_SPI1_CS_PD7, 1);
stm32_gpiowrite(GPIO_SPI1_CS_PC2, 1);
break;
# if defined(PX4_SPIDEV_ICM_20608)
case PX4_SPIDEV_ICM_20608:
# endif
case PX4_SPIDEV_ACCEL_MAG:
/* Making sure the other peripherals are not selected */
stm32_gpiowrite(GPIO_SPI1_CS_PC13, 1);
stm32_gpiowrite(GPIO_SPI1_CS_PC15, !selected);
stm32_gpiowrite(GPIO_SPI1_CS_PD7, 1);
stm32_gpiowrite(GPIO_SPI1_CS_PC2, 1);
break;
case PX4_SPIDEV_BARO:
/* Making sure the other peripherals are not selected */
stm32_gpiowrite(GPIO_SPI1_CS_PC13, 1);
stm32_gpiowrite(GPIO_SPI1_CS_PC15, 1);
stm32_gpiowrite(GPIO_SPI1_CS_PD7, !selected);
stm32_gpiowrite(GPIO_SPI1_CS_PC2, 1);
break;
case PX4_SPIDEV_MPU:
/* Making sure the other peripherals are not selected */
stm32_gpiowrite(GPIO_SPI1_CS_PC13, 1);
stm32_gpiowrite(GPIO_SPI1_CS_PC15, 1);
stm32_gpiowrite(GPIO_SPI1_CS_PD7, 1);
stm32_gpiowrite(GPIO_SPI1_CS_PC2, !selected);
break;
default:
break;
}
# else // defined(BOARD_HAS_VERSIONING)
/* SPI select is active low, so write !selected to select the device */
/* Verification /* Verification
* PA5 PA6 PA7 PB0 PB1 PB4 PC1 PC2 PC13 PC14 PC15 PD7 PD15 PE2 PE4 PE5 PE6 * PA5 PA6 PA7 PB0 PB1 PB4 PC1 PC2 PC13 PC14 PC15 PD7 PD15 PE2 PE4 PE5 PE6
* driver X X X X X X * driver X X X X X X
@ -315,8 +253,6 @@ __EXPORT void stm32_spi1select(FAR struct spi_dev_s *dev, uint32_t devid, bool s
default: default:
break; break;
} }
# endif // defined(BOARD_HAS_VERSIONING)
} }
__EXPORT uint8_t stm32_spi1status(FAR struct spi_dev_s *dev, uint32_t devid) __EXPORT uint8_t stm32_spi1status(FAR struct spi_dev_s *dev, uint32_t devid)
@ -344,28 +280,6 @@ __EXPORT uint8_t stm32_spi2status(FAR struct spi_dev_s *dev, uint32_t devid)
__EXPORT void stm32_spi4select(FAR struct spi_dev_s *dev, uint32_t devid, bool selected) __EXPORT void stm32_spi4select(FAR struct spi_dev_s *dev, uint32_t devid, bool selected)
{ {
/* SPI select is active low, so write !selected to select the device */ /* SPI select is active low, so write !selected to select the device */
# if !defined(BOARD_HAS_VERSIONING)
switch (devid) {
case PX4_SPIDEV_EXT_MPU:
/* Making sure the other peripherals are not selected */
stm32_gpiowrite(GPIO_SPI4_NSS_PE4, !selected);
stm32_gpiowrite(GPIO_SPI4_GPIO_PC14, 1);
break;
case PX4_SPIDEV_EXT_BARO:
/* Making sure the other peripherals are not selected */
stm32_gpiowrite(GPIO_SPI4_NSS_PE4, 1);
stm32_gpiowrite(GPIO_SPI4_GPIO_PC14, !selected);
break;
default:
break;
}
# else // defined(BOARD_HAS_VERSIONING)
/* SPI select is active low, so write !selected to select the device */
/* Verification /* Verification
* PA5 PA6 PA7 PB0 PB1 PB4 PC1 PC2 PC13 PC14 PC15 PD7 PD15 PE2 PE4 PE5 PE6 * PA5 PA6 PA7 PB0 PB1 PB4 PC1 PC2 PC13 PC14 PC15 PD7 PD15 PE2 PE4 PE5 PE6
* driver X X X X X X * driver X X X X X X
@ -442,9 +356,6 @@ __EXPORT void stm32_spi4select(FAR struct spi_dev_s *dev, uint32_t devid, bool s
break; break;
} }
# endif // defined(BOARD_HAS_VERSIONING)
} }
__EXPORT uint8_t stm32_spi4status(FAR struct spi_dev_s *dev, uint32_t devid) __EXPORT uint8_t stm32_spi4status(FAR struct spi_dev_s *dev, uint32_t devid)
{ {
@ -489,8 +400,6 @@ __EXPORT void board_spi_reset(int ms)
stm32_gpiowrite(_PIN_OFF(GPIO_SPI1_EXTI_DRDY_PB4), 0); stm32_gpiowrite(_PIN_OFF(GPIO_SPI1_EXTI_DRDY_PB4), 0);
stm32_gpiowrite(_PIN_OFF(GPIO_SPI1_EXTI_DRDY_PD15), 0); stm32_gpiowrite(_PIN_OFF(GPIO_SPI1_EXTI_DRDY_PD15), 0);
#if defined(BOARD_HAS_VERSIONING)
if (HW_VER_FMUV2 != board_get_hw_version()) { if (HW_VER_FMUV2 != board_get_hw_version()) {
stm32_configgpio(_PIN_OFF(GPIO_SPI4_CS_PC14)); stm32_configgpio(_PIN_OFF(GPIO_SPI4_CS_PC14));
stm32_gpiowrite(_PIN_OFF(GPIO_SPI4_CS_PC14), 0); stm32_gpiowrite(_PIN_OFF(GPIO_SPI4_CS_PC14), 0);
@ -510,11 +419,8 @@ __EXPORT void board_spi_reset(int ms)
stm32_gpiowrite(_PIN_OFF(GPIO_SPI4_SCK), 0); stm32_gpiowrite(_PIN_OFF(GPIO_SPI4_SCK), 0);
stm32_gpiowrite(_PIN_OFF(GPIO_SPI4_MISO), 0); stm32_gpiowrite(_PIN_OFF(GPIO_SPI4_MISO), 0);
stm32_gpiowrite(_PIN_OFF(GPIO_SPI4_MOSI), 0); stm32_gpiowrite(_PIN_OFF(GPIO_SPI4_MOSI), 0);
} }
#endif
/* set the sensor rail off */ /* set the sensor rail off */
stm32_configgpio(GPIO_VDD_3V3_SENSORS_EN); stm32_configgpio(GPIO_VDD_3V3_SENSORS_EN);
stm32_gpiowrite(GPIO_VDD_3V3_SENSORS_EN, 0); stm32_gpiowrite(GPIO_VDD_3V3_SENSORS_EN, 0);
@ -536,8 +442,6 @@ __EXPORT void board_spi_reset(int ms)
stm32_configgpio(GPIO_SPI1_MISO); stm32_configgpio(GPIO_SPI1_MISO);
stm32_configgpio(GPIO_SPI1_MOSI); stm32_configgpio(GPIO_SPI1_MOSI);
#if defined(BOARD_HAS_VERSIONING)
if (HW_VER_FMUV3 == board_get_hw_version()) { if (HW_VER_FMUV3 == board_get_hw_version()) {
stm32_configgpio(GPIO_SPI4_SCK); stm32_configgpio(GPIO_SPI4_SCK);
stm32_configgpio(GPIO_SPI4_MISO); stm32_configgpio(GPIO_SPI4_MISO);
@ -545,7 +449,5 @@ __EXPORT void board_spi_reset(int ms)
stm32_spi4_initialize(); stm32_spi4_initialize();
} }
#endif
stm32_spi1_initialize(); stm32_spi1_initialize();
} }

Loading…
Cancel
Save