Deserial Serial Peripheral Interface (DSPI)MPC5606S Microcontroller Reference Manual, Rev. 7312 Freescale SemiconductorDSPIx_PUSHR, refer to Section 11.7.2.6, DSPI PUSH TX FIFO Register (DSPIx_PUSHR). TX FIFOentries can only be removed from the TX FIFO by being shifted out or by flushing the TX FIFO.The TX FIFO counter field (TXCTR) in the DSPI Status Register (DSPIx_SR) indicates the number ofvalid entries in the TX FIFO. The TXCTR is updated every time the DSPI _PUSHR is written or SPI datais transferred into the shift register from the TX FIFO.Refer to Section 11.7.2.4, DSPI Status Register (DSPIx_SR), for more information on DSPIx_SR.The TXNXTPTR field indicates which TX FIFO entry is transmitted during the next transfer. TheTXNXTPTR contains the positive offset from DSPIx_TXFR0 in number of 32-bit registers. For example,TXNXTPTR equal to two means that the DSPIx_TXFR2 contains the SPI data and command for the nexttransfer. The TXNXTPTR field is incremented every time SPI data is transferred from the TX FIFO to theshift register.11.8.3.4.1 Filling the TX FIFOHost software or the eDMA controller can add (push) entries to the TX FIFO by writing to theDSPIx_PUSHR. When the TX FIFO is not full, the TX FIFO fill flag (TFFF) in the DSPIx_SR is set. TheTFFF bit is cleared when the TX FIFO is full and the eDMA controller indicates that a write toDSPIx_PUSHR is complete, or alternatively by host software writing a 1 to the TFFF in the DSPIx_SR.The TFFF can generate a DMA request or an interrupt request.Refer to Section 11.8.7.2, Transmit FIFO fill interrupt or DMA request (TFFF), for details.The DSPI ignores attempts to push data to a full TX FIFO; that is, the state of the TX FIFO is unchanged.No error condition is indicated.11.8.3.4.2 Draining the TX FIFOThe TX FIFO entries are removed (drained) by shifting SPI data out through the shift register. Entries aretransferred from the TX FIFO to the shift register and shifted out as long as there are valid entries in theTX FIFO. Every time an entry is transferred from the TX FIFO to the shift register, the TX FIFO counteris decremented by one. At the end of a transfer, the TCF bit in the DSPIx_SR is set to indicate thecompletion of a transfer. The TX FIFO is flushed by writing a 1 to the CLR_TXF bit in DSPIx_MCR.If an external SPI bus master initiates a transfer with a DSPI slave while the slave’s DSPI TX FIFO isempty, the transmit FIFO underflow flag (TFUF) in the slave’s DSPIx_SR is set.Refer to Section 11.8.7.4, Transmit FIFO underflow interrupt request (TFUF), for details.11.8.3.5 Receive First In First Out (RX FIFO) buffering mechanismThe RX FIFO functions as a buffer for data received on the SIN pin. The RX FIFO holds four receivedSPI data frames. SPI data is added to the RX FIFO at the completion of a transfer when the received datain the shift register is transferred into the RX FIFO. SPI data is removed (popped) from the RX FIFO byreading the DSPIx_POPR register. RX FIFO entries can only be removed from the RX FIFO by readingthe DSPIx_POPR or by flushing the RX FIFO.