Merge pull request #2180 from kwagyeman/kwabena/fix_spi_cs_slave_mode

ports/stm32: Don't control CS pin in slave mode.
This commit is contained in:
Ibrahim Abdelkader 2024-03-25 19:52:54 +02:00 committed by GitHub
commit d8a42359e5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -435,16 +435,20 @@ void HAL_SPI_MspInit(SPI_HandleTypeDef *hspi) {
if (hspi->Init.NSS != SPI_NSS_SOFT) {
omv_gpio_config(spi_pins.ssel_pin, OMV_GPIO_MODE_ALT, OMV_GPIO_PULL_UP, OMV_GPIO_SPEED_HIGH, -1);
} else {
omv_gpio_config(spi_pins.ssel_pin, OMV_GPIO_MODE_OUTPUT, OMV_GPIO_PULL_UP, OMV_GPIO_SPEED_HIGH, -1);
#if defined(MCU_SERIES_H7)
if (hspi->Init.NSSPolarity == SPI_NSS_POLARITY_LOW) {
if (hspi->Init.Mode == SPI_MODE_MASTER) {
omv_gpio_config(spi_pins.ssel_pin, OMV_GPIO_MODE_OUTPUT, OMV_GPIO_PULL_UP, OMV_GPIO_SPEED_HIGH, -1);
#if defined(MCU_SERIES_H7)
if (hspi->Init.NSSPolarity == SPI_NSS_POLARITY_LOW) {
omv_gpio_write(spi_pins.ssel_pin, 1);
} else {
omv_gpio_write(spi_pins.ssel_pin, 0);
}
#else
omv_gpio_write(spi_pins.ssel_pin, 1);
#endif
} else {
omv_gpio_write(spi_pins.ssel_pin, 0);
omv_gpio_config(spi_pins.ssel_pin, OMV_GPIO_MODE_INPUT, OMV_GPIO_PULL_UP, OMV_GPIO_SPEED_HIGH, -1);
}
#else
omv_gpio_write(spi_pins.ssel_pin, 1);
#endif
}
}