Commit Graph

250 Commits

Author SHA1 Message Date
Andrey G 074563ddfd OpenBLT shared params (#4417)
* 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
2022-08-07 19:33:19 -04:00
rusefillc b3e13f12b4 Adc mux (#4379)
* adc mux

* cypress is a special ADC size case

Co-authored-by: Matthew Kennedy <matthewkennedy@outlook.com>
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-07-26 14:12:00 +03:00
Andrey G bdaf1587d7 Openblt to dfu jump fixed (#4367)
* OpenBLT: supress "target 'startup_xxxxxx.o' given more than once in the same rule" warning

* OpenBLT: check for DFU request, do not ignore dead beef
2022-07-22 07:43:15 -04:00
Andrey G 4a4443a27d Add "Reset to OpenBLT" button (#4364)
Similar to "Reset to DFU", but uses different seed
2022-07-22 08:21:11 +03:00
rusefillc 5aa9942fe0 more on MRE BT drama part 2 2022-07-18 02:15:31 -04:00
rusefillc 02ce0423bf STM32_HSE_BYPASS where we need it (#4338)
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-07-11 04:30:49 -04:00
Matthew Kennedy 16a39badff Error handling cleanup (#4332)
* 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
2022-07-07 23:49:02 -04:00
Matthew Kennedy 6267b8621a big delete ICU (#4270)
* big delete

* icu vestiges

* changelog
2022-07-07 15:27:59 -04:00
Matthew Kennedy cbdfb7ac5c Write hard faults to backup ram, print on next boot (#4324)
* 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
2022-07-07 15:14:31 -04:00
Matthew Kennedy 478549ccdf get rid of setSerialConfigurationOverrides (#4274)
* get rid of setSerialConfigurationOverrides

* missed a few

* kinetis
2022-06-23 19:42:09 -04:00
Matthew Kennedy be3e64fd2a clean up sd overrides (#4272) 2022-06-23 09:15:51 -04:00
rusefillc 33ba12f130 docs 2022-06-07 17:13:21 -04:00
Matthew Kennedy c185771362 500 byte blocking factor (#4227) 2022-06-01 20:27:20 -04:00
rusefillc b1927528e7 Matt drives H7 #4175 2022-05-24 18:28:16 -04:00
rusefillc e3d5e9ce0f reducing code duplication, also one step back with HSE 2022-05-24 16:25:16 -04:00
rusefillc 9cae07cfd2 reducing code duplication 2022-05-24 15:45:06 -04:00
rusefillc 66bdc45ed6 typos 2022-05-24 15:07:31 -04:00
Matthew Kennedy 6813ff141f correct channels (#4190) 2022-05-19 19:09:41 -04:00
Matthew Kennedy 4531ef2286 harley (#4188) 2022-05-19 16:44:56 -04:00
rusefillc 54dcb27346 spelling 2022-05-02 16:08:04 -04:00
Matthew Kennedy 83caf1ea1b Brain pin is enum class (#4108)
* change most usages to Gpio::

* board configs

* engine configs etc

* isBrainPinValid, smart gpio

* generator

* generator

* generator

* connector yamls

* kinetis enums

* cypress txt

* kinetis config

* frankenso

* config generator

* actually do it for the others

* disable skips for pr ci

* fix tle8888

* misc

* weird cast from int

* needs this operator too

* this can be an unsigned subtract

* happy tests

* s

* kinetis isConfigurationChanged weirdness

* missed J/K

* cypress efifeatures

* build script mistake (!)

* mistake in smart gpio

* debounce

* eg33

* kinetis, so needy

* it's pretty green, we can skip these again
2022-04-28 17:32:39 -04:00
Matthew Kennedy a2e1a079b8 allow enum_class in rusefi_hw_enums.h (#4104)
* 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
2022-04-25 20:38:16 -04:00
rusefillc 0a0345b754 We have working runtime RAM detection - we shall use it for Lua #3970 2022-03-27 19:39:40 -04:00
rusefi 63f430d5d6 typo & progress 2022-03-15 15:50:39 -04:00
rusefillc e6875c4f3f https://github.com/rusefi/rusefi/pull/3976
maybe probably help
2022-03-02 18:52:00 -05:00
Andrey G df1c6a4b7c ports: stm32f7: ld file: fix typo (#3956) 2022-02-23 10:03:44 -05:00
Andrey G 311542e84a Flash size on eg33 (#3955)
* subaru-eg33: 1M of flash is available for FW and bootloader

* ports: stm32f7: allow board define its flash size, otherwise 512K
2022-02-23 07:36:58 -05:00
Matthew Kennedy 6e4cb12275 mitigate F7 flash error by making the image smaller (#3859)
* grumble

* do it for all F7
2022-02-19 15:56:44 -05:00
Andrey G 785c9792c3 usb descriptor: we are bus powered and can consume up to 400mA (#3933) 2022-02-13 16:12:22 -05:00
rusefi cdbd94a15b I2C EEPROM support #3860 2022-02-06 17:23:07 -05:00
Matthew Kennedy 8f536425fb fix f4 standby (#3894)
* fix the bug

* wake on PD0 = CAN RX

* cleanup
2022-02-05 07:25:09 -05:00
rusefillc 6eefbca135 I2C EEPROM support #3860
let's go with EE24 for now
2022-02-04 22:03:12 -05:00
rusefillc b1a7797c09 Wider usage of contrib (#3892)
* 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>
2022-02-04 21:50:21 -05:00
Matthew Kennedy 56240cb668 we have other places to set these MCU values (#3875)
* we have other places to set these values

* missing parts

Co-authored-by: rusefillc <rusefillc@gmail.com>
2022-02-01 18:18:16 -05:00
rusefillc 606476fc57 Revert "I2C EEPROM support #3860"
This reverts commit 22a6d5b0f3.
2022-01-31 20:39:20 -05:00
rusefillc 22a6d5b0f3 I2C EEPROM support #3860 2022-01-31 19:48:53 -05:00
rusefillc 6836c80cd0 I2C EEPROM support #3860 2022-01-31 18:58:39 -05:00
rusefillc 321d032f50 docs 2022-01-26 13:13:06 -05:00
rusefillc 324b90e6e7 https://github.com/rusefi/alphax-2chan/issues/22 2022-01-22 17:28:11 -05:00
rusefillc 93fff340fd https://github.com/rusefi/alphax-2chan/issues/22 2022-01-22 16:50:58 -05:00
NMSTEC 6cdb5514a5 Add comments to Stop & Stby modes (#3798) 2022-01-17 13:11:24 -05:00
rusefillc 97b194f753 PA0 wake up - sharing is caring? 2022-01-17 01:25:31 -05:00
rusefillc 9ec0393d9e Catch up with Chibios 20.3 #2555 2022-01-15 21:43:01 -05:00
NMSTEC 190c895e05 F429 Working Stby, Stop & Wake PA0 (#3787) 2022-01-12 23:18:58 -05:00
rusefillc fc996ad339 Code style for methods with zero arguments #3535 2022-01-11 22:26:24 -05:00
Andrey G fc32af43bb F429 discovery ram dev (#3761)
* stm32f429-discovery: mostly copy-paste from ChibiOS-Contrib

* STM32F429-discovery has external SDRAM

* F429-Discovery: add simple memory test for SDRAM (disabled)

* Revert "random piece of https://github.com/dron0gus/rusefi/tree/f429-discovery-ram-dev"

This reverts commit 9625820272.

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-01-10 16:14:39 -05:00
Matthew Kennedy 4ee76aadc2 per-board pre-low-power handlers (#3752)
* per-board pre-low-power handlers

* per-chip standby options

* default implementation
2022-01-10 08:37:05 -05:00
Andrey G 8205c37da0 Sdram preparations (#3764)
* 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.
2022-01-10 08:31:29 -05:00
rusefillc 9625820272 random piece of https://github.com/dron0gus/rusefi/tree/f429-discovery-ram-dev 2022-01-09 22:45:46 -05:00
Andrey G b37c9d546f Enable ENABLE_AUTO_DETECT_HSE only if STM32_HSECLK is not defined (#3758)
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.
2022-01-09 17:39:29 -05:00