Commit Graph

14 Commits

Author SHA1 Message Date
rusefi c1ab5ca585 smart gpio clean-up 2020-04-06 14:13:29 -04:00
rusefi 586eb9e6e3 code style: trying to get used to this syntax 2020-01-22 00:45:09 -05:00
dron0gus 406703b1b5 Gpio diagnostic (#1100)
* enums: add brain_pin_diag_e enum for pin diagnostic

* gpio core: add pin diagnostic call

* gpio: mc33810: add diagnostic support

* gpio: mc33972: add diagnostic support

* gpio: tle6240: add diagnostic

* pin_repository: output diagnostic data for gpio chips

* enums: kinetis: add brain_pin_diag_e enum for pin diagnostic
2020-01-12 10:20:10 -05:00
rusefi d6f7e778ac code style/type safety/docs/typos 2019-08-10 11:13:41 -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
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 ad50909f18 thank you Dron_gus fot the idea! 2019-04-13 19:55:18 -04: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 834fce0828 steps towards smarter gpio 2019-04-13 10:11:28 -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
andreika-git a79175f6ef 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 11e60e35bf we need TLE8888 driver #714 2019-03-25 15:08:32 -04:00
dron0gus 68884cc4ae 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