diff --git a/cpu/stm32_common/periph/gpio.c b/cpu/stm32_common/periph/gpio.c index b28f391cd8..4c47568f24 100644 --- a/cpu/stm32_common/periph/gpio.c +++ b/cpu/stm32_common/periph/gpio.c @@ -94,9 +94,8 @@ int gpio_init(gpio_t pin, gpio_mode_t mode) /* set output mode */ port->OTYPER &= ~(1 << pin_num); port->OTYPER |= (((mode >> 4) & 0x1) << pin_num); - /* finally set pin speed to maximum and reset output */ + /* set pin speed to maximum */ port->OSPEEDR |= (3 << (2 * pin_num)); - port->BSRR = (1 << (pin_num + 16)); return 0; } diff --git a/cpu/stm32f1/periph/gpio.c b/cpu/stm32f1/periph/gpio.c index 2293c05b3d..99c4cb0177 100644 --- a/cpu/stm32f1/periph/gpio.c +++ b/cpu/stm32f1/periph/gpio.c @@ -89,9 +89,6 @@ int gpio_init(gpio_t pin, gpio_mode_t mode) /* set pin mode */ port->CR[pin_num >> 3] &= ~(0xf << ((pin_num & 0x7) * 4)); port->CR[pin_num >> 3] |= ((mode & MODE_MASK) << ((pin_num & 0x7) * 4)); - /* set initial state of output register */ - port->BRR = (1 << pin_num); - port->BSRR = ((mode >> ODR_POS) << pin_num); return 0; /* all OK */ }