AnsweredAssumed Answered

Mode 0 SPI under uClinux, with CLK low when inactive, BF518

Question asked by rsdio on Sep 14, 2015
Latest reply on Oct 19, 2015 by rsdio

I am running uClinux 3.10.10-ADI-2013R1 with several devices attached to the two available SPI ports. One of these is initialized with 5 MHz, 8-bit MSB in Mode 3, but I need to change it to Mode 0. Looking at the pins with a 'scope, I see that SPI CLK is High when inactive - which is appropriate for Mode 3. However, when I use the run-time ioctl() driver calls to change to Mode 0, the SPI CLK remains High when inactive. I need to get the pin functions to change when I used the ioctl() settings - is there any special "reset" function that would put the SPI in Mode 0?


The attached device is an ST Micro STM32F429 in bootloader operations, where the manufacturer specifies a maximum clock rate of 8 MHz, 8-bit MSB, and Mode 0 (defined as CPOL: Low, CPHA: Low). The Slave Select needs to be managed manually, not with every SPI word transaction.


What is the best way to get the BF518 talking to the STM32F429?