Commit Graph

126 Commits

Author SHA1 Message Date
rusefillc ecac07f938 brave refactoring 2021-11-19 23:56:52 -05:00
Scott Smith 69d36dad6e
Final cleanup of ENGINE macros (#3567)
Fix some uses of ENGINE() not detected by regex due to parenthesis.
Remove now empty engine_ptr.h
Don't worry about EFI_* not being defined, the compiler defaults to 0 if they aren't.
2021-11-17 13:45:10 -05:00
Scott Smith 823d9a07e0
Programmatically replace ENGINE() and CONFIG() with engine-> etc (#3565)
git grep -l -w ENGINE | xargs sed -i -r "s/ENGINE\(([]a-zA-Z_0-9.[]+)\)/engine->\1/g"

git grep -l -w CONFIG | xargs sed -i -r "s/([^a-zA-Z_])CONFIG\(([]a-zA-Z_0-9.[]+)\)/\1engineConfiguration->\2/g"
2021-11-17 03:54:21 -05:00
Matthew Kennedy 8cdac4cac0
remove engine pointer passing (#3556)
* some

* more

* more

* the last?!
2021-11-16 04:15:29 -05:00
rusefillc 0813266ee1 trigger refactoring & docs 2021-11-14 15:35:11 -05:00
Scott Smith 713083baa5
Convert TriggerWaveform::wave to a pointer in preparation for code-defined sequences. (#3528)
It will eventually be class to support dynamic universal patterns in addition to ROM-based
tables.
2021-11-11 13:19:25 -05:00
Scott Smith d4c4db9a12
Move phaseCount into MultiChannelStateSequence (#3520)
We can them drop the field from a bunch of callers, simplifying the code.
2021-11-10 19:47:27 -05:00
rusefillc 1db9a02f1d Revert "Don't keep a separate MultiChannelStateSequence for the trigger emulator. (#3513)"
This reverts commit 280dfa94e7.
2021-11-09 20:42:23 -05:00
Scott Smith 280dfa94e7
Don't keep a separate MultiChannelStateSequence for the trigger emulator. (#3513)
All it wants is to use the main trigger state, so don't bother copying it.  Instead, change
PwmConfig to take a const pointer to a Multi.*Sequence, then make all the users adapt.  Worse
fallout is that SimplePwm now has its own Multi.*Sequence, but PwmConfig is downgraded to a
pointer, so that's only a net +4 bytes.  And we can make the overhead of Multi.*Sequence much lower
using embedded arrays, which only the caller can do since it knows the maximum size... (for another
day...)

Also remove SimplePwm's 2nd copy of SingleChannelStateSequence.  It served no purpose.

Saves 1992 bytes of BSS and 24 bytes of RAM4 (latter probably due to SimplePwm change)
2021-11-09 14:35:07 -05:00
Scott Smith 158f719d95
Save ~2800 bytes of RAM by not caching angle->trigger mapping (#3506)
Memory seems more valuable than CPU; use the O(lg n) lookup by angle.  A side effect is that it
seems to fix trigger lookup for the second phase of TRIGGERTYPE 53 544 TT_TRI _TACH 0.00
2021-11-09 07:03:27 -05:00
Andrey 9ac1575777 reducing complexity 2021-11-07 01:57:32 -05:00
rusefillc 5de6c2a270 typo 2021-11-07 01:51:05 -05:00
rusefillc 20784db801 refactoring - magic constant bad
cypress and kinetis both have this macro already
2021-11-07 01:34:16 -04:00
rusefillc 0af09f596c refactoring - magic constant bad
cypress and kinetis both have this macro already
2021-11-07 01:28:28 -04:00
rusefillc 656b8c3429 refactoring - magic constant bad 2021-11-07 00:03:16 -04:00
Andrey a6a969390f Honda K cam wheels #3405 2021-10-28 19:26:59 -04:00
Andrey de350131e6 Honda K cam wheels #3405 2021-10-28 11:40:31 -04:00
Matthew Kennedy c72bd07179
enable address sanitizer (#3217)
* enable asan

* lua

* this is dead and leaky

* leaky nissan

* fix pwm generator use-after-stack

* initializers

* prevent problems in case of invalid trigger shape

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-09-05 05:56:59 -04:00
Andrey 9345e5d2e0 NB2 trigger shape does not seem to match JimStim #2980
only first steps of unit test
2021-07-17 17:47:32 -04:00
Andrey f54b3cd1b2 refactoring 2021-07-17 00:46:39 -04:00
rusefillc 090725d273 reducing warnings 2021-07-13 14:50:10 -04:00
Andrey eaff083377 refactoring - explicit read method 2021-06-26 22:17:07 -04:00
Andrey a5eeb19c4d refactoring - explicit read method 2021-06-26 22:07:45 -04:00
Andrey 17f07b6b0e Override trigger gaps feature #2734 2021-05-23 19:51:00 -04:00
Matthew Kennedy a70f113b77
finish it off: remove scheduleMsg (#2575)
* finish it off

* one more logger ptr

* fwd decl

* Revert "one more logger ptr"

This reverts commit a21fb0087ddc748978d716db2710800cf26e437b.

* unused

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-21 15:33:40 -04:00
Matthew Kennedy c26987b96b
Destroy all shared logger (#2574)
* most of shared logger

* a few more

* one more

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-04-21 14:28:48 -04:00
rusefillc 7eb5816c33 GM/Daewoo 60/2/2/2 Trigger Pattern #2264 2021-02-01 23:44:14 -05:00
rusefi 10e980e293 Revert "Save more space in the angle cache (#2228)"
This reverts commit c7ca1b2e
2021-01-18 18:53:00 -05:00
Matthew Kennedy c7ca1b2ef4
Save more space in the angle cache (#2228)
* store event angles in a scaled field

* tests

* comment
2021-01-18 18:31:06 -05:00
Matthew Kennedy 6a1b9db952
save 1440 bytes (#2226) 2021-01-16 21:22:30 -05:00
Matthew Kennedy 60f70a3721
clean up some includes (#2227)
* cleanup

* make c happy
2021-01-16 09:45:45 -05:00
rusefillc e6bfd9a2ed trigger lifecycle 2020-12-09 12:19:25 -05:00
rusefillc be2a34a956 refactoring: magic constants 2020-12-04 16:24:19 -05:00
rusefillc 2524b7b8c2 6.1 Hemi V8 decoder #2010 2020-12-04 16:03:27 -05:00
rusefillc e730c2c0b1 6.1 Hemi V8 decoder #2010 2020-12-04 15:33:07 -05:00
rusefillc 9221a12d95 6.1 Hemi V8 decoder #2010 2020-12-04 15:22:53 -05:00
rusefillc 0ba97379fb all triggers should be documented way nicer #2001 2020-12-02 22:17:38 -05:00
Matthew Kennedy 5925a5f4bd
const ref-ify trigger (#1856)
* const ref-ify

* tests
2020-10-05 14:22:59 -04:00
rusefillc 348b387483 Trigger performance: variable gapTrackingLength #1851
cool change but looks to have made zero difference
2020-10-04 13:05:49 -04:00
rusefi e4386be937 VVT support for VAG trigger #883 2020-08-26 20:57:11 -04:00
rusefi b09091774a VVT support for VAG trigger #883 2020-08-25 12:45:18 -04:00
rusefi 540eef5e0d VVT support for VAG trigger #883 2020-08-25 00:59:07 -04:00
rusefi 5f5a16867a VVT support for VAG trigger #883
a bit of dead code?
2020-08-24 02:31:27 -04:00
rusefi b287b2f339 TT_HONDA_K_12_1 2020-04-19 14:23:01 -04:00
rusefi 114b34a583 better trigger definition API 2020-04-18 20:28:03 -04:00
Matthew Kennedy 986b80671b
warnings (#1169) 2020-03-03 08:37:02 -05:00
rusefi 53433c88a7 trigger shape constraint validation 2020-01-14 03:54:46 -05:00
rusefi 0bab01369a refactoring: no need to specify parameter manually 2020-01-12 10:43:02 -05:00
rusefi b83a5310be happy new year 2020-01-08 00:02:40 -05:00
rusefi c5cfd21a70 just a trivial massive rename: TriggerState > TriggerWaveform 2019-12-08 01:09:39 -05:00
rusefi 28a12d9d04 typo 2019-12-06 00:07:27 -05:00
rusefi 813b6aa6ce The Big Refactoring of 2019: folder structure #723 2019-12-04 01:11:10 -05:00
rusefi 6f50cae286 improving API? 2019-11-24 00:15:44 -05:00
rusefi f0c4817e1b 'triggerEventAngle' not really needed 2019-11-23 17:44:44 -05:00
rusefi ad7e36c228 refactoring 2019-11-20 01:35:08 -05:00
rusefi 7dfdfc6378 docs & code formatting 2019-11-19 18:17:03 -05:00
rusefi 1ab488e4b4 refactoring: better field name(s) 2019-10-08 01:03:57 -04:00
rusefi ca67249522 refactoring: better field name 2019-10-08 00:54:19 -04:00
rusefi 53231f7b49 refactoring: smarter C++ initialization 2019-10-08 00:27:49 -04:00
rusefi e0acec2a63 WTF is wrong with MRE_miata_na6 config? operationMode complexity #898
fatal error is the best I can come up with quickly
2019-08-08 22:57:22 -04:00
rusefi f25b1e5f2f WFT is wrong with MRE_miata_na6 config? operationMode complexity #898
more refactoring
2019-08-08 00:30:32 -04:00
rusefi 676035f950 refactoring: extracting method to facilitate debugging 2019-08-07 22:02:08 -04:00
Matthew Kennedy 95003e9a7b 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 a2c4b1bde1 typo 2019-05-10 22:43:03 -04:00
rusefi 1ec5baf57a refactoring: better method name 2019-05-02 18:05:33 -04:00
rusefi 541c445a2d defined(__DOXYGEN__) ? #748 2019-04-12 22:07:03 -04:00
rusefi bd2b992918 unifying_file_naming 2019-03-29 09:11:13 -04: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 5d735c4d6e Refactor Trigger System #635
better field names
2019-02-03 01:49:41 -05:00
rusefi 27da8ce328 Refactor Trigger System #635 2019-02-03 01:34:20 -05:00
rusefi 935a9fa706 Refactor Trigger System #635 2019-02-03 01:19:16 -05:00
rusefi d247c13283 Refactor Trigger System #635 2019-02-03 01:04:24 -05:00
rusefi 9a3441f11b #657 pulling global access down 2019-01-28 00:44:30 -05:00
rusefi 4ed5072f13 enjoying C++11 2019-01-14 00:20:50 -05:00
rusefi 6360719ed0 #635 2019-01-01 14:05:11 -05:00
rusefi f0344fd16c #625 big step - no more engine dependency from TriggerShape 2018-12-25 22:47:29 -05:00