Commit Graph

560 Commits

Author SHA1 Message Date
rusefillc cb3c070928 refactoring: type safety 2022-09-11 02:57:35 -04:00
rusefillc f9b849dd8f refactoring - reducing API between FW and Java 2022-09-11 02:16:47 -04:00
Andrey 8f14c44097 extracting prime_injection 2022-09-07 16:25:50 -04:00
Andrey 25b6d39802 os_access.h dead? 2022-09-07 15:56:45 -04:00
Andrey 6188703384 tear down Engine god object #4511
just trying different things
2022-09-05 04:09:59 -04:00
Andrey 331c54391a tear down Engine god object #4511
just trying different things
2022-09-05 03:07:03 -04:00
Andrey 6f09b0d9f9 tear down Engine god object #4511
just trying different things
2022-09-01 19:46:47 -04:00
Andrey bd0b93439f header 2022-09-01 11:21:00 -04:00
Matthew Kennedy 234909a91f remove some uses of EFI_ERROR_CODE (#4496)
* lua hooks

* findAngleMatch

* s

* s
2022-08-28 09:43:21 -04:00
Matthew Kennedy 6218edd040 allow logging multiple warnings at once (#4414)
* allow logging multiple warnings at once

* comment

* .Code

* Revert ".Code"

This reverts commit 2b986bd50035aeec051d11aafd83fdbc1694351c.

* add a better comparison operator instead of conversion

* dot code

* Revert "dot code"

This reverts commit 35f6ae1007c41e3b30ea129a324f33ab4205036d.

* force gcc-10 maybe?

* Revert "force gcc-10 maybe?"

This reverts commit 4ddf8bcefddd354ccdc1da682c5fff1e68d44273.

* vq

* dot code

* dead

* dot code

* return may be null

* static_vector; maybe cyclic_buffer is broken or wrong tool for the job?

* move static vector

* put cyclic buffer back how it was since we don't use it now
2022-08-17 01:12:25 -04:00
Matthew Kennedy eb442998dc misc fixes (#4411)
* fix warnings

* break to debugger in case of panic

* move the check

* s
2022-08-02 12:19:50 -04:00
rusefillc 133ab5618b FSIO is dead 2022-07-14 07:52:58 -04:00
Matthew Kennedy 16a39badff Error handling cleanup (#4332)
* dead code in stm32

* rusefi.cpp can have some noreturn

* handle lua panic

* unused error codes

* simplifications of error_handling.cpp

* comment

* put that back

* guard
2022-07-07 23:49:02 -04:00
Matthew Kennedy cbdfb7ac5c Write hard faults to backup ram, print on next boot (#4324)
* use backup ram, hard fault handler improvement

* wire it up

* upload elf

* s

* I guess I'll just use strncpy

* s

* what is it even complaining about?

* neat, we don't need a cast

* cypress and kinetis

* cleanup

* ci

* guard for tests
2022-07-07 15:14:31 -04:00
Matthew Kennedy 26e08632a1 more generous script table axis limits (#4309)
* script table axis limits

* curves too, why not

* s

* s

* table type
2022-07-01 06:51:47 -04:00
Matthew Kennedy c2f61dc95f Remove third trigger channel (#4226)
* remove third trigger

* clean up the honda mess

* there was nothing novel about this engine config

* include

* missed a few

* s

* x

* changelog

* don't set the third trigger input

* don't redefine the same thing 3 times

* only two inputs!

* test
2022-06-01 21:24:20 -04:00
Andrey 03662e48c4 Move curves out of engineConfiguration in order to reduce RAM usage #4127 2022-05-01 23:43:43 -04:00
rusefillc f9d222bce1 random progress & method rename 2022-04-16 17:35:59 -04:00
rusefillc 2d0546ee15 docs 2022-04-15 22:56:38 -04:00
Andrey 67c45a54bc random typo 2022-04-13 21:51:15 -04:00
Matthew Kennedy 5cf2b1bba5 warning cleanup (#4020) 2022-03-22 16:53:24 -04:00
Andrey 3b9b53e314 Mitsubishi 3A92 Support - 3 cylinder #4011 2022-03-19 17:57:35 -04:00
rusefillc 95168053f0 Explicit fw (#3968)
* explicit FW ID

* explicit FW ID

Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-02-27 00:49:47 -05:00
Matthew Kennedy 57525283ac Remove FSIO, byeeeeeeeee (#3865)
* vestigial config

* replace last functionality

* engine/board configs include

* files that didn't need to include this

* remove FSIO implementation

* stragglers

* random little bits

* s

* s

* ConfigDefinition

* jar

* s
2022-02-02 02:03:31 -05:00
Matthew Kennedy f82f4d08d6 Remove fsio part 2 (#3876)
* dead config stuff

* fsio state

* remove tests

* getEngineValue

* put part back
2022-02-02 00:49:44 -05:00
rusefillc a4cdf72734 Main relay shutdown rebase (#3880)
* aggregate

* main relay controller handles delayed shutoff

* main relay controller handles delayed shutdown

Co-authored-by: Matthew Kennedy <matthewkennedy@outlook.com>
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-02-02 00:45:11 -05:00
rusefillc 3be2fcaa80 Limp shutdown rebase (#3879)
* limp manager handles engine stop

* use timer

* dead relevant fsio

* this stuff needs its own ticket

* if we can comment out 'business logic' and tests do not fail it's not a great sign :(

Co-authored-by: Matthew Kennedy <matthewkennedy@outlook.com>
Co-authored-by: rusefillc <sdfsdfqsf2334234234>
2022-02-01 20:47:17 -05:00
Matthew Kennedy 28b6cce9d9 Remove fsio part 1 (#3871)
* dead includes

* move last logic out of fsio

* dead functions
2022-02-01 15:42:04 -05:00
Matthew Kennedy fe6cdf60e3 warnings fixes (#3851)
* unused things

* !!! actual bug !!!

* dead

* unused

* unused

* multi-bus lua RX was just broken

* make the compiler angry about it

* dead config

* alphax 2

* just call, no store

* compiler too angry
2022-01-31 18:37:42 -05:00
Andrey e05d710086 migrating to SensorType::Rpm API 2022-01-20 22:06:20 -05:00
Matthew Kennedy c92f6b832b ui & config for fuel/ign trim tables (#3704)
* ui & config

* bump flash version

* compaction

* s

* make things happy

* fsio too

* OK, well those defaults were insane

* b

* why are these defaults insane

* adjust cylinder offset ui

* s

* cleanup
2021-12-20 21:58:53 -05:00
Matthew Kennedy e076ea4a04 make macos happy (#3699)
* s

* explicitly include it because that's a good idea.
2021-12-19 09:58:49 -05:00
Matthew Kennedy 3d3bf5ea4b ignition controller detects rising edge on voltage (#3636)
* ignition controller detects rising edge on voltage

* update test

* comment

* ignore negative transients

* tweak

* test
2021-12-07 21:28:04 -05:00
Matthew Kennedy 565a94ea34 Remove the EFI_NO_CONFIG_WORKING_COPY option (#3630)
* no working copy

* oops
2021-11-29 16:44:45 -05:00
rusefillc 32f88596de Epic: Remove FSIO #2928 2021-11-28 17:47:16 -05:00
rusefi 09d26c7b0b live data for wastegate #3588 2021-11-24 15:07:48 -05:00
rusefillc 28c9d7555b live data for wastegate #3588 2021-11-24 12:59:57 -05:00
Matthew Kennedy 5274cffff3 main relay doesn't use fsio (#3580)
* fuel pump

* s

* call correct callback

* more dead

* test adjustment

* don't overflow

* don't need separate function

* java

* give it a name

* generated

* generated

* add to generate script

* import *

* this is so cheap we don't need a flag

* main relay

* plumbing

* dead fsio stuff

* test it

* by 100%, we mean 99.98%
2021-11-24 07:47:51 -05:00
Matthew Kennedy 9bd8a19564 oh my god we've had no asserts (#3595) 2021-11-22 17:52:03 -05:00
Scott Smith 467db16828 Move LuaThread to CCM, and shuffle a couple items out. (#3587)
Lua's stack probably doesn't need DMA.  Allows us to group more of our unused RAM together
in one place.
2021-11-21 20:35:03 -05:00
Scott Smith 9d61fb4cfd Drop SingleChannelStateSequence in favor of MultiChannelStateSequenceWithData (#3519)
* Drop SingleChannelStateSequence in favor of MultiChannelStateSequenceWithData

Most all the users were Multi* anyways, so just improve that:
1. Allow up to 8 waveforms to share one byte per timestamp.  It could be better but this is simple
   and gets most of the benefit.
2. Use a wrapper structure to handle reserving space for the arrays.  Makes the interface simpler
   and more rigid.  Also saves 4 bytes per Multi*.  Downside is access is now via -> and *,
   not . and (nothing).

Saves 224 bytes of BSS, 1832 bytes of RAM4/CCM, 952 bytes of TEXT, and 103 bytes of RODATA

* Instantiate a base_t to make debugging easier.
Also fixes crash on real firmware by using &m_base instead - LTO optimization issue?

* No magical templated StaticAlloc thingy.  Just virtual functions.
2021-11-21 04:56:07 -05:00
Matthew Kennedy e7956a53f6 fuel pump doesn't use fsio (#3576)
* fuel pump

* s

* call correct callback

* more dead

* test adjustment

* don't overflow

* don't need separate function

* java

* give it a name

* generated

* generated

* add to generate script

* import *

* this is so cheap we don't need a flag
2021-11-19 22:23:12 -05:00
Scott Smith 659cc68be1 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 f9f13f0bad Create a base class EngineModule for that contains various useful callbacks. (#3548)
* Create a base class EngineModule for that contains various useful callbacks.

This cleans up the API by not requiring the notifiers to know about who wants callbacks.  The only
place you need to update to add a module is in one place.

* Add mockability.

* Convert InjectorModel to a Mockable EngineModule
2021-11-17 20:13:19 +03:00
Scott Smith 80091498a6 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
Scott Smith 14578ddae7 Remove a bunch of macros from engine_ptr.h (#3562) 2021-11-17 10:01:39 +03:00
Matthew Kennedy 7296593448 remove engine pointer passing (#3556)
* some

* more

* more

* the last?!
2021-11-16 04:15:29 -05:00
Scott Smith 2cfc4af998 Start the process of using a global engine ptr for unit tests. (#3551)
* Start the process of using a global engine ptr for unit tests.

Passing around the engine, config, and persistent state wasn't buying anything.  Instead, use
EngineTestHelper(Base) to correctly set and clear the global variables.  Add a dummy check in
case some test tries to set them manually.

* Fix OSX build

* Adapt PR to recently added code.
2021-11-16 00:23:14 -05:00
Matthew Kennedy c1941f3a49 (void) -> () (#3550)
* static functions with (void)

* more

* Revert "more"

This reverts commit 246e53441f935451437df186ac92d7df26b62fb6.

* s

Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
2021-11-15 13:02:34 +01:00
Matthew Kennedy bd04dc8352 less macro, more c++ (#3549)
* less macro

* s
2021-11-15 12:44:40 +01:00