aboutsummaryrefslogtreecommitdiff
path: root/lib/stm32/f2
diff options
context:
space:
mode:
authorFergus Noble2012-01-25 22:13:56 -0800
committerUwe Hermann2012-02-06 23:08:06 +0100
commitac29b654a992a4855626fc0b92874d3847914f85 (patch)
tree8f998d562cdb7b9bb07524d343fefe3cfd435622 /lib/stm32/f2
parent5dce4172a8ce3c80b37f4b45706c3a6032e9c34d (diff)
Fix nasty bug with GPIO alternate function setup on F2/F4 (sorry guys).
Diffstat (limited to 'lib/stm32/f2')
-rw-r--r--lib/stm32/f2/gpio.c4
1 files changed, 2 insertions, 2 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);
}