When SPI Mode 0 or 2 is selected (i.e. ‘sqi_cr0’ register bit ‘sck_phase’ = 0) in Standard Motorola SPI (1-bit) mode (i.e. the sqi_tcr register bits ‘mode’ = ‘00’) and a transfer is started in half-duplex receive mode (i.e. sqi_tcr register bit ‘start_transfer’ bit is set to ‘1’ with ‘duplex’ sqi_tcr register bits = ‘01’), later transfers could fail.
The following error could occur then:
A later Standard Motorola SPI (1-bit) send-transfer (i.e. sqi_tcr register bit ‘start_transfer’ bit is set to ‘1’ with the sqi_tcr register bits ‘mode’ = ‘00’ and ‘duplex’ sqi_tcr register bits = ‘10’ or ‘11’) could transmit invalid data or even one word too much.
The error does not occur when the SQI module is disabled after the half-duplex receive transfer.
Operations and modes that are not touched by this problem are:
This problem can be worked around by one of the following methods: