* OpenBLT: linker file: use last 16 bytes of ram for shared area
This area is used for communication between FW and OpenBLT.
* OpenBLT: startup: invalidate only DFU breadcumb from startup code
Same location (but different seed) is used for shared param's
signature in OpenBLT.
* OpenBLT: enable shared params
* OpenBLT: enable hooks
If 0x01 is stored in shared param idx=0, then stay in OpenBLT forever.
* Jump to OpenBLT: store proper shared param when OpenBLT is requested
TODO: calculate and store CRC too!
* OpenBLT: move shared_params to start of RAM
* Bootloader: Allocate 16 bytes at start of RAM for bootloader shared area
* OpenBLT: shared_params: reuse same .c and .h file for main application
* OpenBLT: shared_params: enable CRC check
* OpenBLT: no need to manualy set breadcumb before reset
* Revert "OpenBLT: startup: invalidate only DFU breadcumb from startup code"
This reverts commit 6b064714b953560227ae53e38355332cf9f46f7f.
* OpenBLT: guard for builds without OpenBLT
* OpenBLT: reboot to OpenBLT on CAN request with ID=0x667 and DLC=2
* config: options to enable OpenBLT on CAN interfaces
* OpenBLT: comments
* tle8888: ups IGN1
* tle8888: more BIT() macro
* tle8888: fix typos
* tle8888: fix LS2 output on MRE when stepper is enabled
Default settings casue one (or few) not used direct driver inputs
to be mapped to OUT5 (LS2 on MRE)
* smart_gpio: comments for TLE8888 on MicroRusEFI
* smart_gpio: typo
* tle8888: more comments
* adc mux
* cypress is a special ADC size case
Co-authored-by: Matthew Kennedy <matthewkennedy@outlook.com>
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
* delete registers/
* update gitignore
* readme
* Revert "delete registers/"
This reverts commit de10448d5479487b529b4e9ee551f45f271daa8c.
* remove dead dram constants
* switch to use generated C source instead of copy/paste
* more memory map
* dead code in stm32
* rusefi.cpp can have some noreturn
* handle lua panic
* unused error codes
* simplifications of error_handling.cpp
* comment
* put that back
* guard
* use backup ram, hard fault handler improvement
* wire it up
* upload elf
* s
* I guess I'll just use strncpy
* s
* what is it even complaining about?
* neat, we don't need a cast
* cypress and kinetis
* cleanup
* ci
* guard for tests
* stub simulator CAN driver
* comments
* CAN sensor
* maybe implement?
* s
* fix
* tx and rx actually work!?!?!
* check_can_isr
* modify chibios
* Sim has no CAN on Windows (for now?)
* safer init/deinit, enable assertions
* smarter handling of missing CAN device
* better guards
* guards for windows
* remove third trigger
* clean up the honda mess
* there was nothing novel about this engine config
* include
* missed a few
* s
* x
* changelog
* don't set the third trigger input
* don't redefine the same thing 3 times
* only two inputs!
* test
* make things c++ friendly
* install various canaries in coal mines
* using is much clearer than typedef
* fixing builds
* lps25
* trigger includes were a mess
* c -> c++ cleanup
* os util
* why did so many include os_util.h?
* fwd declare
* cypress/kinetis
* s
* eg33 happy
* happy sim
* cypress usb
* pch
* cypress
* doesn't need to include all that
* h7
* block cache
* efi::size
* extract function and prefetch at start
* comments
* s
* s
* bool result
* no prints
* refactoring
* enable only on some ECU
* normalize
* adjust defines
* is_protected
* naming, comment
* cleanup
* typo
* priority
* mem
* not that mem
* I2C EEPROM support #3860
let's use contrib on all F4
* I2C EEPROM support #3860
let's use contrib on all F4, step 2
* I2C EEPROM support #3860
let's use contrib on all F4, step 3
* I2C EEPROM support #3860
let's use contrib on all F4, step 4
* I2C EEPROM support #3860
huh
* I2C EEPROM support #3860
all the way
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
* unused things
* !!! actual bug !!!
* dead
* unused
* unused
* multi-bus lua RX was just broken
* make the compiler angry about it
* dead config
* alphax 2
* just call, no store
* compiler too angry
* ports: stm32f4: not all stm32f4xx are stm32f407, let board decide
* Do not include mcuconf_community.h in port's mcuconf.h usign relative path
as override file can be provided in board directory.
Some board (like stm32f429-disco) with SDRAM need clock to be
enabled in __early_init (before .bss and .data initialization).
So if STM32_HSECLK defined - skip clock detection.
* Stop & wakeup working on rising edge
* Standby & Sleep mode working Using PA0 only.
* Stop & standby works with wake from PA0.
Added alternative interrupt method to STOP
* Removed hand screwery on registers
* testing stop/standby
* comments
* guard
* s
* we shall figure out f7 later
* ok maybe we do worry about f7
* comments and tweaks
* f7
* f4 maybe probably
* vss uses real values
* some defaults
* test and correct math
* km, not miles!
* comment
* tooltip
* that macro went away
* 100hz and default settings gives 9kph
* changelog
* order of operations safety
* make the test like the pwm test
* housekeeping
* this is why we need sensor automation
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* data
* stub test
* use getTimeSinceSyncPoint
* s
* s
* no
* test
* stray ;
* those were 1/10 what they were supposed to be
* actually check something
* dead log line?
This way you can use the console/TunerStudio with the ST-Link
In the process, combine TS_PRIMARY_UART and TS_PRIMARY_SERIAL into TS_PRIMARY_PORT, to make UART vs
SERIAL selection more robus. Ditto for TS_SECONDARY_*. Also change use of TS_NO_PRIMARY to be #if
not #ifdef, so that it can be properly set as a compile flag and not be overwritten by various
header files.
* fast exti
* test code snuck in
* full interrupt disable :(
* do it the old fashioned way
* enable interrupt
* consume stored timestamp
* dead
* h7 maybe
* guard maybe
* non-stm32
* exti 16 wrong on f4/f7
* CORTEX_MAXIMUM_PRIORITY
* safer but uglier
* s
* chibios
* no const
* initializers
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
Fix some uses of ENGINE() not detected by regex due to parenthesis.
Remove now empty engine_ptr.h
Don't worry about EFI_* not being defined, the compiler defaults to 0 if they aren't.
* Programmatically remove EnginePtr/inject, EXPAND_Engine, and WITH_ENGINE_TEST_HELPER*
for i in ": public EnginePtr " ", public EnginePtr" "EXPAND_Engine;" "EXPAND_Engine"; do
git grep -l "$i" | xargs sed -i "s/$i//g"
done
git grep -l "inject" | xargs sed -i "/inject[(][)]/d"
for i in WITH_ENGINE_TEST_HELPER_SENS WITH_ENGINE_TEST_HELPER_BOARD_CALLBACK WITH_ENGINE_TEST_HELPER; do
git grep -l "$i" | xargs sed -i "s/$i/EngineTestHelper eth/g"
done
git checkout firmware/controllers/core/engine_ptr.h
git checkout unit_tests/global.h
* Review fixups.
* static functions with (void)
* more
* Revert "more"
This reverts commit 246e53441f935451437df186ac92d7df26b62fb6.
* s
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* Makefile: define BOOTLOADER=1 for linker in case of OpenBLT too
This will reserve first 32K of flash for bootloader.
* OpenBLT: include into build
* board: subaru eg33: add OpenBLT board code
* board: subaru eg33: use OpenBLT
* Board: Subaru EG33: OpenBLT: reuse HAL and CMSIS from OpenBLT submodule
* Board: Subaru EG33: OpenBLT: reuse linker file from OpenBLT too
* OpenBLT for MRE
* OpenBLT: MRE: adjust LD memory map for smallest variat of MCU on MRE
* OpenBLT: enable for MRE
* OpenBLT: disable CRC check of user application
This allows us to use DFU tool to flash main application too.
* hex2dfu: fresh binary for linux
* OpenBLT: extract common part of OpenBLT makefiles to openblt.mk
* OpenBLT: enable CRC check of user application for MRE and EG33
CRC (actually just a summ) of few first vectors is stored at 0x1c
offset. This is reserved vector for Cortex-M3, M4 and M7
* common_make: append OpenBLT CRC to dfu files
This should allow to use DFU to do main application update when
when OpenBLT is used as bootloader. hex2dfu will store same
styled CRC as OpenBLT expects to see in user app.
* OpenBLT reorganization
Move common stuff to hw_layer/ports/
* OpenBLT: proteus
* Proteus: enable OpenBLT for F4 and F7
Compilation tested only
* dead fast tps
* oooooh map avg on hh7
* adc v4 fast support
* new fast API
* hardware.cpp
* adc v2
* warning
* guard
* no check required
* stub cypress/kinetis
* kinetis and cypress stubs
* fix for stepperHbridgeHardware
* new config fields for microstepping
* add stepper dir pin mode to the dialog
* refactor stepper hw dialog & add microstepping panel
* microstepper modes enum
* stepperDcInvertedPins needed by Hellen
* add sleep() for stepper and divisor for pause()
* microstepping impl.
* make unit-tests more happy
* small progress
* fix etb-stepper dlg conflict
Co-authored-by: Andrei <andreikagit@users.noreply.github.com>
* more unification
* hip stub
* comment
* guard
* channel idx
* include
* hip
* move in to engine
* hip9011
* dead stuff
* dead
* fsio
* lcd
* more dead