Commit Graph

175 Commits

Author SHA1 Message Date
Matthew Kennedy c0757a7d13 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
rusefillc 1c51e06e35 let's build for h7 2021-02-05 20:58:34 -05:00
Matthew Kennedy e22a9e9d02 -g3 to -g (#2256)
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-01-31 14:13:55 -05:00
Andrey G 27905c6817 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
Andrey G d134fabc51 Simplify Makefile, unify board.mk files (#2229)
* Proper way to add lis302 driver

* Proper way to add license directory to includes

* Makefile: simplify

All ChibiOS stuff is accumulated in ALLCSRC, ALLINC and so on.

* board.mk: append sources and includes to ALLSRC, ALLCPPSRC, ALLINC

* Cypress: fix CANv2 includence into build
2021-01-17 09:32:06 -05:00
Matthew Kennedy 6b0c533d2c 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 554304dac3 switch to single precision constants (#1880)
* adjust builds

* fix test
2020-10-14 20:04:35 -04:00
rusefi 566b246efb Hellen says merge #1772 2020-09-26 04:13:02 -04:00
rusefi 7fa7ac6c37 Merge remote-tracking branch 'origin/Hellen_fork_point' into master
# Conflicts:
#	firmware/Makefile
#	firmware/hw_layer/smart_gpio.cpp
2020-09-09 17:19:41 -04:00
rusefi 2cbb1c4427 Hellen says merge #1772 smart build by default 2020-09-09 16:53:54 -04:00
rusefi 9a33e922af The Big Refactoring of 2019: folder structure #723 2020-08-02 20:46:40 -04:00
rusefi 0ccde6f937 Makefile clean-up 2020-05-25 13:42:55 -04:00
Matthew Kennedy e6e48ce66c 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
dron0gus d5a76b5dda 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
rusefi b6780ab9d0 wow maybe build time magic?! by DronoGus 2020-04-25 12:07:57 -04:00
rusefi b7324c9a51 proteus-f4 was requested 2020-03-18 11:37:53 -04:00
rusefi 61f7851264 progress 2020-03-13 20:36:07 -04:00
Matthew Kennedy c14381a393 default to O2 (#1155) 2020-02-24 21:49:04 -05:00
Matthew Kennedy a08946c2f5 Fix master (#1134)
* Revert "something went very wrong."

This reverts commit e0fb325d5a.

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

This reverts commit 55e8ee5052.

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

This reverts commit b0d7cc9a22.

* temp prometheus fix

* fix bootloader

* fix batch files
2020-02-08 16:34:29 -05:00
rusefi b0d7cc9a22 partial Revert of "Stricter compile options (#1132)" 2020-02-08 07:08:22 -05:00
Matthew Kennedy fa8553b00d Stricter compile options (#1132)
* stricter

* don't warn on that one

* this code was dead
2020-02-08 08:05:40 -03:00
rusefi 431a21943b The Big Refactoring of 2019: folder structure #723 2019-12-03 23:52:44 -05:00
rusefi 7c8cba6c5d shared GCC settings between projects 2019-12-02 10:26:16 -05:00
rusEfi f68241bc35 development into unit tests, makefile cleanup 2019-11-19 20:05:12 -05:00
rusefi acb9506510 Trying latest gcc 9 #1001 2019-11-07 11:13:32 -05:00
Matthew Kennedy ccb4c51e50 Sensors: composition >> inheritance (#953)
* functional sensors

* format

* tests

* sim makefile

* eol

* format tests
2019-09-24 21:11:41 -04:00
rusEfi 5b5bef4e3c This black magic improves hard fault debugging experience 2019-09-22 21:28:19 -04:00
Matthew Kennedy dfcc9dba04 add sensor framework, tests (#929)
* add framework, tests

* move oil pressure to new way

* add init logic

* brackets on the same line

* spaces -> tabs

* spaces -> tabs for tests

* bracket on same line

* hook up sensor mocking

* add nan check

* fix nan check

* I wrote an essay

* casing

* only init if we have a sensor to init

* style, actually call init

* format

* fix casing

* typo

* implement linear sensor

* wire up producer

* smarter limiting

* setup comments

* add reporting

* doxyfile

* oops

* add adc subscription

* clarity

* fix logic

* multiply voltage

* test styling

* test guards

* remove dependencies

* linear sensor test

* remove unused

* fix merge

* format, implicit convert op

* explicit

* format tests

* fix merge
2019-09-21 14:33:38 -04:00
rusEfi 475377dcfc DFU command & refactoring 2019-08-03 19:58:38 -04:00
rusefi bf6bbdc190 software jump to DFU #809 2019-07-28 12:33:47 -04:00
Matthew Kennedy 0e70da4ef0 enable LTO (#825) 2019-06-04 19:59:37 -04:00
rusefi 5be8a99ca0 Try ccache #769 2019-04-20 21:35:14 -04:00
rusefi eb5926e39a Try ccache #769 2019-04-20 21:31:24 -04:00
rusefi f6eb829fef cj125 and hip125 and else SPI broken with chibi18 migration #757 2019-04-14 18:09:58 -04:00
dron0gus 12e07bc3ab Some more include fixes for linux (#738)
* Some more include fixes for linux

* Pass cross-compile path through CROSS_COMPILE

* Lower-upper case conversion fixes for linux
2019-04-10 01:12:35 +02:00
rusefi e30dfaf333 reducing duplication
removing unused (?) defines
removing value space overlap between PROJECT_BOARD and PROJECT_CPU
2019-04-09 18:37:25 -04:00
rusefi f3942334f7 helping linux build a little bit 2019-04-09 18:13:11 -04:00
rusefi df62ae6a4b The Big Refactoring of 2019: folder structure #723 2019-04-05 01:41:24 -04:00
rusefi c993e1f429 The Big Refactoring of 2019: folder structure #723 2019-04-05 01:02:34 -04:00
rusefi b23f9e9cf4 we need TLE8888 driver #714 2019-04-04 19:56:03 -04:00
rusefi 0121a7bc5b The Big Refactoring of 2019: folder structure #723 2019-04-02 23:19:21 -04:00
rusefi 105d82bdf5 Firmware Update via UART and/or USB #398
default bootloader
2019-04-01 02:51:34 -04:00
andreika-git 03a8e68b2d trigger_input_icu, EFI_ENABLE_MOCK_ADC, HALINC_CONTRIB (#724)
* trigger_input_icu.cpp

* EFI_ENABLE_MOCK_ADC

* $(HALINC_CONTRIB)
2019-03-31 23:15:32 +02:00
rusefi 583d189e3b The Big Refactoring of 2019: folder structure #723 2019-03-31 16:33:16 -04:00
andreika-git a79175f6ef More portability & small fixes (#719)
* Use hw_stm32.mk

* Fix bootloader

* Use more common hw_ports.mk filename instead of hw_stm32.mk

* More CPU compatibility for Makefile

* TS_UART_MODE & rename TS_SERIAL_UART_DEVICE->TS_SERIAL_DEVICE

* Move lockAnyContext()/unlockAnyContext() to rfiutil.c

* USE_FATFS

* EFI_LCD

* Less compilation errors

* STATUS_LOGGING_BUFFER_SIZE & SETTINGS_LOGGING_BUFFER_SIZE

* EFI_ALTERNATOR_CONTROL, EFI_SERVO, EFI_DISABLE_CONSOLE_ACTIONS

* #ifndef PWM_PHASE_MAX_COUNT & more flexible GPIO inside portname()

* merge

* EFI_ALTERNATOR_CONTROL, EFI_ELECTRONIC_THROTTLE_BODY
2019-03-29 15:29:01 +01:00
rusefi 11e60e35bf we need TLE8888 driver #714 2019-03-25 15:08:32 -04:00
rusefi 5903fc0e3d fixing legacy folder name 2019-03-20 08:45:15 -04:00
dron0gus 68884cc4ae gpiochips API, core and unit test (#703)
* Add external gpiochips driver API and core

* gpiochips: add unit test
2019-03-12 10:12:37 -04:00
rusefi a3b150a171 Migrating to chibios18 (#687)
* first step #631

* chconf #631

* no EXT driver

* #631 progress

* #631 WOW it already compiles?!

* #631 simulator progress

* #631 CAN is back

* more changes about 25MHz

* Migrate to Chibios 18 stable #631

* undoing some merge mistake?

* little mess

* Migrate to Chibios 18 stable #631

* Migrate to Chibios 18 stable #631

* Migrate to Chibios 18 stable #631
joystick works!

* Migrate to Chibios 18 stable #631
done?!
2019-02-05 18:36:25 -05:00
rusefi 583e6d0a70 docs by Matt K 2019-01-06 20:48:15 -05:00
Matthew Kennedy 7154da1f5f Improve wall wetting AE to use time constant (#650)
* impruv

* c++17

* add tests, docs
2019-01-06 20:45:51 -05:00
rusefi 4fef97fb76 #638 2018-12-31 10:17:55 -05:00
rusefi ade7fd73bd fix #375 2018-12-28 21:43:46 -05:00
rusefi e8579e7e8e reviving stm32f1 2018-12-26 22:17:51 -05:00
rusefi f9d8c37cda progess 2018-12-16 00:55:03 -05:00
rusefi 1a6e329958 reducing duplication 2018-12-16 00:22:24 -05:00
rusefi 421f378f0e progress 2018-12-16 00:21:15 -05:00
rusefi d421d358e8 no one is reading the bottom of https://github.com/rusefi/rusefi 2018-12-13 21:29:24 -05:00
andreika-git 96dfebc542 STM32 Nucleo144-F767ZI board: Initial support (#620)
* More EFI_ #ifdefs for config flexibility

* Even more config flexibility

* New firmware/config/stm32f7ems/* files

* New firmware/config/boards/NUCLEO_F767/* files

* New firmware/hw_layer/stm32f7/* files

* Fix for EFI_USB_SERIAL

* Adding #if defined(STM32F7XX)

* SPI flags changed in F7: SPI_CR1_DFF --> SPI_CR1_CRCL

* I2Cv2 config changed in F7

* More versatile CCM defines

* Makefiles

* Double #ifs cleanup

* docs
2018-11-16 07:40:06 -05:00
rusefi 573bceb84a #616 idle into simulator 2018-10-30 08:42:36 -04:00
rusefi cdf01513f0 reducing contrib dependency 2018-08-31 21:02:50 -04:00
rusefi 5f24be5233 reducing import 2018-08-31 20:50:17 -04:00
rusefi ddd8a40ed2 #517 fixed 2018-07-28 16:39:23 -04:00
rusefi 5a7b344351 proper submodule folder name 2018-01-23 23:00:10 -05:00
rusefi 0b0f9efa3a Feature 463 (#464)
* #463

* #463

* default .LD filename

* #463

* fixing start-up by disabling LSE until rusEfi patch is applied

* simulator compiles now

* latest ChibiOS 17 with FatFS 0.13
2018-01-23 21:17:30 -05:00
rusefi 96cf686608 #517 2017-12-24 22:07:47 -05:00
rusefi 71502d4244 #517 2017-12-21 22:24:01 -05:00
rusefi a6f1809a07 #517 2017-12-21 22:19:38 -05:00
rusefi 853289feaf #473 2017-08-28 20:42:27 -04:00
rusefi 81ca74bfb3 one step closer to defaults 2017-07-28 15:17:45 -04:00
rusefi 652bfffced removing unused reference 2017-07-22 22:28:14 -04:00
rusefi 0b4e699316 minor clean-up 2017-07-22 20:20:46 -04:00
rusefi f20eb14530 bootloader 2017-06-02 12:33:45 -04:00
Andrei 9c0d7cc667 BOARDSRC_CPP (and compatibility issues) pull request 2017-05-02 20:34:01 +03:00
Andrei c279910d3f custom-board-makefile pull request 2017-04-17 18:22:09 +03:00
rusefi b9eb26ac16 preparing to live new life 2017-04-02 11:50:05 -04:00
rusEfi 4d49fd0cab #375 - issues with log() 2017-04-02 01:38:52 -04:00
andrey def04123d7 safer folder name 2017-04-01 20:22:40 -04:00
rusefi bff89f30e9 moving from discovery to brain board 2017-03-29 20:19:40 -04:00
Fabien Poussin 55de3f46f5 Fixed FatFS library compilation. 2017-03-29 17:56:42 +02:00
Fabien Poussin 4a93fc550f Fixes to make the firmware run. 2017-03-29 17:55:53 +02:00
Fabien Poussin a0e5107ba2 Moving boards to config folder. 2017-03-29 17:55:53 +02:00
Fabien Poussin db8d16a47a Adding ChibiOS Contrib module for a proper mass storage driver.
Adding missing board files.
2017-03-29 17:55:53 +02:00
Fabien Poussin 2cd048495f Changing ChibiOS repo to rusefi, updating code accordingly. 2017-03-29 17:55:52 +02:00
Fabien Poussin 4e99130b22 Disabling smart build and verbose compile. 2017-03-29 17:55:52 +02:00
rusefi 81aa2c16c0 progress #380 2017-03-22 16:47:13 -04:00
rusefi 782a15de82 fixed #375 2017-03-20 23:31:49 -04:00
rusefi 1e35e063bd progress #372 2017-03-15 21:42:54 -05:00
rusEfi 7a55ea3540 auto-sync 2017-01-02 15:03:26 -05:00
rusEfi ad21a4536a auto-sync 2017-01-02 14:03:17 -05:00
rusEfi 8e83736a95 auto-sync 2016-07-17 02:03:46 -04:00
rusEfi 2c2973fc7e auto-sync 2016-07-05 11:03:11 -04:00
rusEfi 99e7af5db9 auto-sync 2016-06-10 15:01:47 -04:00
rusEfi b270abeb77 auto-sync 2016-05-19 23:01:46 -04:00
rusEfi 090c3c55f4 auto-sync 2016-05-19 22:03:18 -04:00
rusEfi 4ad9558ff7 auto-sync 2016-02-12 11:02:09 -05:00
rusEfi 380b46e658 auto-sync 2016-02-11 22:07:56 -05:00
rusEfi a6ea11e797 auto-sync 2016-02-11 21:03:53 -05:00
rusEfi 3e82fc841e auto-sync 2016-02-11 20:20:28 -05:00
rusEfi 64cefebd52 auto-sync 2016-02-11 16:03:16 -05:00