From bc856df03b5e2be7e7d44ab86dd019abe5d1d576 Mon Sep 17 00:00:00 2001 From: David Sidrane Date: Wed, 3 May 2017 15:47:05 -1000 Subject: [PATCH] mindpx-v2:spi_dev_e is now uint32_t in NuttX Using new type of uint32_t for spi device and macros that define a PX4 device on a given BUS and Chip Select --- src/drivers/boards/mindpx-v2/board_config.h | 12 ++++++------ src/drivers/boards/mindpx-v2/mindpx2_init.c | 2 +- src/drivers/boards/mindpx-v2/mindpx_spi.c | 12 ++++++------ 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/src/drivers/boards/mindpx-v2/board_config.h b/src/drivers/boards/mindpx-v2/board_config.h index 0d240d2386..dd2757e750 100644 --- a/src/drivers/boards/mindpx-v2/board_config.h +++ b/src/drivers/boards/mindpx-v2/board_config.h @@ -116,14 +116,14 @@ #define PX4_SPI_BUS_EXT 2 #define PX4_SPI_BUS_BARO PX4_SPI_BUS_SENSORS -/* Use these in place of the spi_dev_e enumeration to select a specific SPI device on SPI4 */ -#define PX4_SPIDEV_GYRO 1 -#define PX4_SPIDEV_ACCEL_MAG 2 -#define PX4_SPIDEV_BARO 3 -#define PX4_SPIDEV_MPU 4 +/* Use these in place of the uint32_t enumeration to select a specific SPI device on SPI4 */ +#define PX4_SPIDEV_GYRO PX4_MK_SPI_SEL(PX4_SPI_BUS_SENSORS, 1) +#define PX4_SPIDEV_ACCEL_MAG PX4_MK_SPI_SEL(PX4_SPI_BUS_SENSORS, 2) +#define PX4_SPIDEV_BARO PX4_MK_SPI_SEL(PX4_SPI_BUS_SENSORS, 3) +#define PX4_SPIDEV_MPU PX4_MK_SPI_SEL(PX4_SPI_BUS_SENSORS, 4) /* External bus */ -#define PX4_SPIDEV_EXT0 1 +#define PX4_SPIDEV_EXT0 PX4_MK_SPI_SEL(PX4_SPI_BUS_EXT, 1) /* I2C busses */ diff --git a/src/drivers/boards/mindpx-v2/mindpx2_init.c b/src/drivers/boards/mindpx-v2/mindpx2_init.c index 414b4d5e53..874f69e055 100644 --- a/src/drivers/boards/mindpx-v2/mindpx2_init.c +++ b/src/drivers/boards/mindpx-v2/mindpx2_init.c @@ -430,7 +430,7 @@ __EXPORT int board_app_initialize(uintptr_t arg) SPI_SETFREQUENCY(spi1, 24 * 1000 * 1000); SPI_SETBITS(spi1, 8); SPI_SETMODE(spi1, SPIDEV_MODE3); - SPI_SELECT(spi1, SPIDEV_FLASH, false); + SPI_SELECT(spi1, SPIDEV_FLASH(0), false); spi2 = px4_spibus_initialize(2); diff --git a/src/drivers/boards/mindpx-v2/mindpx_spi.c b/src/drivers/boards/mindpx-v2/mindpx_spi.c index 3654d9bbd3..83cdb9f68e 100644 --- a/src/drivers/boards/mindpx-v2/mindpx_spi.c +++ b/src/drivers/boards/mindpx-v2/mindpx_spi.c @@ -97,7 +97,7 @@ __EXPORT void weak_function stm32_spiinitialize(void) #endif } -__EXPORT void stm32_spi4select(FAR struct spi_dev_s *dev, enum spi_dev_e 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 */ @@ -140,31 +140,31 @@ __EXPORT void stm32_spi4select(FAR struct spi_dev_s *dev, enum spi_dev_e devid, } } -__EXPORT uint8_t stm32_spi4status(FAR struct spi_dev_s *dev, enum spi_dev_e devid) +__EXPORT uint8_t stm32_spi4status(FAR struct spi_dev_s *dev, uint32_t devid) { return SPI_STATUS_PRESENT; } -__EXPORT void stm32_spi1select(FAR struct spi_dev_s *dev, enum spi_dev_e devid, bool selected) +__EXPORT void stm32_spi1select(FAR struct spi_dev_s *dev, uint32_t devid, bool selected) { /* there can only be one device on this bus, so always select it */ stm32_gpiowrite(GPIO_SPI_CS_FRAM, !selected); } -__EXPORT uint8_t stm32_spi1status(FAR struct spi_dev_s *dev, enum spi_dev_e devid) +__EXPORT uint8_t stm32_spi1status(FAR struct spi_dev_s *dev, uint32_t devid) { /* FRAM is always present */ return SPI_STATUS_PRESENT; } #ifdef CONFIG_STM32_SPI2 -__EXPORT void stm32_spi2select(FAR struct spi_dev_s *dev, enum spi_dev_e devid, bool selected) +__EXPORT void stm32_spi2select(FAR struct spi_dev_s *dev, uint32_t devid, bool selected) { px4_arch_gpiowrite(GPIO_SPI_CS_EXT0, !selected); } -__EXPORT uint8_t stm32_spi2status(FAR struct spi_dev_s *dev, enum spi_dev_e devid) +__EXPORT uint8_t stm32_spi2status(FAR struct spi_dev_s *dev, uint32_t devid) { return SPI_STATUS_PRESENT; }