1
0
forked from me/IronOS

Hotfix: BMA Accel wedges I2C if probed too fast after boot

Only an issue on Pinecil as it boots much faster than Miniware units.
This commit is contained in:
Ben V. Brown
2021-01-17 20:13:02 +11:00
parent cb34fb56e3
commit 2425902fbc
8 changed files with 25 additions and 30 deletions

View File

@@ -385,18 +385,10 @@ bool FRToSI2C::lock() {
if (I2CSemaphore == nullptr) {
return false;
}
if (xTaskGetSchedulerState() != taskSCHEDULER_RUNNING) {
return true;
}
return xSemaphoreTake(I2CSemaphore, TICKS_SECOND) == pdTRUE;
}
void FRToSI2C::unlock() {
if (xTaskGetSchedulerState() != taskSCHEDULER_RUNNING) {
return;
}
xSemaphoreGive(I2CSemaphore);
}
void FRToSI2C::unlock() { xSemaphoreGive(I2CSemaphore); }
bool FRToSI2C::writeRegistersBulk(const uint8_t address, const I2C_REG *registers, const uint8_t registersLength) {
for (int index = 0; index < registersLength; index++) {