aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/stm32/f2/gpio.c4
-rw-r--r--lib/stm32/f4/gpio.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/lib/stm32/f2/gpio.c b/lib/stm32/f2/gpio.c
index 9b730e1..835eb91 100644
--- a/lib/stm32/f2/gpio.c
+++ b/lib/stm32/f2/gpio.c
@@ -79,14 +79,14 @@ void gpio_set_af(u32 gpioport, u8 alt_func_num, u16 gpios)
for (i = 0; i < 8; i++) {
if (!((1 << i) & gpios))
continue;
- afrl &= GPIO_AFR_MASK(i);
+ afrl &= ~GPIO_AFR_MASK(i);
afrl |= GPIO_AFR(i, alt_func_num);
}
for (i = 8; i < 16; i++) {
if (!((1 << i) & gpios))
continue;
- afrl &= GPIO_AFR_MASK(i - 8);
+ afrl &= ~GPIO_AFR_MASK(i - 8);
afrh |= GPIO_AFR(i - 8, alt_func_num);
}
diff --git a/lib/stm32/f4/gpio.c b/lib/stm32/f4/gpio.c
index ecc66ee..e8b2dac 100644
--- a/lib/stm32/f4/gpio.c
+++ b/lib/stm32/f4/gpio.c
@@ -79,14 +79,14 @@ void gpio_set_af(u32 gpioport, u8 alt_func_num, u16 gpios)
for (i = 0; i < 8; i++) {
if (!((1 << i) & gpios))
continue;
- afrl &= GPIO_AFR_MASK(i);
+ afrl &= ~GPIO_AFR_MASK(i);
afrl |= GPIO_AFR(i, alt_func_num);
}
for (i = 8; i < 16; i++) {
if (!((1 << i) & gpios))
continue;
- afrl &= GPIO_AFR_MASK(i - 8);
+ afrl &= ~GPIO_AFR_MASK(i - 8);
afrh |= GPIO_AFR(i - 8, alt_func_num);
}