Commit Graph

932 Commits

Author SHA1 Message Date
rusefi 903815532d fix or safer code? 2019-04-12 18:10:47 -04:00
rusefi 08dc8b3717 progress 2019-04-12 17:39:49 -04:00
dron0gus 86c561c651 Simulator (#749)
* Hide trigger_input.cpp if EFI_SHAFT_POSITION_INPUT == FALSE

* hide some hw-specific code under EFI_PROD_CODE
2019-04-12 23:28:19 +02:00
dron0gus 2447f5ea1a gpio chips (#744)
* tle8888: fix building for stm32f765

* gpio-chips: add mc33972 driver
2019-04-12 22:14:25 +02:00
rusefi 9c87b13ac7 fixing at least unit tests 2019-04-12 08:33:40 -04:00
dron0gus 65e46ac70f trigger input: add PAL support (#743) 2019-04-12 14:05:53 +02:00
rusefi dcb3771b16 SPI-controlled outputs #697
better spot for this code
2019-04-10 18:23:31 -04:00
rusefi a829206947 fixing build - BOOTLOADER has it's special limitations 2019-04-10 09:02:32 -04:00
dron0gus 1b39480e64 Gpiochips integration (#740)
* gpio-chips core function renames

* efi_gpio, pin_repository: add support for external gpios

* gpio-chips update

* gpio-chips: add api to name each pin of gpiochip

* tle6240: provide individual names for each pin
2019-04-10 14:43:54 +02:00
rusefi 81284d52cd The Big Refactoring of 2019: folder structure #723 2019-04-09 22:52:03 -04:00
rusefi 57ac71a814 FATAL error loading TS project
fix #736
2019-04-09 22:15:55 -04:00
dron0gus c6a1d0cbe0 gpios rework (#739)
* Some more include fixes for linux

* Pass cross-compile path through CROSS_COMPILE

* Lower-upper case conversion fixes for linux

* Rename unmarkPin to brain_pin_markUnused

This is part of external gpiochip integration

* Add gpio_pin prefix to markUsed and markUnused

To distinguish from similar functions using brain_pin

* pin_repository: add helpers

this is part of gpio chips integration

* efi_gpio: simplify getHwPin using brain_pin_is_onchip
2019-04-10 01:31:10 +02:00
dron0gus 572d04a799 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 77ede53ef5 reducing duplication
removing unused (?) defines
removing value space overlap between PROJECT_BOARD and PROJECT_CPU
2019-04-09 18:37:25 -04:00
rusefi f3d748917f rusEfi settings editor is broken for one byte enums fix #709 2019-04-08 11:57:16 -04:00
rusefi d94b6d74e7 better ICU error handling 2019-04-07 18:25:46 -04:00
rusefi bbcb86ec1f we need TLE8888 driver #714 2019-04-07 08:35:04 -04:00
rusefi d8f8d10369 we need TLE8888 driver #714
F7 support
2019-04-06 22:04:35 -04:00
rusefi 9bf052c000 we need TLE8888 driver #714 2019-04-06 13:11:46 -04:00
rusefi 8ae8d3d58f we need TLE8888 driver #714 2019-04-06 12:26:37 -04:00
rusefi 35b0b2c211 we need TLE8888 driver #714
it works now! all SPI/CS pins in 'default' mode
2019-04-06 10:30:20 -04:00
rusefi 05d3ce22f4 CONFIG_RESET_SWITCH_PORT flexibility 2019-04-06 08:41:37 -04:00
rusefi 17f073a439 we need TLE8888 driver #714 2019-04-06 07:38:02 -04:00
dron0gus 8cf20976f6 tle8888: fix spi confog for STM32F4 (#735)
* tle8888: fix spi confog for STM32F4

* TLE8888: fix array out of bounds access due to incorrect define used in loop
2019-04-06 00:37:00 +02:00
rusefi 0aac3c8f41 we need TLE8888 driver #714 2019-04-04 23:03:32 -04:00
rusefi a8442d5f32 we need TLE8888 driver #714 2019-04-04 20:57:51 -04:00
rusefi 41fa8bdcec we need TLE8888 driver #714 2019-04-04 20:03:31 -04:00
rusefi 334af50f3f we need TLE8888 driver #714 2019-04-04 19:56:03 -04:00
rusefi 5b11926fea we need TLE8888 driver #714 2019-04-04 19:29:33 -04:00
dron0gus be70420a71 Extgpios integration 1 (#734)
* pin repository: add brain_pin_markUsed and brain_pin_markUnused

This is part of external gpio chips integration

* pin repository: simplify getPinFunction()

* pin repository: add brain_pin_is_onchip()

This is part of external gpio chips integration

* pin repository: kill signed vs unsigned warning
2019-04-05 00:53:27 +02:00
rusefi d30009af16 fixing build 2019-04-04 18:52:00 -04:00
rusefi 43f289e4c2 fixing unit tests 2019-04-04 10:08:50 -04:00
dron0gus bb0fcf3f87 TLE8888: initial support (#733) 2019-04-04 15:55:18 +02:00
rusefi 02832ce0c3 The Big Refactoring of 2019: folder structure #723 2019-04-02 23:19:21 -04:00
dron0gus bc0eaf52d8 console vs ts cleanup and compilation fix for linux (#728)
* console vs ts cleanup

* include is case-sensetive in linux
2019-04-01 23:04:49 +02:00
andreika-git e2883a9166 ADC_CHANNEL_SENSOR & EFI_INTERNAL_ADC (#726) 2019-04-01 20:02:19 +02:00
rusefi be9651cb95 The Big Refactoring of 2019: folder structure #723 2019-03-31 17:44:34 -04:00
andreika-git 8a13bab7d9 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
andreika-git f1ec34f032 More portability and smaller RAM footprint possible (#722)
* EFI_NO_CONFIG_WORKING_COPY

* EFI_CONSOLE_NO_THREAD

* EFI_SHAFT_POSITION_INPUT

* #ifndef UTILITY_THREAD_STACK_SIZE

* fix printf() -> print()
2019-03-30 22:41:46 +01:00
andreika-git 001fbb2526 More portability & bootloader fix (#720)
* fix bootloader

* EFI_FSIO

* EFI_EMULATE_POSITION_SENSORS, EFI_BOARD_TEST, EFI_AUX_PID, EFI_JOYSTICK
2019-03-29 15:46:15 +01:00
andreika-git b80806182f 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 aff03cdbc5 unifying_file_naming 2019-03-29 09:40:43 -04:00
rusefi 10b1fdf184 git 2019-03-29 09:38:08 -04:00
rusefi bd2b992918 unifying_file_naming 2019-03-29 09:11:13 -04:00
rusefi 5626a8c82a better location for spi pin modes
stm32-specific code would upset someone
2019-03-29 02:44:52 -04:00
andreika-git d6ff361743 Fix bootloader (#717)
* Use hw_stm32.mk

* Fix bootloader
2019-03-29 06:46:48 +01:00
andreika-git c34d7cac48 More compatibility for ADC_inputs, etc. (#716)
* Move STM32-specific ADC pinouts to ports/stm32/stm32_common.cpp

* Move STM32-specific files to ports/*

* setAdcChannelOverrides()

* Add #ifdefs for adc_inputs (PWM_FREQ_*, PWM_PERIOD_*, ADC_*_DEVICE)

* addChannel(), removeChannel()

* fix tle6240 compilation

* Add stm32_common.cpp to Makefile

* More ports/stm32/* paths

* More ports/stm32/* paths

* More flexible GPIO ports

* Add #ifdef for GPTDEVICE

* EFI_BOARD_TEST and EFI_JOYSTICK

* EFI_TLE8888

* Fix HIP9011_logic compilation

* ADC_CHANNEL_SENSOR

* Move ioportid_t PORTS[] to ports/*

* Fix simulator
2019-03-28 22:46:10 -04:00
rusefi 6104a831c1 we need TLE8888 driver #714 2019-03-27 04:02:34 -04:00
rusefi 0dadb6de68 we need TLE8888 driver #714 2019-03-26 12:30:30 -04:00
rusefi 8635065907 more SPI speeds and TLE8888 to full pinout 2019-03-26 10:35:33 -04:00
rusefi 7e58e54976 better error handling for invalid SPI settings 2019-03-26 09:38:23 -04:00
rusefi cf740411f2 SPI prescaler refactoring 2019-03-25 22:41:31 -04:00
rusefi fc590524c2 we need TLE8888 driver #714 2019-03-25 20:30:36 -04:00
rusefi b823a00f8e we need TLE8888 driver #714 2019-03-25 15:50:14 -04:00
rusefi 4bb645f7e0 we need TLE8888 driver #714 2019-03-25 15:14:22 -04:00
rusefi c9b022d562 we need TLE8888 driver #714 2019-03-25 15:08:32 -04:00
rusefi 8f2a385b58 typos and better parameter name 2019-03-25 14:29:34 -04:00
rusefi c5cc937341
#705 (#706) 2019-03-15 09:13:54 -04:00
dron0gus 47950dcf5e tle6240 gpio driver implementation (#704)
* TLE6240: move to gpio drivers directory

* TLE6240: add gpiochip driver code
2019-03-13 08:03:22 -04:00
rusefi 653a735eab refactoring: no logic changes, just nicer variable and method names 2019-03-12 18:54:46 -04:00
dron0gus 70ebc06517 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
dron0gus c9edbf4225 Cleanup fixes (#700)
* Kill some more warnings

* pin_repository: add markUnused, allow use from plain C

* ehiGpio.cpp: add forgotten GPIOG port
2019-03-08 07:01:15 -05:00
rusefi 3d53c9911d making gcc8 happier? 2019-03-02 18:41:25 -05:00
rusEfi 830e733053 fix #698 2019-02-27 17:12:52 -05:00
rusefi 761498efb1 refactoring - using proper enum 2019-02-24 10:04:00 -05:00
rusefi 46bdbf82d1 refactoring: reducing code duplication 2019-02-23 12:33:49 -05:00
rusefi 9547c44ff1
688 brainpins (#694)
* GPIOF, GPIOG and GPIOH ports are not available #688
2019-02-22 22:10:41 -05:00
dron0gus 76fa11d5e2 warning cleanup (#693)
* Kill annoing warnings about unused vars

* Kill annoing signed vs unsigned warnings

* Make ALWAYS_INLINE macro realy inlining

* Incorrect attribute placement.

While correct attribute placement cause ram4 overflow.
Move to correct place (to avoid gcc-2018-q4 errors) and comment
out.

* Silence -Wcast-function-type warnings

Cast to intermediate "void *" to lose compiler knowledge about the original
type and pass the warning. This is a workaround.
2019-02-21 05:44:45 -05:00
rusefi b7b5c28be7 getRemainingStack() is back! 2019-02-12 01:24:42 -05:00
rusefi 24b1b34fef wider usage of PeriodicController 2019-02-11 15:09:24 -05:00
rusefi 9325cd6d23 better (?) variable names 2019-02-10 22:47:49 -05:00
rusefi de6d9d6f8d ETB PeriodicController refactoring 2019-02-10 19:52:06 -05:00
rusefi d4ec151c98 docs 2019-02-07 01:18:36 -05:00
rusefi e92b36820e F7 has different memory bank sizes 2019-02-07 01:06:39 -05:00
rusefi 4bb905a990 code clean-up 2019-02-07 00:26:55 -05:00
rusefi 6eb0b4efdb F746 flexibility 2019-02-06 23:34:39 -05:00
rusefi 45fa6089a4 F7 progress :) 2019-02-06 18:41:48 -05:00
rusefi e12c315461 docs 2019-02-06 18:18:21 -05:00
rusefi feb5b28623 refactoring: duplicated import, already imported 2019-02-05 21:06:18 -05:00
rusefi bb5775f1aa docs 2019-02-05 19:00:52 -05:00
rusefi 06be313448
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 08c7f7887f Migrate to Chibios 18 stable #631 2019-02-03 22:17:46 -05:00
rusefi 7880acec98 CJ125 unit-tests coverage #617 2019-02-02 01:45:26 -05:00
rusefi e9a1341782 CJ125 unit-tests coverage #617 2019-02-02 01:06:45 -05:00
rusefi 2b852ea48e CJ125 unit-tests coverage #617 2019-02-01 23:48:11 -05:00
rusefi 3b5a07c9d6 CJ125 unit-tests coverage #617 2019-02-01 23:16:34 -05:00
rusefi 56f0260414 CJ125 heater zero PWM improvement 2019-02-01 22:20:15 -05:00
rusefi ed4fed57fb better conditional compilation 2019-01-31 11:57:15 -05:00
rusefi d9c8c1fc3e #631 TIME_MS2I mostly 2019-01-28 20:00:17 -05:00
rusefi c6ef295002 #631 2019-01-28 19:50:37 -05:00
rusefi fef6c3cc95 #631 2019-01-28 19:33:51 -05:00
rusefi fb206bb3df #657 pulling global access down 2019-01-28 00:52:21 -05:00
rusefi ee4ac9b240 NA6 progress
A/C toggle switch indicator in TS
renaming "pedalPosition" to "throttlePedalPosition"
2019-01-27 00:02:58 -05:00
rusefi faaea40ad0 docs 2019-01-25 21:04:33 -05:00
rusefi 53b5c08c0a refactoring around GET_RPM 2019-01-21 21:48:58 -05:00
rusefi 7a20bda66f refactoring around GET_RPM 2019-01-21 20:33:21 -05:00
rusefi d299d02240 #35 progress 2019-01-19 11:28:37 -05:00
rusefi 8b66bdc86b #35 unit tests 2019-01-19 09:40:39 -05:00
rusefi c6f19d77be #35 unit tests 2019-01-19 09:14:48 -05:00
rusefi f054de0876 BUG: FATAL in firmware with DEBUG mode #667 2019-01-11 17:40:44 -05:00
rusefi d55c7dd856 #640 Occasional halts on "Burn" in TunerStudio ("Red" LED is on) 2019-01-11 15:44:24 -05:00
rusefi db02669278 comments for #663 #664 2019-01-11 08:37:02 -05:00
Matthew Kennedy dca85fd9fa Implement ST-recommended workaround for #663 (#664)
* fix #663

* consistency
2019-01-11 08:34:34 -05:00
rusefi a0d3ed28ea docs 2019-01-11 08:33:34 -05:00
Matthew Kennedy a6e8e857af idle CS pin fix #665 (#666) 2019-01-11 08:12:26 -05:00
rusefi dd8e2d9326 The Big Refactoring of 2019: DECLARE_ENGINE_PARAMETER_SUFFIX consistency and simplification #657 2019-01-10 19:25:07 -05:00
rusefi cbd2d69731 The Big Refactoring of 2019: DECLARE_ENGINE_PARAMETER_SUFFIX consistency and simplification #657 2019-01-09 22:57:33 -05:00
rusefi 57993ff1b4 The Big Refactoring of 2019: DECLARE_ENGINE_PARAMETER_SUFFIX consistency and simplification #657 2019-01-09 22:16:30 -05:00
rusefi 970d120a41 The Big Refactoring of 2019: scheduler should not be global #655 2019-01-09 08:50:51 -05:00
rusefi 5ffcc396eb The Big Refactoring of 2019: scheduler should not be global #655 2019-01-09 07:57:43 -05:00
rusefi ba1e1f3275 #655 clean-up 2019-01-09 00:25:45 -05:00
rusefi 60e747481f #35 first unit test with a mock! 2019-01-08 01:20:18 -05:00
rusefi 778c1968e7 #35 refactoring towards making class testable 2019-01-08 00:28:53 -05:00
rusefi 21c2695c93 #35 refactoring towards making class testable 2019-01-07 23:55:56 -05:00
rusefi c51af79731 #35 2019-01-07 23:23:50 -05:00
rusefi c900f849f7 fixing unit tests 2019-01-07 09:28:32 -05:00
Matthew Kennedy b037a6e0ca Implement common for controllers (#645)
* controller

* remove stopping thread

* move microsecond timer watchdog

* docs

* typo snuck in

* go back to the old way
2019-01-06 21:15:49 -05:00
rusefi 19c410387d making either Matt or compiler or both happier 2019-01-05 00:11:17 -05:00
rusefi d80c1f0b1e Saab CDM knock signal integration #647 2019-01-04 23:47:39 -05:00
rusefi fc8755fd5a #35 2019-01-04 19:20:32 -05:00
rusEfi 9edbf8218a #35 2019-01-04 17:18:43 -05:00
rusefi d7fefe5979 #35 progress 2019-01-04 09:24:23 -05:00
rusefi b767b4a251 #35 trying new kind of parameter magic 2019-01-04 00:51:32 -05:00
rusefi 4b11cef1d8 #35 2019-01-04 00:22:35 -05:00
rusefi e6ac26bf2b better conditional compilation 2019-01-04 00:16:08 -05:00
rusefi 7582f8d8cf better conditional compilation 2019-01-03 23:51:29 -05:00
rusefi 565d5c22db refactoring: extract method 2019-01-03 22:53:34 -05:00
rusefi 943bc8e577 cj125 refactoring 2019-01-03 08:26:42 -05:00
rusefi 19c3f7370f #617 unit test skeleton 2019-01-03 07:57:34 -05:00
rusefi 02f7380921 #617 2019-01-03 07:22:21 -05:00
rusefi ff6f653ece ion sense progress 2018-12-31 16:00:41 -05:00
rusefi e9fdc2b2ce funny progress 2018-12-30 19:13:28 -05:00
Fabien Poussin 72fe39ff32 Workarounds for GCC 8 (#637) 2018-12-27 09:40:40 -05:00
rusefi 9cb7595d61 reviving stm32f1 2018-12-26 22:17:51 -05:00
rusefi 1dcfb7e7f8 minor clean-up 2018-12-26 20:27:24 -05:00
rusefi 91c1533abe avoiding magic constant 2018-12-24 00:15:00 -05:00
rusefi 6d80a31586 docs 2018-12-23 23:29:19 -05:00
rusefi 81837cad7d EXTI refactoring 2018-12-18 23:50:29 -05:00
rusefi ba15d61d86 progress 2018-12-16 09:03:21 -05:00
rusefi 8b039da84a progress 2018-12-16 01:13:44 -05:00
rusefi 82a9c8fe91 docs 2018-12-12 23:36:36 -05:00
rusefi ae3ec77677 exti refactoring 2018-12-12 22:27:44 -05:00
rusefi 28d58c41eb exti clean-up 2018-12-12 18:02:00 -05:00
rusEfi c6a25f7286 docs 2018-12-09 16:50:22 -05:00
rusEfi 69b12f31b8 docs 2018-12-09 16:46:53 -05:00
rusefi 5e1bfa281b docs 2018-12-09 14:47:24 -05:00
rusefi 10d66db0da #630 2018-12-09 14:32:50 -05:00
rusefi d81185ac28 bringing std types together 2018-12-08 15:51:45 -05:00
rusEfi 3d3122c76c better? field name 2018-11-30 00:17:55 -05:00
andreika-git 23fea3c0c5 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