Revert "Workaround for SPI bus being asleep."
This reverts commit 1edeb5cb65489707c26b7a65f3b54520086d363a.
This commit is contained in:
parent
d89e38d3bf
commit
a5a64800ed
|
@ -10,7 +10,7 @@ SpiMaster::SpiMaster(const SpiMaster::SpiModule spi, const SpiMaster::Parameters
|
|||
}
|
||||
|
||||
bool SpiMaster::Init() {
|
||||
if (mutex == nullptr) {
|
||||
if(mutex == nullptr) {
|
||||
mutex = xSemaphoreCreateBinary();
|
||||
ASSERT(mutex != nullptr);
|
||||
}
|
||||
|
@ -179,10 +179,6 @@ void SpiMaster::PrepareRx(const volatile uint32_t cmdAddress,
|
|||
bool SpiMaster::Write(uint8_t pinCsn, const uint8_t* data, size_t size) {
|
||||
if (data == nullptr)
|
||||
return false;
|
||||
|
||||
if (!active) {
|
||||
Wakeup();
|
||||
}
|
||||
auto ok = xSemaphoreTake(mutex, portMAX_DELAY);
|
||||
ASSERT(ok == true);
|
||||
taskToNotify = xTaskGetCurrentTaskHandle();
|
||||
|
@ -219,9 +215,7 @@ bool SpiMaster::Write(uint8_t pinCsn, const uint8_t* data, size_t size) {
|
|||
|
||||
bool SpiMaster::Read(uint8_t pinCsn, uint8_t* cmd, size_t cmdSize, uint8_t* data, size_t dataSize) {
|
||||
xSemaphoreTake(mutex, portMAX_DELAY);
|
||||
if (!active) {
|
||||
Wakeup();
|
||||
}
|
||||
|
||||
taskToNotify = nullptr;
|
||||
|
||||
this->pinCsn = pinCsn;
|
||||
|
@ -259,16 +253,12 @@ void SpiMaster::Sleep() {
|
|||
nrf_gpio_cfg_default(params.pinSCK);
|
||||
nrf_gpio_cfg_default(params.pinMOSI);
|
||||
nrf_gpio_cfg_default(params.pinMISO);
|
||||
active = false;
|
||||
|
||||
NRF_LOG_INFO("[SPIMASTER] sleep")
|
||||
}
|
||||
|
||||
void SpiMaster::Wakeup() {
|
||||
if (active) {
|
||||
return;
|
||||
}
|
||||
Init();
|
||||
active = true;
|
||||
NRF_LOG_INFO("[SPIMASTER] Wakeup");
|
||||
}
|
||||
|
||||
|
|
|
@ -60,8 +60,6 @@ namespace Pinetime {
|
|||
volatile size_t currentBufferSize = 0;
|
||||
volatile TaskHandle_t taskToNotify;
|
||||
SemaphoreHandle_t mutex = nullptr;
|
||||
|
||||
bool active;
|
||||
};
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user