cpu/stm32/gpio: do not clear pin on init
This commit is contained in:
parent
f0d0009820
commit
b08188efd2
@ -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;
|
||||
}
|
||||
|
||||
@ -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 */
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user