diff --git a/src/main/drivers/accgyro/accgyro.h b/src/main/drivers/accgyro/accgyro.h index e78952083f..b92b2bb62a 100644 --- a/src/main/drivers/accgyro/accgyro.h +++ b/src/main/drivers/accgyro/accgyro.h @@ -51,7 +51,6 @@ typedef struct gyroDev_s { sensorGyroInitFuncPtr initFn; // initialize function sensorGyroReadFuncPtr readFn; // read 3 axis data function sensorGyroReadDataFuncPtr temperatureFn; // read temperature if available - sensorGyroInterruptStatusFuncPtr intStatusFn; sensorGyroUpdateFuncPtr updateFn; extiCallbackRec_t exti; busDevice_t bus; diff --git a/src/main/drivers/accgyro/accgyro_fake.c b/src/main/drivers/accgyro/accgyro_fake.c index 61feaa2d9a..819d739a36 100644 --- a/src/main/drivers/accgyro/accgyro_fake.c +++ b/src/main/drivers/accgyro/accgyro_fake.c @@ -83,16 +83,9 @@ static bool fakeGyroReadTemperature(gyroDev_t *gyro, int16_t *temperatureData) return true; } -static bool fakeGyroInitStatus(gyroDev_t *gyro) -{ - UNUSED(gyro); - return true; -} - bool fakeGyroDetect(gyroDev_t *gyro) { gyro->initFn = fakeGyroInit; - gyro->intStatusFn = fakeGyroInitStatus; gyro->readFn = fakeGyroRead; gyro->temperatureFn = fakeGyroReadTemperature; #if defined(SIMULATOR_BUILD) diff --git a/src/main/drivers/accgyro/accgyro_mpu.c b/src/main/drivers/accgyro/accgyro_mpu.c index 1ca97c798a..25c96d2574 100644 --- a/src/main/drivers/accgyro/accgyro_mpu.c +++ b/src/main/drivers/accgyro/accgyro_mpu.c @@ -235,18 +235,6 @@ bool mpuGyroReadSPI(gyroDev_t *gyro) return true; } -bool mpuCheckDataReady(gyroDev_t* gyro) -{ - bool ret; - if (gyro->dataReady) { - ret = true; - gyro->dataReady= false; - } else { - ret = false; - } - return ret; -} - #ifdef USE_SPI static bool detectSPISensorsAndUpdateDetectionResult(gyroDev_t *gyro) { diff --git a/src/main/drivers/accgyro/accgyro_mpu.h b/src/main/drivers/accgyro/accgyro_mpu.h index 445af4dfe0..6fe8b0836a 100644 --- a/src/main/drivers/accgyro/accgyro_mpu.h +++ b/src/main/drivers/accgyro/accgyro_mpu.h @@ -201,6 +201,4 @@ bool mpuAccRead(struct accDev_s *acc); bool mpuGyroRead(struct gyroDev_s *gyro); bool mpuGyroReadSPI(struct gyroDev_s *gyro); void mpuDetect(struct gyroDev_s *gyro); -bool mpuCheckDataReady(struct gyroDev_s *gyro); void mpuGyroSetIsrUpdate(struct gyroDev_s *gyro, sensorGyroUpdateFuncPtr updateFn); - diff --git a/src/main/drivers/accgyro/accgyro_mpu3050.c b/src/main/drivers/accgyro/accgyro_mpu3050.c index c13d8ac1ba..1b8acd19a9 100644 --- a/src/main/drivers/accgyro/accgyro_mpu3050.c +++ b/src/main/drivers/accgyro/accgyro_mpu3050.c @@ -84,7 +84,6 @@ bool mpu3050Detect(gyroDev_t *gyro) gyro->initFn = mpu3050Init; gyro->readFn = mpuGyroRead; gyro->temperatureFn = mpu3050ReadTemperature; - gyro->intStatusFn = mpuCheckDataReady; // 16.4 dps/lsb scalefactor gyro->scale = 1.0f / 16.4f; diff --git a/src/main/drivers/accgyro/accgyro_mpu6050.c b/src/main/drivers/accgyro/accgyro_mpu6050.c index 1e6bdac28b..b2bf41ce5a 100644 --- a/src/main/drivers/accgyro/accgyro_mpu6050.c +++ b/src/main/drivers/accgyro/accgyro_mpu6050.c @@ -105,7 +105,6 @@ bool mpu6050GyroDetect(gyroDev_t *gyro) } gyro->initFn = mpu6050GyroInit; gyro->readFn = mpuGyroRead; - gyro->intStatusFn = mpuCheckDataReady; // 16.4 dps/lsb scalefactor gyro->scale = 1.0f / 16.4f; diff --git a/src/main/drivers/accgyro/accgyro_mpu6500.c b/src/main/drivers/accgyro/accgyro_mpu6500.c index 4212eb7c6c..3693fa517d 100644 --- a/src/main/drivers/accgyro/accgyro_mpu6500.c +++ b/src/main/drivers/accgyro/accgyro_mpu6500.c @@ -95,7 +95,6 @@ bool mpu6500GyroDetect(gyroDev_t *gyro) gyro->initFn = mpu6500GyroInit; gyro->readFn = mpuGyroRead; - gyro->intStatusFn = mpuCheckDataReady; // 16.4 dps/lsb scalefactor gyro->scale = 1.0f / 16.4f; diff --git a/src/main/drivers/accgyro/accgyro_spi_bmi160.c b/src/main/drivers/accgyro/accgyro_spi_bmi160.c index f9ad9aa3cd..d6d65a15c1 100644 --- a/src/main/drivers/accgyro/accgyro_spi_bmi160.c +++ b/src/main/drivers/accgyro/accgyro_spi_bmi160.c @@ -365,18 +365,6 @@ bool bmi160GyroRead(gyroDev_t *gyro) } -bool checkBMI160DataReady(gyroDev_t* gyro) -{ - bool ret; - if (gyro->dataReady) { - ret = true; - gyro->dataReady= false; - } else { - ret = false; - } - return ret; -} - void bmi160SpiGyroInit(gyroDev_t *gyro) { BMI160_Init(gyro->bus.spi.csnPin); @@ -412,7 +400,6 @@ bool bmi160SpiGyroDetect(gyroDev_t *gyro) gyro->initFn = bmi160SpiGyroInit; gyro->readFn = bmi160GyroRead; - gyro->intStatusFn = checkBMI160DataReady; gyro->scale = 1.0f / 16.4f; return true; diff --git a/src/main/drivers/accgyro/accgyro_spi_icm20689.c b/src/main/drivers/accgyro/accgyro_spi_icm20689.c index 438b67b05e..2f2c80cf10 100644 --- a/src/main/drivers/accgyro/accgyro_spi_icm20689.c +++ b/src/main/drivers/accgyro/accgyro_spi_icm20689.c @@ -141,7 +141,6 @@ bool icm20689SpiGyroDetect(gyroDev_t *gyro) gyro->initFn = icm20689GyroInit; gyro->readFn = mpuGyroReadSPI; - gyro->intStatusFn = mpuCheckDataReady; // 16.4 dps/lsb scalefactor gyro->scale = 1.0f / 16.4f; diff --git a/src/main/drivers/accgyro/accgyro_spi_mpu6000.c b/src/main/drivers/accgyro/accgyro_spi_mpu6000.c index 2413174b7e..e23c5fe18c 100644 --- a/src/main/drivers/accgyro/accgyro_spi_mpu6000.c +++ b/src/main/drivers/accgyro/accgyro_spi_mpu6000.c @@ -245,7 +245,6 @@ bool mpu6000SpiGyroDetect(gyroDev_t *gyro) gyro->initFn = mpu6000SpiGyroInit; gyro->readFn = mpuGyroReadSPI; - gyro->intStatusFn = mpuCheckDataReady; // 16.4 dps/lsb scalefactor gyro->scale = 1.0f / 16.4f; diff --git a/src/main/drivers/accgyro/accgyro_spi_mpu6500.c b/src/main/drivers/accgyro/accgyro_spi_mpu6500.c index eae203e653..38337477cf 100755 --- a/src/main/drivers/accgyro/accgyro_spi_mpu6500.c +++ b/src/main/drivers/accgyro/accgyro_spi_mpu6500.c @@ -137,7 +137,6 @@ bool mpu6500SpiGyroDetect(gyroDev_t *gyro) gyro->initFn = mpu6500SpiGyroInit; gyro->readFn = mpuGyroReadSPI; - gyro->intStatusFn = mpuCheckDataReady; // 16.4 dps/lsb scalefactor gyro->scale = 1.0f / 16.4f; diff --git a/src/main/drivers/accgyro/accgyro_spi_mpu9250.c b/src/main/drivers/accgyro/accgyro_spi_mpu9250.c index 000d18a6f9..8df48ff8dd 100644 --- a/src/main/drivers/accgyro/accgyro_spi_mpu9250.c +++ b/src/main/drivers/accgyro/accgyro_spi_mpu9250.c @@ -211,7 +211,6 @@ bool mpu9250SpiGyroDetect(gyroDev_t *gyro) gyro->initFn = mpu9250SpiGyroInit; gyro->readFn = mpuGyroReadSPI; - gyro->intStatusFn = mpuCheckDataReady; // 16.4 dps/lsb scalefactor gyro->scale = 1.0f / 16.4f; diff --git a/src/main/drivers/gyro_sync.c b/src/main/drivers/gyro_sync.c index a53591f8ea..c89a1ba95e 100644 --- a/src/main/drivers/gyro_sync.c +++ b/src/main/drivers/gyro_sync.c @@ -17,9 +17,14 @@ bool gyroSyncCheckUpdate(gyroDev_t *gyro) { - if (!gyro->intStatusFn) - return false; - return gyro->intStatusFn(gyro); + bool ret; + if (gyro->dataReady) { + ret = true; + gyro->dataReady= false; + } else { + ret = false; + } + return ret; } uint32_t gyroSetSampleRate(gyroDev_t *gyro, uint8_t lpf, uint8_t gyroSyncDenominator, bool gyro_use_32khz) diff --git a/src/main/drivers/sensor.h b/src/main/drivers/sensor.h index e39e401b21..647bdd74a1 100644 --- a/src/main/drivers/sensor.h +++ b/src/main/drivers/sensor.h @@ -43,4 +43,3 @@ typedef void (*sensorGyroInitFuncPtr)(struct gyroDev_s *gyro); typedef bool (*sensorGyroReadFuncPtr)(struct gyroDev_s *gyro); typedef bool (*sensorGyroUpdateFuncPtr)(struct gyroDev_s *gyro); typedef bool (*sensorGyroReadDataFuncPtr)(struct gyroDev_s *gyro, int16_t *data); -typedef bool (*sensorGyroInterruptStatusFuncPtr)(struct gyroDev_s *gyro);