58#if EFI_MAP_AVERAGING && defined (MODULE_MAP_AVERAGING)
62#if EFI_CONFIGURATION_STORAGE
66#if HAL_USE_PAL && EFI_PROD_CODE
153 if (spiDevice == SPI_NONE) {
156#if STM32_SPI_USE_SPI1
157 if (spiDevice == SPI_DEVICE_1) {
161#if STM32_SPI_USE_SPI2
162 if (spiDevice == SPI_DEVICE_2) {
166#if STM32_SPI_USE_SPI3
167 if (spiDevice == SPI_DEVICE_3) {
171#if STM32_SPI_USE_SPI4
172 if (spiDevice == SPI_DEVICE_4) {
176#if STM32_SPI_USE_SPI5
177 if (spiDevice == SPI_DEVICE_5) {
181#if STM32_SPI_USE_SPI6
182 if (spiDevice == SPI_DEVICE_6) {
234 if (isConfigurationChanged(is_enabled_spi_1)) {
238 if (isConfigurationChanged(is_enabled_spi_2)) {
242 if (isConfigurationChanged(is_enabled_spi_3)) {
246 if (isConfigurationChanged(is_enabled_spi_4)) {
250 if (isConfigurationChanged(is_enabled_spi_5)) {
254 if (isConfigurationChanged(is_enabled_spi_6)) {
271#if HAL_TRIGGER_USE_ADC
281#if HAL_TRIGGER_USE_ADC
293#if EFI_MAP_AVERAGING && defined (MODULE_MAP_AVERAGING)
303#if HAL_TRIGGER_USE_ADC
329#if EFI_PROD_CODE && EFI_SHAFT_POSITION_INPUT
333#if EFI_PROD_CODE && EFI_SENT_SUPPORT
350 if (isPinOrModeChanged(clutchUpPin, clutchUpPinMode)) {
368#if EFI_PROD_CODE && (BOARD_EXT_GPIOCHIPS > 0)
385#if EFI_PROD_CODE && EFI_IDLE_CONTROL
394#if EFI_EMULATE_POSITION_SENSORS
397#if EFI_LOGIC_ANALYZER
404#if EFI_PROD_CODE && EFI_SENT_SUPPORT
411#if EFI_PROD_CODE && EFI_BOR_LEVEL
413 efiPrintf(
"setting BOR to %d", borValue);
433 efiPrintf(
"initHardware()");
457#if EFI_PROD_CODE && EFI_SIGNAL_EXECUTOR_ONE_TIMER
462#if EFI_PROD_CODE && EFI_RTC
466#if EFI_CONFIGURATION_STORAGE
474#if HAL_USE_PAL && EFI_PROD_CODE
483#if EFI_PROD_CODE && (BOARD_EXT_GPIOCHIPS > 0)
487#if EFI_LOGIC_ANALYZER
491#if EFI_EMULATE_POSITION_SENSORS
506#if EFI_SHAFT_POSITION_INPUT
510#if EFI_PROD_CODE && EFI_SHAFT_POSITION_INPUT
514#if EFI_ENGINE_CONTROL
518#if EFI_SHAFT_POSITION_INPUT
541 if (hasFirmwareError()) {
545#if EFI_PROD_CODE && STM32_I2C_USE_I2C3
547 i2cStart(&EE_U2CD, &
i2cfg);
563#if EFI_SOFTWARE_KNOCK
575#if (EFI_PROD_CODE && BOARD_EXT_GPIOCHIPS > 0) || EFI_SIMULATOR
590 CAND1.deviceName =
"can0";
597#if EFI_PROD_CODE && EFI_SHAFT_POSITION_INPUT
622#if EFI_CDM_INTEGRATION
626#if EFI_PROD_CODE && EFI_SENT_SUPPORT
640 efiPrintf(
"initHardware() OK!");
BOR_Result_t BOR_Set(BOR_Level_t BORValue)
const char * getSpi_device_e(spi_device_e value)
Utility methods related to bench testing.
static bool call_board_override(std::optional< FuncType > board_override, Args &&... args)
TunerStudioOutputChannels outputChannels
void initMiscOutputPins()
Console package entry point header.
static EngineAccessor engine
std::optional< setup_custom_board_config_type > custom_board_OnConfigurationChange
engine_configuration_s & activeConfiguration
static constexpr engine_configuration_s * engineConfiguration
void initStartStopButton()
void firmwareError(ObdCode code, const char *fmt,...)
uint16_t adcsample_t
ADC sample data type.
SPIDriver SPID1
SPI0 driver identifier.
SPIDriver SPID2
SPI1 driver identifier.
void boardInitHardwareExtra()
std::optional< setup_custom_board_engine_type_type > custom_board_AfterTuneDefaults
void unlockSpi(spi_device_e device)
static AdcToken triggerSampleIndex
static void calcFastAdcIndexes()
static AdcToken fastMapSampleIndex
std::optional< setup_custom_board_overrides_type > custom_board_InitHardware
static void initSpiModules()
void initHardwareNoConfig()
brain_pin_e getSckPin(spi_device_e device)
void stopSpi(spi_device_e device)
void boardInitHardwareEarly()
void printSpiConfig(const char *msg, spi_device_e device)
bool isSpiInitialized[SPI_TOTAL_COUNT+1]
brain_pin_e getMosiPin(spi_device_e device)
PUBLIC_API_WEAK void setPinConfigurationOverrides()
SPIDriver * getSpiDevice(spi_device_e spiDevice)
std::optional< setup_custom_board_overrides_type > custom_board_InitHardwareExtra
static void stopSpiModules()
void onFastAdcComplete(adcsample_t *)
void setBor(int borValue)
void lockSpi(spi_device_e device)
brain_pin_e getMisoPin(spi_device_e device)
std::optional< setup_custom_board_overrides_type > custom_board_InitHardwareEarly
std::optional< setup_custom_board_engine_type_type > custom_board_applyUnknownType
std::optional< setup_custom_board_overrides_type > custom_board_BeforeTuneDefaults
void applyNewHardwareSettings()
void turnOnSpi(spi_device_e device)
void initHistogramsModule(void)
This data structure is used to analyze CPU performance.
Idle Air Control valve hardware.
bool isIdleHardwareRestartNeeded()
Idle Valve Control thread.
void reconfigureSensors()
void efiSetPadUnused(brain_pin_e brainPin)
void stopLogicAnalyzerPins()
void startLogicAnalyzerPins()
void mapAveragingAdcCallback(float instantVoltage)
@ CUSTOM_ERR_UNEXPECTED_SPI
void initPinRepository(void)
const char * hwPortname(brain_pin_e brainPin)
void initSingleTimerExecutorHardware()
air_pressure_sensor_config_s sensor
switch_input_pin_e clutchUpPin
scaled_channel< uint16_t, 1000, 1 > rawMapFast
void validateTriggerInputs()
void startTriggerEmulatorPins()
void stopTriggerEmulatorPins()
void stopVvtControlPins()
void startVvtControlPins()
void initBoschYawRateSensor()