[FL-2392] FuriHal: refactor interrupts subsystem (#1066)
* FuriHal: refactor interrupts subsystem * Furi,FuriHal: gather all ISRs under interrupt API, improve crtitical section and cleanup garbage * FuriHal: mirgate ipcc and hsem to LL * Format Sources * FuriHal,BleGlue: move to new critical section * Format Sources * FuriHal: correct flash locking * FuriHal: replace critical section with interrupt disable in OS routine, minor fixex
This commit is contained in:
		| @@ -1,8 +1,6 @@ | ||||
| #include "input_i.h" | ||||
|  | ||||
| #define GPIO_Read(input_pin)                                                    \ | ||||
|     (HAL_GPIO_ReadPin((GPIO_TypeDef*)input_pin.pin->port, input_pin.pin->pin) ^ \ | ||||
|      input_pin.pin->inverted) | ||||
| #define GPIO_Read(input_pin) (hal_gpio_read(input_pin.pin->pin) ^ input_pin.pin->inverted) | ||||
|  | ||||
| static Input* input = NULL; | ||||
|  | ||||
| @@ -81,8 +79,7 @@ int32_t input_srv() { | ||||
|     input->pin_states = malloc(input_pins_count * sizeof(InputPinState)); | ||||
|  | ||||
|     for(size_t i = 0; i < input_pins_count; i++) { | ||||
|         GpioPin gpio = {(GPIO_TypeDef*)input_pins[i].port, (uint16_t)input_pins[i].pin}; | ||||
|         hal_gpio_add_int_callback(&gpio, input_isr, NULL); | ||||
|         hal_gpio_add_int_callback(input_pins[i].pin, input_isr, NULL); | ||||
|         input->pin_states[i].pin = &input_pins[i]; | ||||
|         input->pin_states[i].state = GPIO_Read(input->pin_states[i]); | ||||
|         input->pin_states[i].debounce = INPUT_DEBOUNCE_TICKS_HALF; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user