diff --git a/firmware/config/efifeatures.h b/firmware/config/efifeatures.h index fa059e3c29..cd59f8975a 100644 --- a/firmware/config/efifeatures.h +++ b/firmware/config/efifeatures.h @@ -12,6 +12,8 @@ #define EFI_USE_CCM TRUE +#define EFI_ENABLE_ASSERTS FALSE + //#define EFI_UART_ECHO_TEST_MODE TRUE #define EFI_USE_UART_FOR_CONSOLE FALSE diff --git a/firmware/controllers/algo/error_handling.h b/firmware/controllers/algo/error_handling.h index b9df792b39..06932a52d6 100644 --- a/firmware/controllers/algo/error_handling.h +++ b/firmware/controllers/algo/error_handling.h @@ -14,6 +14,7 @@ extern "C" #endif /* __cplusplus */ #include "obd_error_codes.h" +#include "efifeatures.h" #include "stdbool.h" /** @@ -53,9 +54,13 @@ int getRusEfiVersion(void); * @deprecated Global panic is inconvenient because it's hard to deliver the error message while whole instance * is stopped. Please use firmwareWarning() instead */ -#define efiAssert(condition, message, result) { if (!(condition)) { firmwareError(message); return result; } } - -#define efiAssertVoid(condition, message) { if (!(condition)) { firmwareError(message); return; } } +#if EFI_ENABLE_ASSERTS + #define efiAssert(condition, message, result) { if (!(condition)) { firmwareError(message); return result; } } + #define efiAssertVoid(condition, message) { if (!(condition)) { firmwareError(message); return; } } +#else /* EFI_ENABLE_ASSERTS */ + #define efiAssert(condition, message, result) { (void)(condition); } + #define efiAssertVoid(condition, message) { (void)(condition); } +#endif /* EFI_ENABLE_ASSERTS */ #ifdef __cplusplus } diff --git a/unit_tests/efifeatures.h b/unit_tests/efifeatures.h index 3698196c90..d3e1f5b818 100644 --- a/unit_tests/efifeatures.h +++ b/unit_tests/efifeatures.h @@ -8,6 +8,8 @@ #ifndef EFIFEATURES_H_ #define EFIFEATURES_H_ +#define EFI_ENABLE_ASSERTS TRUE + #define EFI_HISTOGRAMS TRUE #define EFI_CLI_SUPPORT FALSE diff --git a/win32_functional_tests/simulator/efifeatures.h b/win32_functional_tests/simulator/efifeatures.h index 885eb3745e..8da46ba544 100644 --- a/win32_functional_tests/simulator/efifeatures.h +++ b/win32_functional_tests/simulator/efifeatures.h @@ -8,6 +8,8 @@ #ifndef EFIFEATURES_H_ #define EFIFEATURES_H_ +#define EFI_ENABLE_ASSERTS TRUE + #define EFI_SIMULATOR TRUE #define EFI_SUPPORT_DODGE_NEON TRUE