Commit Graph

76 Commits

Author SHA1 Message Date
rusefi bb217b01dd happy new year unification 2020-01-13 21:57:43 -05:00
rusefi 221ef7d9bb unit tests progress 2019-09-19 22:10:39 -04:00
andreika-git 970f67862c STM32-specific GPIO refactor (stm32_pins.cpp) (#817)
* stm32_pins.cpp

* PIN_USED & other
2019-06-02 16:48:38 -04:00
rusefi de571eee82 refactoring 2019-05-10 17:51:12 -04:00
dron0gus 04ee37548b 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 def0123503 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
rusefi 508e9d74e7 defined(__DOXYGEN__) ? #748 2019-04-12 20:52:51 -04:00
rusefi dcb3771b16 SPI-controlled outputs #697
better spot for this code
2019-04-10 18:23:31 -04:00
rusefi a829206947 fixing build - BOOTLOADER has it's special limitations 2019-04-10 09:02:32 -04:00
dron0gus 1b39480e64 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
dron0gus c6a1d0cbe0 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
rusefi d94b6d74e7 better ICU error handling 2019-04-07 18:25:46 -04:00
rusefi bd2b992918 unifying_file_naming 2019-03-29 09:11:13 -04:00
andreika-git c34d7cac48 More compatibility for ADC_inputs, etc. (#716)
* Move STM32-specific ADC pinouts to ports/stm32/stm32_common.cpp

* Move STM32-specific files to ports/*

* setAdcChannelOverrides()

* Add #ifdefs for adc_inputs (PWM_FREQ_*, PWM_PERIOD_*, ADC_*_DEVICE)

* addChannel(), removeChannel()

* fix tle6240 compilation

* Add stm32_common.cpp to Makefile

* More ports/stm32/* paths

* More ports/stm32/* paths

* More flexible GPIO ports

* Add #ifdef for GPTDEVICE

* EFI_BOARD_TEST and EFI_JOYSTICK

* EFI_TLE8888

* Fix HIP9011_logic compilation

* ADC_CHANNEL_SENSOR

* Move ioportid_t PORTS[] to ports/*

* Fix simulator
2019-03-28 22:46:10 -04:00
rusefi 9547c44ff1
688 brainpins (#694)
* GPIOF, GPIOG and GPIOH ports are not available #688
2019-02-22 22:10:41 -05:00
rusefi bb5775f1aa docs 2019-02-05 19:00:52 -05:00
rusefi e6ac26bf2b better conditional compilation 2019-01-04 00:16:08 -05:00
rusefi 81837cad7d EXTI refactoring 2018-12-18 23:50:29 -05:00
rusefi 28d58c41eb exti clean-up 2018-12-12 18:02:00 -05:00
andreika-git 23fea3c0c5 STM32 Nucleo144-F767ZI board: Initial support (#620)
* More EFI_ #ifdefs for config flexibility

* Even more config flexibility

* New firmware/config/stm32f7ems/* files

* New firmware/config/boards/NUCLEO_F767/* files

* New firmware/hw_layer/stm32f7/* files

* Fix for EFI_USB_SERIAL

* Adding #if defined(STM32F7XX)

* SPI flags changed in F7: SPI_CR1_DFF --> SPI_CR1_CRCL

* I2Cv2 config changed in F7

* More versatile CCM defines

* Makefiles

* Double #ifs cleanup

* docs
2018-11-16 07:40:06 -05:00
rusefi 1f90cf153d refactoring 2018-09-16 22:26:57 -04:00
rusefi 959a91ae4c unique error codes #598 2018-07-25 23:03:04 -04:00
rusefi 1d31067d19 happy new year 2018-01-20 20:55:31 -05:00
rusefi 3a0b7f66c5 better error handling 2017-07-28 14:32:51 -04:00
rusefi f53177f5d7 better error handling 2017-07-28 14:27:37 -04:00
Andrei ef4cb7d3c2 Add || DOXYGEN 2017-05-30 22:46:02 +03:00
Andrei 69d9483291 Add || DOXYGEN 2017-05-30 22:43:33 +03:00
Andrei 9deb9efbdc Fix HAL_USE_ICU=FALSE 2017-05-30 21:22:38 +03:00
rusefi f27f99e9cc better method name 2017-05-15 08:40:54 -04:00
rusefi 1f07d65fb1 refactoring: extracting method 2017-05-15 05:03:40 -04:00
rusEfi ed4098790c refactoring - reducing GPIO complexity 2017-04-21 20:12:11 -04:00
rusEfi cd5b6ec7d8 refactoring - reducing GPIO complexity 2017-04-21 19:59:05 -04:00
rusefi 66e14b52ae refactoring - reducing GPIO complexity 2017-04-21 17:23:21 -04:00
rusefi 17e05402ed refactoring - reducing GPIO complexity 2017-04-21 17:14:14 -04:00
rusefi e3affd2fa6 refactoring - reducing GPIO complexity 2017-04-21 17:10:29 -04:00
rusefi 7a0ebb3693 refactoring - reducing GPIO complexity 2017-04-21 16:30:14 -04:00
rusefi 65aa80c379 refactoring - reducing GPIO complexity 2017-04-21 15:28:47 -04:00
rusefi 070475f1ff refactoring - reducing GPIO complexity 2017-04-21 15:14:37 -04:00
rusefi 0992f1465a refactoring - reducing GPIO complexity 2017-04-21 13:36:51 -04:00
rusefi e201033eae refactoring - reducing complexity 2017-04-21 12:06:32 -04:00
rusefi ab0068fb97 refactoring - reducing complexity 2017-04-21 12:01:44 -04:00
rusefi 64fa965c5a #397 2017-04-21 11:44:15 -04:00
rusefi 63ec35b41d sdCardSpiDevice 2017-04-11 19:25:31 -04:00
rusEfi 54873240ce auto-sync 2017-01-05 21:12:06 -05:00
rusEfi 55e89f0f31 auto-sync 2017-01-03 06:05:22 -05:00
rusEfi 27b0cca4ef auto-sync 2016-12-27 11:01:26 -05:00
rusEfi 775950e919 auto-sync 2016-11-03 23:02:58 -04:00
rusEfi 065c8529c1 auto-sync 2016-10-10 16:02:39 -04:00
rusEfi 8a83839ca9 auto-sync 2016-10-10 15:02:10 -04:00
rusEfi e984e7a0c4 auto-sync 2016-10-10 14:02:17 -04:00