Commit Graph

1260 Commits

Author SHA1 Message Date
rusefi 2fe4989666 OK trying partial revert now 2019-11-12 21:05:51 -05:00
rusefi 630f706f39 I have no idea what's broken 2019-11-12 20:35:07 -05:00
rusefi 12746ca91d ops that's not what I mean 2019-11-12 19:58:14 -05:00
rusefi 73003f8b64 what's the probability of efi::size breaking build? 2019-11-12 19:40:33 -05:00
rusefi 1ad591742b refactoring: time to unify digital pin API
trying to fix build
2019-11-12 19:04:33 -05:00
rusefi 586c913592 refactoring: time to unify digital pin API 2019-11-12 01:08:45 -05:00
rusefi 59130de601 refactoring: time to unify digital pin API 2019-11-12 01:08:31 -05:00
rusefi 9cb18e89f7 refactoring: time to unify digital pin API 2019-11-12 00:56:51 -05:00
rusefi 4ba7842f52 refactoring: time to unify digital pin API 2019-11-12 00:25:10 -05:00
rusefi 8bbd06d165 refactoring: time to unify digital pin API 2019-11-11 23:32:09 -05:00
rusefi 3ff2b2271a refactoring: time to unify digital pin API 2019-11-11 23:04:27 -05:00
rusefi 80ef79eded this is not great :(
#639
#971
2019-11-11 22:19:35 -05:00
rusefi 52bb665365 fixing unit tests build 2019-11-11 21:45:15 -05:00
rusefi 950d8309b9 different take on #971 2019-11-11 21:26:09 -05:00
rusefi 99c5fcbd90 different take on #971 2019-11-11 21:25:40 -05:00
DonaldBecker f345faa9d7 Compile warning clean-ups.
Removed mistakenly-added README~

(cherry picked from commit 84b30c992ac77a1563f7449e45b9fa353612fba9)
2019-11-11 20:35:20 -05:00
rusefi a1f828162a evil manual cherry 2019-11-11 20:34:09 -05:00
rusefi 7c453fb199 Strange INJ1 signal behavior (when the frequency of scheduler's timer is less than 1MHz) fix #996 2019-11-10 23:54:08 -05:00
rusefi ca0984007d Strange INJ1 signal behavior (when the frequency of scheduler's timer is less than 1MHz) #996
new advanced debugging: hardware pins
2019-11-10 12:39:47 -05:00
rusefi 8898553955 consistency 2019-11-07 15:22:17 -05:00
rusefi 2530f31498 evil manual merge of https://github.com/DonaldBecker/rusefi 2019-11-06 20:01:53 -05:00
rusefi 17a2847424 evil manual merge of https://github.com/DonaldBecker/rusefi 2019-11-06 18:26:50 -05:00
rusefi 7c2f9a7c5d refactoring: removing unused parameter 2019-11-05 22:49:11 -05:00
Matthew Kennedy 19f09bb6f4 move to slow adc (#997) 2019-11-04 17:03:21 -05:00
andreika-git e20bdf4386 TLE6240 outputs fix (#994) 2019-11-01 15:49:55 -04:00
andreika-git 18395f1cb3 Kinetis: smarter SPI_CS control (#993) 2019-11-01 10:50:22 -04:00
andreika-git ef23be6893 Kinetis & TLE8888 compatibility & fixes... (#991)
* TLE8888: More compatibility & postTunerStudioState

* activeConfiguration & EFI_ACTIVE_CONFIGURATION_IN_FLASH fix

* Kinetis: jump_to_bootloader() impl.

* Kinetis: UART baudrate safety check

* Kinetis: OMG!..
2019-10-31 16:06:34 -04:00
rusefi db24091933 60/2 VW trigger has running issue on 19/10/19 snapshot fix #986 2019-10-30 20:51:20 -04:00
rusefi 2f38e78218 ADC sample time & rate #976 2019-10-19 08:01:28 -04:00
rusefi 26fc391ffe half-solution would not pass CI, have to merge full solution without real HW test
#975
2019-10-19 07:35:21 -04:00
rusefi 1602bdbebc steps towards #975 2019-10-18 19:45:32 -04:00
rusefi e73dd317b7 steps towards #975 2019-10-18 19:39:06 -04:00
rusefi eff84bcfeb steps towards #975 2019-10-18 18:54:32 -04:00
Matthew Kennedy eb418f764b trace all the things 2019-10-14 23:34:12 -07:00
Matthew Kennedy 97d848bb3e profile all the things 2019-10-13 13:14:08 -07:00
Matthew Kennedy 076b10fcb6 experiment 2019-10-11 17:43:21 -07:00
rusefi abfdfe6896 preparation for #961
more unified access to pre-calculated value
2019-10-10 08:25:58 -04:00
Matthew Kennedy 821ca6156f move tsOutputChannels to header (#970) 2019-10-08 21:02:51 -04:00
Matthew Kennedy 9471a23484 low hanging performance fruit (#969) 2019-10-08 20:44:59 -04:00
rusefi 15ae9b1580 fancy C++ s/NULL/nullptr/ 2019-10-08 01:26:35 -04:00
Matthew Kennedy 325a9e3fd1 Hmm, that didn't quite work right (#955)
* maybe that wasn't a good idea

* we don't need a copy because you can't clear the func after setting it

* no longer a template - move logic to cpp

* fix tests

* rename to avoid object collision
2019-09-25 07:26:56 -04: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 97dd2a57d6 HardFault related to auto r = convertFromInputValue(inputValue); #948 2019-09-23 02:02:42 -04:00
rusefi b28710c908 HardFault related to auto r = convertFromInputValue(inputValue); #948
wow, it's a miracle anything ever worked!
2019-09-23 01:55:23 -04:00
rusefi 1ff2a320ab ETB target is using integer values #945
refactoring - ADC mocking is a mess
2019-09-22 16:52:22 -04:00
rusefi e1b537935d ETB target is using integer values #945
refactoring - ADC mocking is a mess
2019-09-22 16:41:10 -04:00
rusefi c6bca8e77a ETB target is using integer values #945
refactoring - ADC mocking is a mess
2019-09-22 10:02:07 -04:00
rusefi 658dac889c ETB target is using integer values #945
refactoring - ADC mocking is a mess
2019-09-22 09:56:06 -04:00
rusEfi 4c39a207a9 s/NULL/nullptr/ 2019-09-22 08:22:35 -04:00
rusEfi 0fd1f27e1b ETB target is using integer values #945
first we will write a unit test
2019-09-22 00:36:13 -04:00
rusefi ee074b9fe7 fixing build 2019-09-21 15:33:13 -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 8e71ca1dc9 SD card: trying to automatically unmount and trying to re-mount 2019-09-21 12:41:17 -04:00
rusefi de03d283bd refactoring - better method name 2019-09-21 11:34:28 -04:00
rusefi 44818e5863 refactoring 2019-09-21 11:20:04 -04:00
rusefi 50850ca0c9 fixing bug from yesterday 2019-09-21 11:09:03 -04:00
rusefi 1789b8f2bf maybe logging performance improvement maybe not 2019-09-21 01:55:27 -04:00
rusefi 1ce255639e spelling 2019-09-21 01:49:46 -04:00
rusefi aa8d0eb640 configurable SD card logging speed 2019-09-20 20:18:22 -04:00
rusefi 0c9a8b58ca unit tests progress 2019-09-19 22:10:39 -04:00
rusefi 0952b84aad unit tests progress 2019-09-19 21:41:52 -04:00
rusefi 8fe19a2cfe pedal ADC should be faster #931 2019-09-13 19:54:28 -04:00
rusefi 12d9bc50b3 tle8888 reinit command 2019-09-05 10:30:27 -04:00
rusefi 280271ab1e TLE8888: NB2 solution + reset counter 2019-09-05 10:01:59 -04:00
dron0gus be13dc1185 TLE8888: track reset event by cleared OE bit in status register (#918)
As tle8888 suposed to be reset master and reset MCU there is no
flag showing POR reset. So try to poll OE bit.
2019-09-05 08:55:17 -04:00
rusefi d1f96682c2 Hall mode for TLE88888 - VRSConfig1 VRSM #915 2019-09-04 20:02:32 -04:00
rusefi 4737a2a57f Hall mode for TLE88888 - VRSConfig1 VRSM #915 2019-09-04 09:24:01 -04:00
rusefi df18a37788 Hall mode for TLE88888 - VRSConfig1 VRSM #915 2019-09-04 00:27:19 -04:00
rusefi ba9c96df91 Merge branch 'master' of https://github.com/rusefi/rusefi
# Conflicts:
#	java_console/models/src/com/rusefi/config/generated/Fields.java
2019-09-03 18:54:54 -04:00
rusefi 3fa5399ed7 EFI_CJ125_DIRECTLY_CONNECTED_UR should be a runtime parameter fix #914 2019-09-03 18:44:05 -04:00
rusEfi 34b1531a8b Live Data for hw VVT signals 2019-09-02 21:02:08 -04:00
rusEfi 81cd1df0cc refactoring: engine sniffer magic constants 2019-08-18 15:04:02 -04:00
rusefi cb488d28ce TLE8888 should be re-initialized every time we get +12 volts fix #901
fuel pump test passed, also longer start-up timeout is needed for reliable start
2019-08-16 23:21:03 -04:00
rusefi b3ccc4009c TLE8888 should be re-initialized every time we get +12 volts #901
moving SPI initialization to thread - still works on real hardware
2019-08-16 22:56:06 -04:00
rusefi 7de0eba798 TLE8888 should be re-initialized every time we get +12 volts #901
refactoring: extracting method
2019-08-16 22:41:19 -04:00
rusefi 890915524b refactoring 2019-08-16 22:01:32 -04:00
rusefi 8bdf4f30ae refactoring: ChibiOS now offers native 'lockAnyContext' pattern 2019-08-11 15:23:15 -04:00
rusefi 1e7a7841e9 low side channels on MRE #900
this kind of makes a bit more sense like this?
2019-08-10 15:53:03 -04:00
rusefi b5c47c13ad low side channels on MRE #900
this should NOT work but it works?

2019-08-10_15_19_19_770: EngineState: injection #1 @ ext:TLE8888.OUT22 led1
2019-08-10_15_19_19_771: EngineState: injection #2 @ PE10 led10
2019-08-10_15_19_19_773: EngineState: injection #3 @ PE12 led5
2019-08-10_15_19_19_774: EngineState: injection #4 @ PE14 led4
2019-08-10_15_19_19_775: EngineState: injection #5 @ ext:TLE8888.OUT24 led7
2019-08-10_15_19_19_775: EngineState: injection #6 @ PE11 led6
2019-08-10_15_19_19_777: EngineState: injection #7 @ PE9 led9
2019-08-10_15_19_19_777: EngineState: injection #8 @ PE8 led8
2019-08-10_15_19_19_779: EngineState: injection #9 @ PE13 led3
2019-08-10_15_19_19_780: EngineState: injection #10 @ ext:TLE8888.OUT23
 led2
2019-08-10 15:23:41 -04:00
rusefi a94eebe3ec low side channels on MRE #900
getting closer but still issues
2019-08-10 14:53:57 -04:00
rusefi 4fcecb6c26 low side channels on MRE #900
progress - now all 10 BLINK, but two are blinking together
2019-08-10 13:45:00 -04:00
rusefi 0f07ed5e2d low side channels on MRE #900
progress - at least something is blinking now
2019-08-10 13:25:08 -04:00
rusefi d6f7e778ac code style/type safety/docs/typos 2019-08-10 11:13:41 -04:00
rusefi 59463a515e MRE hangs up on bench fix #899 2019-08-10 00:53:16 -04:00
rusefi 217332bea1 default pinout nightmare 2019-08-07 00:36:54 -04:00
rusefi 5f51a783d2 fixing build? 2019-08-06 22:33:27 -04:00
rusEfi 9ddc9233ee NA6 & trigger 2019-08-06 22:17:18 -04:00
rusefi ef5a1447e9 CI instability: FATAL error: warn stream not initialized for 6039
also some refactoring
fix #798
2019-08-04 13:48:10 -04:00
rusefi ba52eba47a software jump to DFU #809
very very dark magic it is
2019-08-04 00:21:44 -04:00
rusEfi 8e50546a16 software jump to DFU #809
different assembly magic between F4 and F7
2019-08-03 22:38:59 -04:00
rusefi 0405719770 software jump to DFU #809
bugfix - looks like all the magic was not really happening
2019-08-03 20:45:15 -04:00
rusEfi 475377dcfc DFU command & refactoring 2019-08-03 19:58:38 -04:00
rusefi d57779b686 F7 nucleo does not work?
funny, it was about some very unused feature
2019-08-02 01:36:02 -04:00
rusefi 86bace22fe Reducing the change of no_event fatal error #894 2019-07-29 22:47:39 -04:00
rusefi bf6bbdc190 software jump to DFU #809 2019-07-28 12:33:47 -04:00
rusefi 3776539ed5 docs 2019-07-28 11:46:41 -04:00
rusefi 2da7b3186b helping build 2019-07-28 01:52:14 -04:00
rusEfi d5a8d86b52 build repair 2019-07-28 00:36:47 -04:00
rusefi 3423411cca docs 2019-07-28 00:02:34 -04:00
rusefi caf1150c24 random changes related to
software jump to DFU #809
2019-07-27 20:33:50 -04:00
rusefi b2f9b2cc59 refactoring 2019-07-27 20:29:49 -04:00
rusefi 2f3bb06079 refactoring 2019-07-27 20:18:20 -04:00
rusefi d79f8d2ced Ola 960 made some progress towards software jump to DFU #809 2019-07-27 19:51:54 -04:00
andreika-git bdc6915ae3 Kinetis files (pre-alpha) (#890) 2019-07-27 09:52:01 -04:00
960 e4999f764b Can message (#887)
* Can

* Can
2019-07-21 08:17:09 -04:00
rusEfi db8975f346 minor fix: NONE pin UI representation 2019-07-14 22:47:11 -04:00
rusefi 5b5b56f01b gcc 2019 q3 fails integration testing #886
kind of guessing potential problem
2019-07-14 15:47:08 -04:00
rusefi f52e66c394 gcc 2019 q3 fails integration testing #886
investigation
2019-07-14 15:22:02 -04:00
rusefi f48a24e71f having fun with async - reducing threads 2019-07-13 11:08:17 -04:00
rusefi 0e6509906b longer field names 2019-07-13 10:32:36 -04:00
rusefi c0d9eeed03 dead code & typo 2019-07-13 09:38:37 -04:00
rusefi 99af8c923d support multiple VVT sensors #885 2019-07-12 21:13:24 -04:00
rusefi 756dec106a support multiple VVT sensors #885
new fields & packing configuration. bumping configuration version
2019-07-12 14:24:45 -04:00
Matthew Kennedy 0b52f5b542 Template-ize bin/value length for interpolation (#878)
* update consumers

* tests

* whitespace

* format
2019-07-09 21:16:36 +03:00
rusefi 9d004635e4 More than one aux pid #866
renaming this class since we will probably have two different implementations for two different cases
2019-07-08 03:35:41 -04:00
rusefi 5d2afd2331 refactoring: better file name 2019-07-06 20:15:49 -04:00
Matthew Kennedy 30e73099da fix can (#872) 2019-07-06 04:54:02 -04:00
rusefi 932016078b refactoring: better placement for some ADC code 2019-07-05 20:34:41 -04:00
rusefi 89557373e9 order of includes consistency 2019-07-05 20:03:32 -04:00
rusefi e309e223aa Refactoring: OS access should be explicit #867 2019-07-04 03:57:21 -04:00
rusefi bad507558a Refactoring: OS access should be explicit #867 2019-07-04 03:25:35 -04:00
rusefi 777eb532dc Refactoring: OS access should be explicit #867 2019-07-03 21:48:04 -04:00
rusefi c21e4c2efa Refactoring: OS access should be explicit #867 2019-07-03 21:01:48 -04:00
rusefi 2164661274 undoing wrong fix & better fix for #805
also generator logging improvements
This reverts commit 96270758c9.
2019-06-30 14:28:47 -04:00
rusefi fca880a78e fixing F4 compilation 2019-06-23 10:34:49 -04:00
rusefi 9f0aaa39cf docs 2019-06-23 09:23:20 -04:00
Matthew Kennedy 90cc375f22 Fix F7 ADC #854 (#855)
* invalidate before reading ADC

* fix degree signs

* comment

* remove unecessary alignments, add comments
2019-06-23 09:21:12 -04:00
rusefi 0487076809 dead code 2019-06-22 06:57:11 -04:00
rusefi 96270758c9 "Calibrate TPS" broken in TS fix #805 2019-06-17 22:00:34 -04:00
rusefi 6dac13a2f8 docs 2019-06-15 19:46:50 -04:00
rusefi 1b4c5bc552 we need TLE8888 driver #714 2019-06-08 21:58:23 -04:00
rusefi 3b87cd9add tle8888 driver bug #803
undoing since this breaks start-up
2019-06-08 20:28:13 -04:00
rusefi 4944916064 we need TLE8888 driver #714
trying a sleep before first command
2019-06-08 18:31:56 -04:00
rusefi 123aae2613 we need TLE8888 driver #714
saving exact TLE8888 reponses
2019-06-08 16:13:24 -04:00
Matthew Kennedy 515ab03688 const, explicit, and override (#831)
* const, explicit, and override

* more const

* more const

* missed a spot
2019-06-08 09:51:36 -04:00
rusefi 7a99fab788 https://github.com/rusefi/rusefi/issues/803 2019-06-08 00:44:18 -04:00
rusefi f322d6f753 better status code 2019-06-07 19:14:55 -04:00
rusefi 156f066846 fixing CI 2019-06-06 22:35:08 -04:00
rusefi 44cc5d516d manual sync with https://github.com/NOx-z/rusefi/tree/mc33816_spi 2019-06-06 20:12:03 -04:00
rusefi 8456bd3c23 reviving tle8888 configuration 2019-06-05 22:32:30 -04:00
rusefi 24f5404524 minor cleanup 2019-06-05 22:04:31 -04:00
rusefi 7c5522b682 code style 2019-06-05 21:44:58 -04:00
rusefi ccc9a23deb code style 2019-06-05 21:39:12 -04:00
andreika-git 9da735654a fix Simulator (#818) 2019-06-02 17:26:35 -04:00
andreika-git e9c383ce7e STM32-specific GPIO refactor (stm32_pins.cpp) (#817)
* stm32_pins.cpp

* PIN_USED & other
2019-06-02 16:48:38 -04:00
rusefi c77ec2a4c9 docs 2019-05-30 17:43:40 -04:00
rusefi d9bad5894e typo 2019-05-28 18:19:51 -04:00
rusefi 8575e2f4d2 refactoring 2019-05-27 18:58:43 -04:00
rusefi e736578452 docs 2019-05-27 17:02:46 -04:00
rusefi dac10d23b0 MC33816 integraion #784 2019-05-25 17:18:16 -04:00
rusefi d2f6a37cba MC33816 integraion #784 2019-05-25 15:35:25 -04:00
rusefi 2901d9f902 nicer pin names for messages while same short names for engine sniffer 2019-05-15 04:26:41 -04:00
rusefi 8465d11df7 docs 2019-05-15 04:16:41 -04:00
rusefi 100f9ccf14 Missing ADC Pins for ADC3, PF port #785
refactoring
2019-05-14 19:04:49 -04:00
rusefi bde091a840 Missing ADC Pins for ADC3, PF port #785 2019-05-14 16:38:14 -04:00
rusefi 93c182a269 Trigger: warning code on normal engine start up #669 2019-05-11 10:46:17 -04:00
rusefi 759dfd989c USB pins are not registered in pin_repository fix #797 2019-05-10 19:06:28 -04:00
rusefi c985f6fc8f CI instability: FATAL error: warn stream not initialized for 6039 #798 2019-05-10 18:58:05 -04:00
rusefi b0e1ad12be docs 2019-05-10 18:51:48 -04:00
rusefi 81a79561b1 refactoring 2019-05-10 17:53:41 -04:00
rusefi 5e8b28be49 docs 2019-05-10 17:53:17 -04:00
rusefi d00eea0678 refactoring 2019-05-10 17:51:12 -04:00
rusefi 91c404b353 FEATURE REQ: aux temperature inputs #332 2019-05-09 19:39:21 -04:00
dron0gus 1b19a36b9e Smart gpios fixes 3 (#795)
* pin_repository: provide readable pin names in error cases

* io_pins: remove getBrain_pin_eExt

We have getBrain_pin_eExt in io_pins.cpp and hwPortname in
pin_repository.cpp.
First uses auto-generated enums, second one uses runtime data to
provide name of hw pin.
Removing first saves us about 2K of flash couse big auto-generated
switch with pin names no more used by anyone and gets optimized out.

* gpios: mc33972: CS pin is now requested at smart_gpios.pcc

* getSpiDevice: support SPI4

* smart_gpios.cpp: startSmartCsPins set CSs to inactive state

OutputPin:initPin initializes pin with false value. This is active
state for SPI Chip Selects. Set to 1 to deselect all chips.
2019-05-09 18:09:24 -04:00
rusefi 277cdfe301 docs 2019-05-08 10:58:43 -04:00
rusefi 8a90297160 refactoring: better method name 2019-05-07 19:32:08 -04:00
rusefi a6fc10910a Saab CDM knock signal integration #647 2019-05-05 18:53:34 -04:00
rusefi 8794e72cd2 Saab CDM knock signal integration #647 2019-05-05 17:21:36 -04:00
rusefi c5087257ec the future is now :) 2019-05-05 16:43:07 -04:00
rusefi 2c24571ddb dreams of two ETBs 2019-05-05 12:02:42 -04:00
andreika-git 20b6a17695 EFI_CONSOLE_UART_DEVICE, flash->hw_ports, Fix TLE6240 and misc.fixes (#793)
* rename EFI_CONSOLE_UART_DEVICE -> EFI_CONSOLE_SERIAL_DEVICE

* Impl. EFI_CONSOLE_UART_DEVICE

* Move flash source files to ports/stm32/ & hw_ports.mk

* Fix TLE6240

* Fix EFI_NO_CONFIG_WORKING_COPY

* EFI_PRINT_MESSAGES_TO_TERMINAL
2019-05-05 11:06:27 -04:00
960 520b003e16 Initial engine config, and cleanup. (#786)
* Add files via upload

Initial Engine Config

* Add files via upload

Cleanup

* Added Can coolant message for newer cars
2019-05-04 22:11:05 -04:00
rusefi e359ddbb25 MC33816 integraion #784
progress
2019-05-03 21:54:38 -04:00
rusefi 18e0ab0d97 MC33816 integraion #784
progress
2019-05-03 21:38:34 -04:00
rusEfi 71976df42f MC33816 integraion #784
bare bones skeleton
2019-05-03 21:13:25 -04:00
rusefi 7825c2d0b1 More CAN messages for VAG (#779) 2019-04-30 18:33:29 -04:00
rusefi ea86d987c8 PID - fix dTime usages #776 2019-04-25 21:31:33 -04:00
rusefi a37efe21a9 TPS is worth being FAST 2019-04-24 20:51:14 -04:00
rusefi 23e591a253 this change is probably breaking stuff, but some stuff is already broken. something is not right in too many places :( 2019-04-21 14:00:19 -04:00
dron0gus 12e14e5ff7 Smart gpio error path and minor fixes (#772)
* smart_gpio: fix error path

If chip driver disable in FW, disabled in settings or failed to init
we still need to ocupy its gpio range.

* smart_gpio: get tle6240 CS from config

* smart_gpio: fix debug messaging
2019-04-21 10:35:13 -04:00
rusefi 568a5a5fea fixing build? 2019-04-21 10:00:14 -04:00
dron0gus 83d1f254a1 Exti rework (#770)
* io_pins: implement efiSetPadUnused

When pin becomes unused it should be switched to safe mode and
disconnected from any IP block. Assume that gpio input mode with
pull-up is safe enough.

* trigger_input: switch triggers pins to safe mode on stop/reinit

* digital_input_exti: rework

* rename enableExti to efiExtiEnablePin
* add efiExtiDisablePin
* keep track of used exti channels

* trigger_input: use digital_input_exti functions
2019-04-21 09:28:49 -04:00
dron0gus 986a4d1748 tle8888: fix pin names array (#771) 2019-04-21 08:50:07 -04:00
rusefi 255a25974d refactoring - reducing duplication 2019-04-21 00:04:46 -04:00
rusefi d6cccf7615 USB and TLE8888 not working for F4 or F767 #764 2019-04-20 23:49:26 -04:00
rusefi 0b1620feb2 USB and TLE8888 not working for F4 or F767 #764 2019-04-20 23:39:06 -04:00
rusefi 4807f39435 fixing build? 2019-04-20 13:42:31 -04:00
rusefi fd4929e586 input mode control and other pin mode control #767
taking a step back with PAL trigger
2019-04-20 13:19:23 -04:00
rusefi 56511da9e1 input mode control and other pin mode control #767
TODO
2019-04-20 10:59:07 -04:00
rusefi 16c68ef5d1 docs 2019-04-20 10:21:45 -04:00
rusefi 1878fd4e34 USB and TLE8888 not working for F4 or F767 #764 2019-04-20 10:19:26 -04:00
rusefi c12be46861 USB and TLE8888 not working for F4 or F767 #764 2019-04-19 15:11:00 -04:00
rusefi 4ac6fb2216 USB and TLE8888 not working for F4 or F767 #764 2019-04-19 14:22:49 -04:00
rusefi a2bb2a2eb8 USB and TLE8888 not working for F4 or F767 #764 2019-04-19 14:12:13 -04:00
rusefi c55300df7d USB and TLE8888 not working for F4 or F767 #764 2019-04-19 13:01:06 -04:00
rusefi 476db0c857 USB and TLE8888 not working for F4 or F767 #764 2019-04-19 12:42:21 -04:00
rusefi 1bca671537 USB not working for F4 or F767 #764 2019-04-19 06:07:40 -04:00
dron0gus aaad44dfa1 Smart gpio fixes 2 (#765)
* gpio chips: relax error checking on _add

Do not halt whole system if wrong or nulled config is passed.
In current smart-gpio implementation this can happen and it is not
as error. Let smart-gpio handle this, kust reurn negative.

* tle8888: return back includes needed for debug

* smar-gpio: -Werror=missing-field-initializers fix
2019-04-19 01:42:24 -04:00
dron0gus e0796d673b Smart gpios fixes - now without cleanup of smart_gpio.cpp (#758)
* smart_gpio.cpp: check _add return values

And occupy gpiochip's pin range if disabled of failed. So base will
align with enum.

* TLE8888: cleanup, move high level code to smart_gpio.cpp

* smart_gpio.cpp: fix compilation when BOARD_EXT_GPIOCHIPS == 0

* board-subaru: fix compilation after latest smart_gpio updates

* tle8888: now we have all 28 pins supported
2019-04-16 09:23:24 -04:00
rusefi c4a0de35d5 baro? 2019-04-16 01:55:15 -04:00
andreika-git ca255a90c2 More config portability: TLE6240, Trigger_input, UART/Serial (#759)
* Add fields to UART/Serial configs

* trigger_input: can be both HAL_USE_PAL and HAL_USE_COMP

* tle6240 config: local temporary solution

* Fix for custom_engine::setFsio

* EFI_ACTIVE_CONFIGURATION_IN_FLASH
2019-04-15 08:40:12 -04:00
rusefi f6eb829fef cj125 and hip125 and else SPI broken with chibi18 migration #757 2019-04-14 18:09:58 -04:00
rusefi 7d976323a0 Merge remote-tracking branch 'origin/master' 2019-04-14 13:57:09 -04:00
rusefi 6bda683fba random cleanup 2019-04-14 13:52:27 -04:00
andreika-git 4e7715fab2 Add more portability to smart_gpio & SPI (#754) 2019-04-14 13:35:30 -04:00
rusefi b552b8c47d Merge remote-tracking branch 'origin/master' 2019-04-14 13:19:52 -04:00
rusefi dfe3fbe9dd random cleanup 2019-04-14 13:19:36 -04:00
rusefi d67f3dc6e1 we need TLE8888 driver #714 2019-04-14 08:20:25 -04:00
dron0gus 527cba3e35 TLE8888: remove hacks (#753) 2019-04-14 08:15:01 -04:00
rusefi d4d9fb2721 last part of this typo 2019-04-14 07:45:28 -04:00
rusefi 7a2fa62635 typo 2019-04-13 22:56:33 -04:00
rusEfi ad50909f18 thank you Dron_gus fot the idea! 2019-04-13 19:55:18 -04:00
dron0gus d0945b9449 Smart gpios (#752)
* efi_gpio: update cached pin value for ext gpios to

* tle6240: update and fix

* gpiochips_init should be called after all gpio chips are added

or we can lost calls to _init of chips

* smart_gpio.c: fix for tle6240 and mc33972

now config structs are not const. waste of ram...
2019-04-14 01:32:46 +02:00
rusEfi 8d587ed3c9 my hope is gone 2019-04-13 19:09:39 -04:00
rusEfi 7a96c42d86 talk to me? 2019-04-13 18:47:32 -04:00
rusEfi 45df0b0eba reducing risks 2019-04-13 18:26:29 -04:00
rusEfi 6cec2dcabf I am in macro hell :( 2019-04-13 17:34:26 -04:00
rusefi 45c8c194e1 we need TLE8888 driver #714 2019-04-13 12:43:19 -04:00
rusefi 334b5d1992 steps towards smarter gpio 2019-04-13 12:02:34 -04:00
rusefi fb1dd5a3ca steps towards smarter gpio 2019-04-13 11:22:40 -04:00
rusefi c53433801c 'pins' fix 2019-04-13 10:59:29 -04:00
rusefi 50c481924e steps towards smarter gpio 2019-04-13 10:58:52 -04:00
rusefi 834fce0828 steps towards smarter gpio 2019-04-13 10:11:28 -04:00
rusefi fe1f871a69 defined(__DOXYGEN__) ? #748 2019-04-12 20:52:51 -04:00
rusefi 8f4795d9fa smarter PWM API - need to pass arbitrary pointer 2019-04-12 20:15:18 -04:00
rusefi 54f83a431e smarter PWM API - need to pass arbitrary pointer 2019-04-12 20:11:27 -04:00
rusefi cad2297a72 smarter PWM API - need to pass arbitrary pointer 2019-04-12 20:06:09 -04:00
dron0gus 3c0d91e94b gpio-chips: TLE8888 add initial support of spi-driven outputs (#750) 2019-04-13 01:22:16 +02:00
rusefi 484e9ff7a4 fix or safer code? 2019-04-12 18:10:47 -04:00
rusefi 174fd2d0be progress 2019-04-12 17:39:49 -04:00
dron0gus e895593e67 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 da452aafa7 gpio chips (#744)
* tle8888: fix building for stm32f765

* gpio-chips: add mc33972 driver
2019-04-12 22:14:25 +02:00
rusefi d890830e93 fixing at least unit tests 2019-04-12 08:33:40 -04:00
dron0gus eee9a5c867 trigger input: add PAL support (#743) 2019-04-12 14:05:53 +02:00
rusefi 0a341e668d SPI-controlled outputs #697
better spot for this code
2019-04-10 18:23:31 -04:00
rusefi e002f141fa fixing build - BOOTLOADER has it's special limitations 2019-04-10 09:02:32 -04:00
dron0gus 551f2f5883 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 757832c91b The Big Refactoring of 2019: folder structure #723 2019-04-09 22:52:03 -04:00
rusefi 19917361a2 FATAL error loading TS project
fix #736
2019-04-09 22:15:55 -04:00
dron0gus 69df5d4b50 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 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 acf1216ab0 rusEfi settings editor is broken for one byte enums fix #709 2019-04-08 11:57:16 -04:00
rusefi 82028b29f8 better ICU error handling 2019-04-07 18:25:46 -04:00
rusefi 23d3ac0a84 we need TLE8888 driver #714 2019-04-07 08:35:04 -04:00
rusefi 3cc32a5c09 we need TLE8888 driver #714
F7 support
2019-04-06 22:04:35 -04:00
rusefi 33b0bee2cd we need TLE8888 driver #714 2019-04-06 13:11:46 -04:00
rusefi 131533cc13 we need TLE8888 driver #714 2019-04-06 12:26:37 -04:00
rusefi dd09ea7d90 we need TLE8888 driver #714
it works now! all SPI/CS pins in 'default' mode
2019-04-06 10:30:20 -04:00
rusefi 05c7baa7a1 CONFIG_RESET_SWITCH_PORT flexibility 2019-04-06 08:41:37 -04:00