From 06d6f3e0e64b49e8aab7ebe40896031b6c619172 Mon Sep 17 00:00:00 2001 From: Piotr Esden-Tempski Date: Wed, 14 Mar 2012 21:00:53 -0700 Subject: Made spi_init_master ignore CRC and SPE bits. --- lib/stm32/spi.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/stm32/spi.c b/lib/stm32/spi.c index af093ad..828e123 100644 --- a/lib/stm32/spi.c +++ b/lib/stm32/spi.c @@ -61,7 +61,10 @@ void spi_reset(u32 spi_peripheral) int spi_init_master(u32 spi, u32 br, u32 cpol, u32 cpha, u32 dff, u32 lsbfirst) { - u32 reg32 = 0; + u32 reg32 = SPI_CR1(spi); + + /* Reset all bits omitting SPE, CRCEN and CRCNEXT bits. */ + reg32 &= SPI_CR1_SPE | SPI_CR1_CRCEN | SPI_CR1_CRCNEXT; reg32 |= SPI_CR1_MSTR; /* Configure SPI as master. */ -- cgit v1.2.3