New board: Elecrow CrowPanel Avance 2.8" (#224)

- Added new board
- Extracted ST7789 driver and backlight PWM driver into separate subprojects
- Refactored T-Deck to use the shared driver modules
- Fix bug in WiFi service: searching for APs was broken
This commit is contained in:
Ken Van Hoeylandt
2025-02-19 21:01:13 +01:00
committed by GitHub
parent 5055fa7822
commit 0563e42dc9
35 changed files with 865 additions and 252 deletions
@@ -134,8 +134,8 @@ SdCardDevice::State SpiSdCardDevice::getState() const {
* Writing and reading to the bus from 2 devices at the same time causes crashes.
* This work-around ensures that this check is only happening when LVGL isn't rendering.
*/
if (config->lockable) {
bool locked = config->lockable->lock(50); // TODO: Refactor to a more reliable locking mechanism
if (config->lock) {
bool locked = config->lock->lock(50); // TODO: Refactor to a more reliable locking mechanism
if (!locked) {
TT_LOG_E(TAG, LOG_MESSAGE_MUTEX_LOCK_FAILED_FMT, "LVGL");
return State::Unknown;
@@ -144,8 +144,8 @@ SdCardDevice::State SpiSdCardDevice::getState() const {
bool result = sdmmc_get_status(card) == ESP_OK;
if (config->lockable) {
config->lockable->unlock();
if (config->lock) {
config->lock->unlock();
}
if (result) {
@@ -381,7 +381,7 @@ static bool copy_scan_list(std::shared_ptr<Wifi> wifi) {
}
auto lock = wifi->dataMutex.asScopedLock();
if (lock.lock()) {
if (!lock.lock()) {
return false;
}