Commit Graph

63 Commits

Author SHA1 Message Date
Matthew Kennedy 88193c5ea8 bootloader builds 2023-08-27 09:35:43 -04:00
rusefillc 67834809d4
Get rid of HW_LAYER_EMS (#5389)
Now we have HW_LAYER(_CPP) for common HW stuff
And HW_LAYER_PORT(_CPP) for ports stuff

Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2023-07-04 23:42:13 -04:00
rusefillc 9e838f1d12
HW_LAYER_EMS* renamed to HW_LAYER_PORT* (#5387)
* HW_LAYER_EMS_CPP renamed to HW_LAYER_PORT_CPP

* HW_LAYER_EMS renamed to HW_LAYER_PORT

---------

Co-authored-by: Andrey Gusakov <dron0gus@gmail.com>
2023-07-04 22:30:20 -04:00
Andrey Gusakov 97759fbc5c This include directory is no longer exist 2023-04-07 03:47:05 -04:00
Matthew Kennedy 73f4436397
deduplicate $(BOARD_DIR) in makefiles (#5024)
* calculate BOARD_DIR exactly once

* deduplicate board scripts

* unit tests

* make passes variables to openblt build properly

* was this an intentional omission?

* s

* prometheus

* prometheus
2023-02-01 14:41:27 -05:00
Matthew Kennedy ced5db5d53
gcc 10 (#4641)
* scripts

* change check version

* disable inlining

* all the spots

* it's funny that this works with the wrong file extension

* bootloader

* hardware ci runs gcc 10
2022-10-18 22:30:16 -04:00
rusefillc 1375f6e0bc not used by BL? 2022-09-05 18:48:02 -04:00
Matthew Kennedy c3d6bd7e59
Pt2001 module (#4396)
* pt2001 uses module

* read flag0

* c

* libfirmware

* makefiles

* are unit tests happy?

* bootloader
2022-08-08 08:53:08 -04:00
Matthew Kennedy a0d8ae3f4f
use libfirmware for a few things (#4351)
* use libfirmware

* unit tests

* crc

* missed one

* bootloader
2022-07-16 02:22:51 -04:00
rusefillc 25e54524e7 more copy-pasta :( 2022-02-06 22:00:49 -05:00
rusefillc 65df8adf64
407 eeprom (#3896)
* I2C EEPROM support #3860

enable

* I2C EEPROM support #3860

fresh contib

* I2C EEPROM support #3860

fresh contib

* I2C EEPROM support #3860

BL gives us extra pain

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-02-05 15:57:11 -05:00
rusefillc c61657be0f Catch up with Chibios 20.3 #2555 2022-01-15 22:09:33 -05:00
rusefillc 04ab6a0488 mk files refactoring 2022-01-06 21:48:48 -05:00
rusefillc a689f2ca0e Live Data progress
fixing build?
2022-01-06 20:16:59 -05:00
rusefillc a6040232ce reducing copy-pasta - would this work? 2022-01-04 19:28:01 -05:00
Matthew Kennedy cdd27abb09
turn on c++ 20 (#3579)
* set flags

* emit initializers

* jar
2021-11-19 22:19:34 -05:00
Scott Smith 37da55c920
Compile each project's PCH to a separate file to reduce developer friction. (#3505)
Having to remove the precompiled header when switching from firmware to simulator to unit_tests and
back again is annoying.  Use a directory to store the precompiled header output.  Turn off
precompiled header warnings as GCC still complains even if it finds a valid one eventually.
2021-11-08 15:52:58 -05:00
Matthew Kennedy 3518da97a7
set up precompiled header (#2971)
* ignore

* set up precompiled header

* makefile

* fixes

* cleanup

* only depend cpp on pch

* efifeatures in pch

* f7 efifeatures

* consolidate

* simulator

* proteus build

* error handling is a good one

* bootloader pch

* don't auto include pch

* dirs

* delete on clean

* bootloader cleans

* clean.sh deletes pch

* disable in bl for now

* there was a typo so maybe it'll work now

* remove todo

* don't need that any more

* don't need these parts

* don't need this part

* undo changes

* use a different cpp as example

* s

* Revert "cleanup"

This reverts commit 8de8698490f5d09c2df753f00a89751aa898be9a.

* also unnecessary now

* buh

* comment

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-07-25 21:23:23 -04:00
rusefillc 13c130983e Fix bootloader build #2907
helping build?
2021-07-05 15:08:11 -04:00
Andrey G b1a2295917
Fix bootloader build (#2907)
* Chibios-Contrib fix

* hm?!!

* Chibios-Contrib path is also relative to PROJECT_DIR

* Revert "Chibios-Contrib path is also relative to PROJECT_DIR"

This reverts commit 8cab5c5508df5fb57b2fe86d80589a3081cbf56c.
2021-07-05 14:18:05 -04:00
rusefillc 19e991ffd8 helping build? 2021-07-05 11:51:54 -04:00
Matthew Kennedy 20cef63d32
Lua on f407, try again (#2725)
* 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
2021-05-20 23:05:18 +03:00
rusefillc 540bb8e327 Revert "lua on f407 (#2646)"
This reverts commit e8855263
2021-05-09 18:25:50 -04:00
Matthew Kennedy e885526308
lua on f407 (#2646)
* 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
2021-05-09 16:25:38 -04:00
Matthew Kennedy 830575a306
lua 5.4 (#2590)
* thread priority

* build

* makefile prep

* call startup

* lua 5.1

* mk

* 5.3

* mk

* I guess lua does something?

* extract hooks, builds for tests

* a bit of error handling

* guard

* bootloader makefile

* remove lua

* submodule

* submodule update

* builds with submodule

* disabled by default

* h7 chconf

* tweaks

* add a useful hook

* move luaconf

* perf trace lua

* test helpers

* lua unit tests

* include to satiate clang
2021-04-28 22:41:25 -04:00
Matthew Kennedy f0cf4f38ff
fix multi-serial-port insanity (#2476)
* 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>
2021-03-28 09:06:36 -04:00
Matthew Kennedy 4fe0ceec61
deduplication in halconf (#2377)
* 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
2021-02-24 14:08:03 -05:00
Matthew Kennedy dade25ef34
move chconf/mcuconf/halconf in to hw_ports (#2321)
* 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>
2021-02-10 19:38:24 -05:00
Matthew Kennedy 423acd384b
simplify MCU selection (#2308)
* 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
2021-02-08 02:11:44 -05:00
Matthew Kennedy 10c31c2955
-g3 to -g (#2256)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-01-31 14:13:55 -05:00
Andrey G 777979c3ca
Chibi os 20 (#2212)
* Update ChibiOS

* Fix Makefiles includes paths

* halconf.h: remove flash hack

* mcuconf: fix EXTI ptiorityes

* Digital Input: ICU: use designated initializers, initialize 'arr'

* ChibiOS: lis302dl fix

* ADC: update to new API

* UARTConfig: timeout_cb field, formating

* ChibiOS: remove _exit, _kill, _getpid

* Fix lis302dl

* Bump config versions

* chconfig_common: cosmetic changes

* stm32f4ems: commulative config update

* Update Simulator

* ALLCSRC already contain all needed ChibiOS files.

Same for ALLINC and ALLCPPSRC

* ChibiOS fix for Simulator

* ChibiOS: port lock/unlock hook and MMC over SPI timeout

* STM32F7: update configs

* STM32F7: update linker file

* Cypress: port ADC lld to ChibiOS-20

* Cypress: port SPI lld to ChibiOS-20

* Cypress: port CAN lld to ChibiOS-20

* Cypress: fix include path for rules.ld

* Cypress: update chconf.h and halconf.h for ChibiOS-20

* Kinetis: update ADC lld to ChibiOS-20

* Kinetis: update SPI lld to ChibiOS-20

* Kinetis: update UART lld driver for ChibiOS-20

* Kinetis: update chconf.h and halconf.h for ChibiOS-20

* Kinetis: fix include path for rules.ld

* Nucleo F746: update ld script

* Nucleo F746: fix compile

* Bootloader: fix compilation with ChibiOS-20, cleanup

* Bootloader: add way to pass crosscompiler using CROSS_COMPILE

* Debug build arguments

* Simulator: fix windows compilation

Exclude syscalls_cpp.cpp from compilation
2021-01-19 15:20:35 -05:00
Matthew Kennedy bb8650179c
consolidate EFI_UNIT_TEST and friends (#1940)
* restructure

* guard c++

* idle too

* status_loop.h

* consolidate definitions

* use 1/0 instead, check for existence

* missed a few

* dead define

* defs for bootloader
2020-11-11 20:34:39 -05:00
Matthew Kennedy e0bb7ad581
disable i2c, other unused features (#1891)
* dead

* more
2020-10-20 22:24:32 -04:00
Matthew Kennedy 2083b34cf9
simplify getTimeNowNt() (#1876)
* remove old impl

* add cpp wrapper to os_access

* clean up os_access

* remove touchTimeCounter

* new impl

* put comment about lock free impl

* include cpp wrappers for BL

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-10-15 08:57:13 -04:00
rusefi 661c57c43a The Big Refactoring of 2019: folder structure #723 2020-08-02 21:04:50 -04:00
rusefi 38c3f119b1 UART DMA for "primary" connector #1528 2020-06-21 23:22:45 -04:00
Matthew Kennedy 94e63e7c43
binary logging (#1443)
* field support

* tests

* makefiles

* test data too

* missing include dir

* write correct thing

* fix one test

* fix test

* omnomnomnom ram

* format

* use defined names

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-05-17 15:56:37 -04:00
rusefi 0a41aae042 "FASLE" -> FALSE 2020-04-26 01:25:41 -04:00
dron0gus 474d5e64cf
Update chibios (#1364)
* 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
2020-04-25 16:32:32 -04:00
Matthew Kennedy a617cb30a5
bootloader ci (#1189)
* bootloader ci

* trailing slash

* Revert "progress?"

This reverts commit 6085bee005.

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2020-03-13 22:12:52 -04:00
rusefi 6085bee005 progress? 2020-03-13 21:23:58 -04:00
rusefi 97ce0eda46 fixing build? 2020-03-13 20:30:07 -04:00
Matthew Kennedy 98e6e4b0eb Fix master (#1134)
* Revert "something went very wrong."

This reverts commit 53179dfd22.

* Revert "trying to fix build broken by "Sensor reconfiguration while running (#1131)""

This reverts commit 0bf32a7291.

* Revert "partial Revert of "Stricter compile options (#1132)""

This reverts commit a17cc28382.

* temp prometheus fix

* fix bootloader

* fix batch files
2020-02-08 16:34:29 -05:00
rusefi db4ea08568 The Big Refactoring of 2019: folder structure #723 2019-12-04 00:04:27 -05:00
Matthew Kennedy 3f0385f70d Remove chibios trace flag (#1037)
* remove from scripts

* remove from others
2019-12-02 19:11:07 -05:00
rusefi 78e32c0c0a clean-up 2019-11-19 20:56:11 -05:00
rusefi 71fd295d9c making GCC 9 happier 2019-11-19 20:43:12 -05:00
rusefi 33a488aa54 fixing bootleader build 2019-08-03 20:09:18 -04:00
andreika-git e1b00468f0 Small fix for simulator + bootloader (#877)
* fix simulator

* fix bootloader
2019-07-09 06:06:07 -04:00
rusefi 5da787f4b4 would it help BL? 2019-05-05 11:13:20 -04:00