-
- Downloads
Add memory barrier, optimal interrupt on-off
Disabling an ISR on ARM has 3 instructions of latency. A Memory barrier is REQUIRED to ensure proper and predictable disabling. Memory barriers are expensive, so avoid disabling if already disabled (See https://mcuoneclipse.com/2015/10/16/nvic-disabling-interrupts-on-arm-cortex-m-and-the-need-for-a-memory-barrier-instruction/)
Showing
- Marlin/src/HAL/HAL_DUE/DebugMonitor_Due.cpp 5 additions, 0 deletionsMarlin/src/HAL/HAL_DUE/DebugMonitor_Due.cpp
- Marlin/src/HAL/HAL_DUE/HAL_timers_Due.cpp 10 additions, 0 deletionsMarlin/src/HAL/HAL_DUE/HAL_timers_Due.cpp
- Marlin/src/HAL/HAL_DUE/MarlinSerial_Due.cpp 10 additions, 0 deletionsMarlin/src/HAL/HAL_DUE/MarlinSerial_Due.cpp
- Marlin/src/HAL/HAL_DUE/watchdog_Due.cpp 5 additions, 0 deletionsMarlin/src/HAL/HAL_DUE/watchdog_Due.cpp
- Marlin/src/HAL/HAL_LPC1768/HAL_timers.h 5 additions, 0 deletionsMarlin/src/HAL/HAL_LPC1768/HAL_timers.h
- Marlin/src/HAL/HAL_LPC1768/LPC1768_PWM.cpp 21 additions, 0 deletionsMarlin/src/HAL/HAL_LPC1768/LPC1768_PWM.cpp
- Marlin/src/HAL/HAL_STM32F4/HAL_timers_STM32F4.cpp 5 additions, 0 deletionsMarlin/src/HAL/HAL_STM32F4/HAL_timers_STM32F4.cpp
- Marlin/src/HAL/HAL_STM32F7/HAL_timers_STM32F7.cpp 5 additions, 0 deletionsMarlin/src/HAL/HAL_STM32F7/HAL_timers_STM32F7.cpp
- Marlin/src/HAL/HAL_TEENSY35_36/HAL_timers_Teensy.cpp 21 additions, 0 deletionsMarlin/src/HAL/HAL_TEENSY35_36/HAL_timers_Teensy.cpp
- Marlin/src/feature/Max7219_Debug_LEDs.cpp 0 additions, 4 deletionsMarlin/src/feature/Max7219_Debug_LEDs.cpp
- Marlin/src/module/temperature.cpp 0 additions, 2 deletionsMarlin/src/module/temperature.cpp
Loading
Please register or sign in to comment