STM32F1 HAL Fixes (#10999)

- Enable / disable interrupts with `__iSeiRetVal` / `__iCliRetVal`
- Add STM32F1 to Travis CI tests
This commit is contained in:
Alexey Shvetsov 2018-06-12 04:00:56 +03:00 committed by Scott Lahteine
parent 43bdd0bfe4
commit 2ddba201c0
2 changed files with 16 additions and 6 deletions

View File

@ -472,3 +472,13 @@ script:
- update_defaults - update_defaults
- opt_enable VIKI2 SDSUPPORT - opt_enable VIKI2 SDSUPPORT
- build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM}
#############################
# STM32F1 default config test
#############################
- export TEST_PLATFORM="-e STM32F1"
- restore_configs
- opt_set MOTHERBOARD BOARD_STM32F1R
- update_defaults
- build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM}

View File

@ -40,7 +40,7 @@
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
#include <stdint.h> #include <stdint.h>
#include <libmaple/atomic.h>
#include <Arduino.h> #include <Arduino.h>
// -------------------------------------------------------------------------- // --------------------------------------------------------------------------
@ -119,11 +119,11 @@ void HAL_init();
#define analogInputToDigitalPin(p) (p) #define analogInputToDigitalPin(p) (p)
#endif #endif
#define CRITICAL_SECTION_START uint32_t primask = __get_PRIMASK(); __disable_irq() #define CRITICAL_SECTION_START uint32_t primask = __get_primask(); (void)__iCliRetVal()
#define CRITICAL_SECTION_END if (!primask) __enable_irq() #define CRITICAL_SECTION_END if (!primask) (void)__iSeiRetVal()
#define ISRS_ENABLED() (!__get_PRIMASK()) #define ISRS_ENABLED() (!__get_primask)
#define ENABLE_ISRS() __enable_irq() #define ENABLE_ISRS() ((void)__iSeiRetVal())
#define DISABLE_ISRS() __disable_irq() #define DISABLE_ISRS() ((void)__iCliRetVal())
// On AVR this is in math.h? // On AVR this is in math.h?
#define square(x) ((x)*(x)) #define square(x) ((x)*(x))