UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Visitor gunnerone
Visitor
253 Views
Registered: ‎03-12-2013

XSpiPs Force slave select

I'm trying to get the XSpiPs interface to where I can manually control the slave select line.  (I need this so I can get a 3 wire SPI device working - send a byte, change the mosi/miso pin direction and read a byte).

In xspips.h it says

* The <b>SPI Force Slave Select option</b> is used to enable manual control of
* the signals SPI_SS_outN.
* 0: The SPI_SS_outN signals are controlled by the SPI controller during
* transfers. (Default)
* 1: The SPI_SS_outN signal indicated by the Slave Select Control bit is
* forced active (driven low) regardless of any transfers in progress.
*
* NOTE: The driver will handle setting and clearing the Slave Select when
* the user sets the "FORCE_SSELECT_OPTION". Using this option will allow the
* SPI clock to be set to a faster speed. If the SPI clock is too fast, the
* processor cannot empty and refill the FIFOs before the TX FIFO is empty
* When the SPI hardware is controlling the Slave Select signals, this
* will cause slave to be de-selected and terminate the transfer.
*

If I'm understanding the second part of this correctly, the two options are 1) let the software driver (xspips.c) control SS, or 2) let the hardware control SS.  If this is true then this comment is wrong and very misleading.

* 1: The SPI_SS_outN signal indicated by the Slave Select Control bit is
* forced active (driven low) regardless of any transfers in progress.

Am I understanding the Force Slave Select option correctly?

Tags (2)
0 Kudos