Better than reaching into members that should be private. I didn't feel like actually making
them private though, as one user validates pinStates isn't NULL.
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)
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)
* scale map Y axis
* allow different row/col types
* scaled channel detector
* interpolation
* looks like this actually works
* tests, no manual scaling
* comment
* more unification
* hip stub
* comment
* guard
* channel idx
* include
* hip
* move in to engine
* hip9011
* dead stuff
* dead
* fsio
* lcd
* more dead
* d
* dead code
* all your ram are belong to me
* turn off gpiochips we don't need
* save
* save by using the same file handle
* smaller stack ok
* these can be on the stack
* this is closer
* what about ccm?
* probing available
* now probe ccm
* ccm
* put stuff in ccm
* fsio
* memory usage
* memory
* big pch energy
* put back ramdisk stub
* tests are happy
* h743 nucleo
* kinetis
* I love deleting code!
* make stepper happy
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* new impl
* remove fsio
* inject "is ac active" to fan
* include the correct code
* include
* test
* more AC features
* AC switch vs. actual AC indicators
* include
* duh
* remove simple cases
* more simple
* serial
* s
* more
* try memory
* easy
* mmc acc
* that's how much memory
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* start cleaning
* disabled feature means don't print that it's disabled
* cli
* usages
* printMsg -> scheduleMsg
* this is alllll dead now
* no crlf please
* all hope is lost if you manage to hit this line
* tests
* tests
* ok we did actually need that part
* sim
* d
* kinetis
* it did ifdef, not if
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* ChibiOS: add support for STM32F765
This chip is used on Subaru EG33 p'n'p RusEFI board from Dron_Gus
* drivers: gpio: mc33810: commulative update
- use BIT macro
- fix wake-up method
- fix order of arguments in _add function
* port: stm32f4/7: detectCanDevice check for enabled interfaces only
* ADC: fix internal array size
internalAdcIndexByHardwareIndex should be EFI_ADC_LAST_CHANNEL size
couse adc_channel_e is used as index
* status LEDs: support status LEDs that driven by low level
* gpios: isBrainPinValid helper
* LCD HD44780: do not touch pins if DM_NONE or invalid gpio
* Fix isEnabled checks for GPS and Joystick
* LCD HD44780: writePad use this method wider
* hook up map
* check for init
* switch some consumers
* that's the rest of them
* test
* tests
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* move rev limit to limp manager
* call fatal error
* include order
* fix bug
* tests
* comment
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* FSIO error signaling
- wrong keyword in FSIO now shows up as nice TS error message
- added f7 debug option for vsCode as well.
* Keep unit_test happy
* switch pump fsio logic
* value collision
* fuel pump in tests
* mock time since trigger
* test fp
* init pin in test
* fix gpio outputs in tests
* comment
Co-authored-by: Matthew Kennedy <makenne@microsoft.com>
* 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
* two throttles one thread
* look at all this RAM!
* add enum
* switch from index to function
* test fixup
* improve init logic
* remove old vw idle mode bit
* add config
* better spot for it
* use config init values
* handle null controller array
* fatal error testability
* test new init config
* defaults
* fix for default config