mirror of https://github.com/FOME-Tech/fome-fw.git
making code more testable
This commit is contained in:
parent
b5f92e6722
commit
122ef9f637
|
@ -40,8 +40,10 @@ EXTERN_ENGINE;
|
||||||
PrimaryChannelThread() : TunerstudioThread("Primary TS Channel") { }
|
PrimaryChannelThread() : TunerstudioThread("Primary TS Channel") { }
|
||||||
|
|
||||||
TsChannelBase* setupChannel() {
|
TsChannelBase* setupChannel() {
|
||||||
|
#if EFI_PROD_CODE
|
||||||
efiSetPadMode("Primary Channel RX", EFI_CONSOLE_RX_BRAIN_PIN, PAL_MODE_ALTERNATE(EFI_CONSOLE_AF));
|
efiSetPadMode("Primary Channel RX", EFI_CONSOLE_RX_BRAIN_PIN, PAL_MODE_ALTERNATE(EFI_CONSOLE_AF));
|
||||||
efiSetPadMode("Primary Channel TX", EFI_CONSOLE_TX_BRAIN_PIN, PAL_MODE_ALTERNATE(EFI_CONSOLE_AF));
|
efiSetPadMode("Primary Channel TX", EFI_CONSOLE_TX_BRAIN_PIN, PAL_MODE_ALTERNATE(EFI_CONSOLE_AF));
|
||||||
|
#endif /* EFI_PROD_CODE */
|
||||||
|
|
||||||
primaryChannel.start(CONFIG(uartConsoleSerialSpeed));
|
primaryChannel.start(CONFIG(uartConsoleSerialSpeed));
|
||||||
|
|
||||||
|
@ -67,8 +69,10 @@ EXTERN_ENGINE;
|
||||||
SecondaryChannelThread() : TunerstudioThread("Secondary TS Channel") { }
|
SecondaryChannelThread() : TunerstudioThread("Secondary TS Channel") { }
|
||||||
|
|
||||||
TsChannelBase* setupChannel() {
|
TsChannelBase* setupChannel() {
|
||||||
|
#if EFI_PROD_CODE
|
||||||
efiSetPadMode("Secondary Channel RX", engineConfiguration->binarySerialRxPin, PAL_MODE_ALTERNATE(TS_SERIAL_AF));
|
efiSetPadMode("Secondary Channel RX", engineConfiguration->binarySerialRxPin, PAL_MODE_ALTERNATE(TS_SERIAL_AF));
|
||||||
efiSetPadMode("Secondary Channel TX", engineConfiguration->binarySerialTxPin, PAL_MODE_ALTERNATE(TS_SERIAL_AF));
|
efiSetPadMode("Secondary Channel TX", engineConfiguration->binarySerialTxPin, PAL_MODE_ALTERNATE(TS_SERIAL_AF));
|
||||||
|
#endif /* EFI_PROD_CODE */
|
||||||
|
|
||||||
secondaryChannel.start(CONFIG(uartConsoleSerialSpeed));
|
secondaryChannel.start(CONFIG(uartConsoleSerialSpeed));
|
||||||
|
|
||||||
|
|
|
@ -692,7 +692,7 @@ void startIdleThread(DECLARE_ENGINE_PARAMETER_SIGNATURE) {
|
||||||
DISPLAY_TEXT(Manual_idle_control);
|
DISPLAY_TEXT(Manual_idle_control);
|
||||||
/* DISPLAY_ENDIF */
|
/* DISPLAY_ENDIF */
|
||||||
|
|
||||||
#if ! EFI_UNIT_TEST
|
#if EFI_PROD_CODE
|
||||||
// this is neutral/no gear switch input. on Miata it's wired both to clutch pedal and neutral in gearbox
|
// this is neutral/no gear switch input. on Miata it's wired both to clutch pedal and neutral in gearbox
|
||||||
// this switch is not used yet
|
// this switch is not used yet
|
||||||
if (isBrainPinValid(CONFIG(clutchDownPin))) {
|
if (isBrainPinValid(CONFIG(clutchDownPin))) {
|
||||||
|
@ -711,11 +711,12 @@ void startIdleThread(DECLARE_ENGINE_PARAMETER_SIGNATURE) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isBrainPinValid(engineConfiguration->brakePedalPin)) {
|
if (isBrainPinValid(engineConfiguration->brakePedalPin)) {
|
||||||
#if EFI_PROD_CODE
|
|
||||||
efiSetPadMode("brake pedal switch", engineConfiguration->brakePedalPin,
|
efiSetPadMode("brake pedal switch", engineConfiguration->brakePedalPin,
|
||||||
getInputMode(engineConfiguration->brakePedalPinMode));
|
getInputMode(engineConfiguration->brakePedalPinMode));
|
||||||
#endif /* EFI_PROD_CODE */
|
|
||||||
}
|
}
|
||||||
|
#endif /* EFI_PROD_CODE */
|
||||||
|
|
||||||
|
#if ! EFI_UNIT_TEST
|
||||||
|
|
||||||
addConsoleAction("idleinfo", showIdleInfo);
|
addConsoleAction("idleinfo", showIdleInfo);
|
||||||
|
|
||||||
|
|
|
@ -50,8 +50,10 @@ void AdcSubscription::SubscribeSensor(FunctionalSensor &sensor,
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if EFI_PROD_CODE
|
||||||
// Enable the input pin
|
// Enable the input pin
|
||||||
efiSetPadMode(name, getAdcChannelBrainPin(name, channel), PAL_MODE_INPUT_ANALOG);
|
efiSetPadMode(name, getAdcChannelBrainPin(name, channel), PAL_MODE_INPUT_ANALOG);
|
||||||
|
#endif /* EFI_PROD_CODE */
|
||||||
|
|
||||||
// if 0, default to the board's divider coefficient
|
// if 0, default to the board's divider coefficient
|
||||||
if (voltsPerAdcVolt == 0) {
|
if (voltsPerAdcVolt == 0) {
|
||||||
|
|
|
@ -9,7 +9,6 @@
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
|
|
||||||
|
|
||||||
#if EFI_PROD_CODE
|
|
||||||
#include "os_access.h"
|
#include "os_access.h"
|
||||||
#include "trigger_input.h"
|
#include "trigger_input.h"
|
||||||
#include "servo.h"
|
#include "servo.h"
|
||||||
|
@ -31,7 +30,10 @@
|
||||||
#include "sensor_chart.h"
|
#include "sensor_chart.h"
|
||||||
#include "serial_hw.h"
|
#include "serial_hw.h"
|
||||||
|
|
||||||
|
#if EFI_PROD_CODE
|
||||||
#include "mpu_util.h"
|
#include "mpu_util.h"
|
||||||
|
#endif /* EFI_PROD_CODE */
|
||||||
|
|
||||||
#include "mmc_card.h"
|
#include "mmc_card.h"
|
||||||
|
|
||||||
#include "AdcConfiguration.h"
|
#include "AdcConfiguration.h"
|
||||||
|
@ -137,8 +139,6 @@ SPIDriver * getSpiDevice(spi_device_e spiDevice) {
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if EFI_PROD_CODE
|
|
||||||
|
|
||||||
#define TPS_IS_SLOW -1
|
#define TPS_IS_SLOW -1
|
||||||
|
|
||||||
static int fastMapSampleIndex;
|
static int fastMapSampleIndex;
|
||||||
|
@ -299,7 +299,7 @@ void stopSpi(spi_device_e device) {
|
||||||
* todo: maybe start invoking this method on ECU start so that peripheral start-up initialization and restart are unified?
|
* todo: maybe start invoking this method on ECU start so that peripheral start-up initialization and restart are unified?
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void applyNewHardwareSettings(void) {
|
void applyNewHardwareSettings(DECLARE_ENGINE_PARAMETER_SIGNATURE) {
|
||||||
/**
|
/**
|
||||||
* All 'stop' methods need to go before we begin starting pins.
|
* All 'stop' methods need to go before we begin starting pins.
|
||||||
*
|
*
|
||||||
|
@ -427,7 +427,7 @@ void applyNewHardwareSettings(void) {
|
||||||
|
|
||||||
#if EFI_IDLE_CONTROL
|
#if EFI_IDLE_CONTROL
|
||||||
if (isIdleHardwareRestartNeeded()) {
|
if (isIdleHardwareRestartNeeded()) {
|
||||||
initIdleHardware();
|
initIdleHardware(PASS_ENGINE_PARAMETER_SIGNATURE);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -439,7 +439,7 @@ void applyNewHardwareSettings(void) {
|
||||||
startBoostPin();
|
startBoostPin();
|
||||||
#endif
|
#endif
|
||||||
#if EFI_EMULATE_POSITION_SENSORS
|
#if EFI_EMULATE_POSITION_SENSORS
|
||||||
startTriggerEmulatorPins();
|
startTriggerEmulatorPins(PASS_ENGINE_PARAMETER_SIGNATURE);
|
||||||
#endif /* EFI_EMULATE_POSITION_SENSORS */
|
#endif /* EFI_EMULATE_POSITION_SENSORS */
|
||||||
#if EFI_LOGIC_ANALYZER
|
#if EFI_LOGIC_ANALYZER
|
||||||
startLogicAnalyzerPins();
|
startLogicAnalyzerPins();
|
||||||
|
@ -451,6 +451,7 @@ void applyNewHardwareSettings(void) {
|
||||||
adcConfigListener(engine);
|
adcConfigListener(engine);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if EFI_PROD_CODE
|
||||||
void setBor(int borValue) {
|
void setBor(int borValue) {
|
||||||
efiPrintf("setting BOR to %d", borValue);
|
efiPrintf("setting BOR to %d", borValue);
|
||||||
BOR_Set((BOR_Level_t)borValue);
|
BOR_Set((BOR_Level_t)borValue);
|
||||||
|
@ -460,9 +461,10 @@ void setBor(int borValue) {
|
||||||
void showBor(void) {
|
void showBor(void) {
|
||||||
efiPrintf("BOR=%d", (int)BOR_Get());
|
efiPrintf("BOR=%d", (int)BOR_Get());
|
||||||
}
|
}
|
||||||
|
#endif /* EFI_PROD_CODE */
|
||||||
|
|
||||||
// This function initializes hardware that can do so before configuration is loaded
|
// This function initializes hardware that can do so before configuration is loaded
|
||||||
void initHardwareNoConfig() {
|
void initHardwareNoConfig(DECLARE_ENGINE_PARAMETER_SIGNATURE) {
|
||||||
efiAssertVoid(CUSTOM_IH_STACK, getCurrentRemainingStack() > EXPECTED_REMAINING_STACK, "init h");
|
efiAssertVoid(CUSTOM_IH_STACK, getCurrentRemainingStack() > EXPECTED_REMAINING_STACK, "init h");
|
||||||
efiAssertVoid(CUSTOM_EC_NULL, engineConfiguration!=NULL, "engineConfiguration");
|
efiAssertVoid(CUSTOM_EC_NULL, engineConfiguration!=NULL, "engineConfiguration");
|
||||||
|
|
||||||
|
@ -483,10 +485,12 @@ void initHardwareNoConfig() {
|
||||||
*/
|
*/
|
||||||
initPrimaryPins();
|
initPrimaryPins();
|
||||||
|
|
||||||
|
#if EFI_PROD_CODE
|
||||||
// it's important to initialize this pretty early in the game before any scheduling usages
|
// it's important to initialize this pretty early in the game before any scheduling usages
|
||||||
initSingleTimerExecutorHardware();
|
initSingleTimerExecutorHardware(PASS_ENGINE_PARAMETER_SIGNATURE);
|
||||||
|
|
||||||
initRtc();
|
initRtc();
|
||||||
|
#endif /* EFI_PROD_CODE */
|
||||||
|
|
||||||
#if EFI_INTERNAL_FLASH
|
#if EFI_INTERNAL_FLASH
|
||||||
initFlash();
|
initFlash();
|
||||||
|
@ -502,7 +506,7 @@ void initHardwareNoConfig() {
|
||||||
#endif // EFI_FILE_LOGGING
|
#endif // EFI_FILE_LOGGING
|
||||||
}
|
}
|
||||||
|
|
||||||
void initHardware() {
|
void initHardware(DECLARE_ENGINE_PARAMETER_SIGNATURE) {
|
||||||
#if EFI_HD44780_LCD
|
#if EFI_HD44780_LCD
|
||||||
lcd_HD44780_init();
|
lcd_HD44780_init();
|
||||||
if (hasFirmwareError())
|
if (hasFirmwareError())
|
||||||
|
@ -531,7 +535,7 @@ void initHardware() {
|
||||||
initSpiModules(engineConfiguration);
|
initSpiModules(engineConfiguration);
|
||||||
#endif /* HAL_USE_SPI */
|
#endif /* HAL_USE_SPI */
|
||||||
|
|
||||||
#if BOARD_EXT_GPIOCHIPS > 0
|
#if EFI_PROD_CODE && (BOARD_EXT_GPIOCHIPS > 0)
|
||||||
// initSmartGpio depends on 'initSpiModules'
|
// initSmartGpio depends on 'initSpiModules'
|
||||||
initSmartGpio(PASS_ENGINE_PARAMETER_SIGNATURE);
|
initSmartGpio(PASS_ENGINE_PARAMETER_SIGNATURE);
|
||||||
#endif
|
#endif
|
||||||
|
@ -605,10 +609,6 @@ void initHardware() {
|
||||||
efiPrintf("initHardware() OK!");
|
efiPrintf("initHardware() OK!");
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* EFI_PROD_CODE */
|
|
||||||
|
|
||||||
#endif /* EFI_PROD_CODE || EFI_SIMULATOR */
|
|
||||||
|
|
||||||
#if HAL_USE_SPI
|
#if HAL_USE_SPI
|
||||||
// this is F4 implementation but we will keep it here for now for simplicity
|
// this is F4 implementation but we will keep it here for now for simplicity
|
||||||
int getSpiPrescaler(spi_speed_e speed, spi_device_e device) {
|
int getSpiPrescaler(spi_speed_e speed, spi_device_e device) {
|
||||||
|
|
|
@ -44,17 +44,18 @@ brain_pin_e getSckPin(spi_device_e device);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
|
||||||
#if EFI_PROD_CODE
|
|
||||||
#include "engine.h"
|
#include "engine.h"
|
||||||
#include "debounce.h"
|
|
||||||
|
|
||||||
void applyNewHardwareSettings(void);
|
void applyNewHardwareSettings(DECLARE_ENGINE_PARAMETER_SIGNATURE);
|
||||||
|
|
||||||
// Initialize hardware that doesn't require configuration to be loaded
|
// Initialize hardware that doesn't require configuration to be loaded
|
||||||
void initHardwareNoConfig();
|
void initHardwareNoConfig(DECLARE_ENGINE_PARAMETER_SIGNATURE);
|
||||||
|
|
||||||
// Initialize hardware with configuration loaded
|
// Initialize hardware with configuration loaded
|
||||||
void initHardware();
|
void initHardware(DECLARE_ENGINE_PARAMETER_SIGNATURE);
|
||||||
|
|
||||||
|
#if EFI_PROD_CODE
|
||||||
|
#include "debounce.h"
|
||||||
|
|
||||||
#endif /* EFI_PROD_CODE */
|
#endif /* EFI_PROD_CODE */
|
||||||
|
|
||||||
|
|
|
@ -19,11 +19,11 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#if EFI_GPIO_HARDWARE
|
|
||||||
EXTERNC void efiSetPadMode(const char *msg, brain_pin_e pin, iomode_t mode);
|
EXTERNC void efiSetPadMode(const char *msg, brain_pin_e pin, iomode_t mode);
|
||||||
EXTERNC void efiSetPadModeWithoutOwnershipAcquisition(const char *msg, brain_pin_e brainPin, iomode_t mode);
|
EXTERNC void efiSetPadModeWithoutOwnershipAcquisition(const char *msg, brain_pin_e brainPin, iomode_t mode);
|
||||||
EXTERNC void efiSetPadUnused(brain_pin_e brainPin);
|
EXTERNC void efiSetPadUnused(brain_pin_e brainPin);
|
||||||
|
|
||||||
|
#if EFI_GPIO_HARDWARE
|
||||||
EXTERNC bool efiReadPin(brain_pin_e pin);
|
EXTERNC bool efiReadPin(brain_pin_e pin);
|
||||||
|
|
||||||
EXTERNC iomode_t getInputMode(pin_input_mode_e mode);
|
EXTERNC iomode_t getInputMode(pin_input_mode_e mode);
|
||||||
|
|
|
@ -24,8 +24,6 @@
|
||||||
#include "eficonsole.h"
|
#include "eficonsole.h"
|
||||||
#endif /* __cplusplus */
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
#define efiSetPadMode(msg, brainPin, mode) {}
|
|
||||||
|
|
||||||
#define hasOsPanicError() (FALSE)
|
#define hasOsPanicError() (FALSE)
|
||||||
|
|
||||||
#define US_TO_NT_MULTIPLIER 100
|
#define US_TO_NT_MULTIPLIER 100
|
||||||
|
|
Loading…
Reference in New Issue