From f93ac0751d2301e55f3daaebf6bc2fc93b2caeb6 Mon Sep 17 00:00:00 2001 From: rusefi Date: Thu, 5 Mar 2020 21:16:45 -0500 Subject: [PATCH] better invalid configuration handling --- firmware/controllers/engine_controller.cpp | 2 +- firmware/controllers/system/efi_gpio.cpp | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/firmware/controllers/engine_controller.cpp b/firmware/controllers/engine_controller.cpp index 524e1d2f66..ad9dae4ad3 100644 --- a/firmware/controllers/engine_controller.cpp +++ b/firmware/controllers/engine_controller.cpp @@ -849,6 +849,6 @@ int getRusEfiVersion(void) { if (initBootloader() != 0) return 123; #endif /* EFI_BOOTLOADER_INCLUDE_CODE */ - return 201200225; + return 201200305; } #endif /* EFI_UNIT_TEST */ diff --git a/firmware/controllers/system/efi_gpio.cpp b/firmware/controllers/system/efi_gpio.cpp index 6a24b673c7..ff90a1708e 100644 --- a/firmware/controllers/system/efi_gpio.cpp +++ b/firmware/controllers/system/efi_gpio.cpp @@ -421,7 +421,10 @@ void OutputPin::initPin(const char *msg, brain_pin_e brainPin, const pin_output_ if (brainPin == GPIO_UNASSIGNED) return; - assertOMode(*outputMode); + if (*outputMode > OM_OPENDRAIN_INVERTED) { + firmwareError(CUSTOM_INVALID_MODE_SETTING, "%s invalid pin_output_mode_e", msg); + return; + } iomode_t mode = (*outputMode == OM_DEFAULT || *outputMode == OM_INVERTED) ? PAL_MODE_OUTPUT_PUSHPULL : PAL_MODE_OUTPUT_OPENDRAIN;