aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/ports/STM32/STM32L0xx
diff options
context:
space:
mode:
Diffstat (limited to 'os/hal/ports/STM32/STM32L0xx')
-rw-r--r--os/hal/ports/STM32/STM32L0xx/stm32_rcc.h24
1 files changed, 20 insertions, 4 deletions
diff --git a/os/hal/ports/STM32/STM32L0xx/stm32_rcc.h b/os/hal/ports/STM32/STM32L0xx/stm32_rcc.h
index 2e4462ae9..510ecb6dc 100644
--- a/os/hal/ports/STM32/STM32L0xx/stm32_rcc.h
+++ b/os/hal/ports/STM32/STM32L0xx/stm32_rcc.h
@@ -65,6 +65,7 @@
RCC->APB1SMENR |= (mask); \
else \
RCC->APB1SMENR &= ~(mask); \
+ (void)RCC->APB1SMENR; \
}
/**
@@ -76,6 +77,8 @@
*/
#define rccDisableAPB1(mask) { \
RCC->APB1ENR &= ~(mask); \
+ RCC->APB1SMENR &= ~(mask); \
+ (void)RCC->APB1SMENR; \
}
/**
@@ -87,7 +90,8 @@
*/
#define rccResetAPB1(mask) { \
RCC->APB1RSTR |= (mask); \
- RCC->APB1RSTR = 0; \
+ RCC->APB1RSTR &= ~(mask); \
+ (void)RCC->APB1RSTR; \
}
/**
@@ -104,6 +108,7 @@
RCC->APB2SMENR |= (mask); \
else \
RCC->APB2SMENR &= ~(mask); \
+ (void)RCC->APB2SMENR; \
}
/**
@@ -115,6 +120,8 @@
*/
#define rccDisableAPB2(mask) { \
RCC->APB2ENR &= ~(mask); \
+ RCC->APB2SMENR &= ~(mask); \
+ (void)RCC->APB2SMENR; \
}
/**
@@ -126,7 +133,8 @@
*/
#define rccResetAPB2(mask) { \
RCC->APB2RSTR |= (mask); \
- RCC->APB2RSTR = 0; \
+ RCC->APB2RSTR &= ~(mask); \
+ (void)RCC->APB2RSTR; \
}
/**
@@ -143,6 +151,7 @@
RCC->AHBSMENR |= (mask); \
else \
RCC->AHBSMENR &= ~(mask); \
+ (void)RCC->AHBSMENR; \
}
/**
@@ -154,6 +163,8 @@
*/
#define rccDisableAHB(mask) { \
RCC->AHBENR &= ~(mask); \
+ RCC->AHBSMENR &= ~(mask); \
+ (void)RCC->AHBSMENR; \
}
/**
@@ -165,7 +176,8 @@
*/
#define rccResetAHB(mask) { \
RCC->AHBRSTR |= (mask); \
- RCC->AHBRSTR = 0; \
+ RCC->AHBRSTR &= ~(mask); \
+ (void)RCC->AHBRSTR; \
}
/**
@@ -182,6 +194,7 @@
RCC->IOPSMENR |= (mask); \
else \
RCC->IOPSMENR &= ~(mask); \
+ (void)RCC->IOPSMENR; \
}
/**
@@ -193,6 +206,8 @@
*/
#define rccDisableIOP(mask) { \
RCC->IOPENR &= ~(mask); \
+ RCC->IOPSMENR &= ~(mask); \
+ (void)RCC->IOPSMENR; \
}
/**
@@ -204,7 +219,8 @@
*/
#define rccResetIOP(mask) { \
RCC->IOPRSTR |= (mask); \
- RCC->IOPRSTR = 0; \
+ RCC->IOPRSTR &= ~(mask); \
+ (void)RCC->IOPRSTR; \
}
/** @} */