* lua on f4
* move perf trace to efifeatures
* check that it's defined
* cypress and kinetis
* it would help to define the correct thing
* disable buffer if not used
* we can work with 2k
* turn off ramdisk on mre qc
* wow strncpy is useless for truncated strings
* turn off for bootloader
* lto bootloader
* memory
* memory
* lua on f4
* move perf trace to efifeatures
* check that it's defined
* cypress and kinetis
* it would help to define the correct thing
* disable buffer if not used
* we can work with 2k
* turn off ramdisk on mre qc
* wow strncpy is useless for truncated strings
* turn off for bootloader
* lto bootloader
* minor cleanup
* enable mailboxes
* priority
* implement new logger
* more cleaning
* signature
* remove debug
* put the assertion back in
* remove debugging
* spelling
* doy
* tweaks & comments
* cleaning
* size_t
* guard more
* test build now
* needs more ram until we can remove LogginWithSTorage
* hunt for memory
* bootloader
* unused
* stub simulator
* it would help to get the signature right
* geez kinetis only has 64k ram
* more guarding because kinetis
* that's now very legal and very cool
* templatify
* s
* force null terminate
* probably fix
* const
* write a test
* disable sensor chart for now
* hide SC ui
* oh nope that breaks many things
This reverts commit c3c1bb324fb484c3d9cc44b7715c234bc0392e1e.
* missed one
* reset after scheduleLogging
* we can't print out the full message because it contains commas which break parsing
* force terminate long buffers
* let's see how much memory we have to play with
* a lot, is the answer
* real thread name
* shrink this for now before its deleted
* turn that back on
* biiig comment
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* new function
* hellen
* MRE
* proteus
* put those function declarations in a reasonable place
* put the comment back
* weak
* move that to a reasonable place
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* carve out UART specific
* implement channel
* config cleanup
* use new config
* bootloader
* dead code
* s
* h7 inherits f7
* oops
* ok now it's right
* tests
* cleanup
* call setup
* put that in its own file
* cleanup
* format
* guard
* not needed
* improve guarding
* portable
* allow override of uart mode
* fixes for bootloader
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* new apis
* dedicated USB path
* move decl
* init
* don't init usb twice
* guard
* check that we're initialized before using TS
* comment
* guard
* guard USB
* brain doesn't go good
* make tests happy
* dead define
* cypress
* ifdef != if
* s
* include priority
* don't start a thread we know we don't need
* bad-ish merge
* const
* why did this code exist...?
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* enable
* guard correctly
* h7 bit timing
* allow longer frames
* allow data smaller than maximum
* mcu temperature
* typo
* tx message
* testing
* check for CAN or FDCAN
* don't need that any more
* h7 bitrate config
* undo testing
* h7-ify msg tx
* comment
* break out SID/EID macros
* guard differently
* update ChibiOS
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* extract
* guard
* put some back
* put back
* slow is actually 500hz so slow is fine here
* no magic
* fix printFullAdcReport
* cast
* implement h7 adc ish
* analog switches
* bad merge
* no map avg on h7
* fix master while we're at it
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* extract
* guard
* put some back
* put back
* slow is actually 500hz so slow is fine here
* no magic
* fix printFullAdcReport
* cast
* if we turn those off is it happy
* stub cypress/kinetis
* guard fast stuff better
* bad merge
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* mostly guard against no fast adc
* disable on h7
* guard more
* guard adc init
* you can't do that in c++
* we need that
* s
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* maybe hook up sdmmc
* the complier didn't like that very much
* mcuconf
* guard properly
* fix
* duh
* omg that's an extra close paren
* explicitly set which device fatfs should use
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* rusefi_halconf
* h7 gpt
* don't redefine that
* maybe this was necessary
* format
* no usb in cypress
* flags for bl
* cypress
* maybe bootloader
* no smart build for cypress/kinetis
* no smart build
* no really, disable smart build
* don't need to clean that env var
* cypress
* format
* h7 clocks
* run the core at 400
* disable LSE
* 8mhz timer clock
* osc
* it has to be even slower
* something is wrong with WFI
* this was wrong anyway
* MRE is green: put cpu in standby in idle
* Revert "MRE is green: put cpu in standby in idle"
This reverts commit 62b5cadda014ace749b145b629da62b182b5e3ce.
* RusEFI is green on all boards
* enable msd
* modify descriptors for composite device
* makefile cleanup
* format
* define
* embiggen fifos
* needed that
* cleanup too while we're at it
* rename endpoints
* switchable descriptors
* guard the request hook too
* don't need this changed yet
* cleanup
* update ep0 response
* cleanup
* use the msd hook from chibios
* this was wrong
* this was covered by other PR
* this is also covered
* s
* move f4 config files
* don't need this
* f7
* f7
* h7
* this was duplicated
* turn off smart build
* loader too
* update prometheus paths
* bootloader should include confdir
* fix the flash size while we're at it
* move chconf_common
* use wait
* normalize board.mk
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* remove EFI_ADC_TEMP_SENSOR
* implement
* comment
* s
* switch adc_inputs over
* header
* s
* I think aligned-on-stack should work ok
* num channels
* cache safety
* move adc init too
* don't compile that file for the h7
* cypress & kinetis
* ports
* guard against bootloader
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* set mcu type in hw_ports
* move f4 linker script
* move f7 linker script
* don't set default linker file in makefiles
* extra line
* prometheus actually didn't depend on anything special for f469
* dead line
* h7
* dead
* move board.c
* set explicit cpu type for simulator
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* set mcu type in hw_ports
* move f4 linker script
* move f7 linker script
* don't set default linker file in makefiles
* extra line
* prometheus actually didn't depend on anything special for f469
* dead line
* h7
* dead
* ChibiOS: add support for STM32F765
This chip is used on Subaru EG33 p'n'p RusEFI board from Dron_Gus
* drivers: gpio: mc33810: commulative update
- use BIT macro
- fix wake-up method
- fix order of arguments in _add function
* port: stm32f4/7: detectCanDevice check for enabled interfaces only
* ADC: fix internal array size
internalAdcIndexByHardwareIndex should be EFI_ADC_LAST_CHANNEL size
couse adc_channel_e is used as index
* status LEDs: support status LEDs that driven by low level
* LCD: check if settings are valid on each access
* Lada Kalina: remove duplicate code
All LCD pins are set to GPIO_UNASSIGNED in disableLCD()
* Remove duplicate code
* We still need to know when invalid gpio is used...
This reverts commit c17775231a.
* gpios: isBrainPinValid helper
* LCD HD44780: do not touch pins if DM_NONE or invalid gpio
* Fix isEnabled checks for GPS and Joystick
* LCD HD44780: writePad use this method wider
* switch to CriticalSectionLocker
* that's just about all
* clean up last usage
* include hpp for sim
* need the cpp wrappers in the makefile too
* include dir
* include
* ADC: remove ADC_TwoSamplingDelay*
1. it is related to double or triple interlived mode only
2. it should be writen to CCR register, not CR1
* ADC: use designated initializers
* hard pwm
* fix, comments
* PC6-9 and PD12-15
* PB6-9
* dynamic frequency
* f7 mcuconf
* format
* relocate to common, support variable frequency
* error handling
* oops
* fix test build
* noop kinetis
* better guards
* guard for bl
* guards don't work if they have typos
* more mapping
* oops
* don't use for slow pwm
* enable pwm
* guard properly
* save a little memory
* use less mem
* correct timers
* all your ram are belong to us
* update limit & comment
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* aux serial updates from last PR
* trying to guess
* wow that's old! also not working maybe?
* hiding diag code which was messing with GP2/GP3 i.e. TLE8888_PIN_22 TLE8888_PIN_23
* date
* Mc33 undervolt (#1421)
* mc33 flash check
* DI sanity checks for setting HV config
* mc33 under voltage check
* mc33 under voltage check
Co-authored-by: Christopher W. Anderson <gitstuff@pswitch.com>
* fixed {}
Co-authored-by: rusefi <rusefillc@gmail.com>
Co-authored-by: NOx-z <50815960+NOx-z@users.noreply.github.com>
Co-authored-by: Christopher W. Anderson <gitstuff@pswitch.com>
Co-authored-by: kon <dev@triggerdevel>
* Update ChibiOS
* Fix coexistance of ChibiOS and our flash drivers
* Add 'int' = internal prefix for all on-chip flash functions
This avoid conflict with ChibiOS functions available after
enabling HAL_USE_EFL
* Exclude ChibiOS flash driver from bootloader
* Makefile magic?
* Kinetis: fix build after ChibiOS update and switching to SMART_BUILD
* Bootloader now use SMART_BUILD too
* this flag did nothing
* header dedupe
* mre fix again
* get all dependencies in mpu_util.h
* guard can/spi
* more dedupe
* pragma once
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>