Furi: core refactoring and CMSIS removal part 2 (#1410)

* Furi: rename and move core
* Furi: drop CMSIS_OS header and unused api, partially refactor and cleanup the rest
* Furi: CMSIS_OS drop and refactoring.
* Furi: refactoring, remove cmsis legacy
* Furi: fix incorrect assert on queue deallocation, cleanup timer
* Furi: improve delay api, get rid of floats
* hal: dropped furi_hal_crc
* Furi: move DWT based delay to cortex HAL
* Furi: update core documentation

Co-authored-by: hedger <hedger@nanode.su>
This commit is contained in:
あく
2022-07-20 13:56:33 +03:00
committed by GitHub
parent f9c2287ea7
commit e3c7201a20
264 changed files with 2569 additions and 3883 deletions

View File

@@ -81,7 +81,7 @@ void view_allocate_model(View* view, ViewModelType type, size_t size) {
view->model = malloc(size);
} else if(view->model_type == ViewModelTypeLocking) {
ViewModelLocking* model = malloc(sizeof(ViewModelLocking));
model->mutex = osMutexNew(NULL);
model->mutex = furi_mutex_alloc(FuriMutexTypeNormal);
furi_check(model->mutex);
model->data = malloc(size);
view->model = model;
@@ -98,7 +98,7 @@ void view_free_model(View* view) {
free(view->model);
} else if(view->model_type == ViewModelTypeLocking) {
ViewModelLocking* model = view->model;
furi_check(osMutexDelete(model->mutex) == osOK);
furi_mutex_free(model->mutex);
free(model->data);
free(model);
view->model = NULL;
@@ -111,7 +111,7 @@ void* view_get_model(View* view) {
furi_assert(view);
if(view->model_type == ViewModelTypeLocking) {
ViewModelLocking* model = (ViewModelLocking*)(view->model);
furi_check(osMutexAcquire(model->mutex, osWaitForever) == osOK);
furi_check(furi_mutex_acquire(model->mutex, FuriWaitForever) == FuriStatusOk);
return model->data;
}
return view->model;
@@ -138,7 +138,7 @@ void view_unlock_model(View* view) {
furi_assert(view);
if(view->model_type == ViewModelTypeLocking) {
ViewModelLocking* model = (ViewModelLocking*)(view->model);
furi_check(osMutexRelease(model->mutex) == osOK);
furi_check(furi_mutex_release(model->mutex) == FuriStatusOk);
}
}