I try to make imx28 spi work in duplex mode using pio method, and it's failed so far. Please let me know if anyone implements spi transfer in duplex mode. Thanks!
Had your issue got resolved? If yes, we are going to close the discussion in 3 days. If you still need help please feel
free to contact Freescale.
I will branch your question into an internal group and ask AE to reply.
Thank you for your patient,
Hello Cheng Shi,
Are you able get the i.MX28 works in half-duplex mode using PIO method?
According to reference manual, bit 25 in HW_SSP_CTRL0 register is the "Read Mode" bit of the SPI transfer. When this and DATA_XFER are set, the SSP will read data from the device. If this is not set, then the SSP will write data to the device. So, the SSP can only transfer data in either direction in a transcation. Exchange data (send out data from SSP read in data from device) is unlikely supported, even though the SPI protocol is supposing can do so.
I am curious to know if the correct data can be read from HW_SSP_DATA when "Read Mode" is 0 after the PIO transfer has complete.
The i.MX28 SPI controller can work only in Half-Duplex mode, not ever in Full-Duplex mode.
maybe it's not the question for this topic, but I still want know if all i.mx chips don't support full-duplex.
The Sigmatel SPI block (present in STMP37xx, then in i.MX23 and i.MX28) can only do Half-Duplex.
The Freescale CSPI and ECSPI block (present in the rest) can only do Full-Duplex.
thanks for the information.
it's very helpful.
That's right but you can combine the 2 SSP (MOSI from one in master, MISO from the other in slave with same clock from master to slave) to get a full duplex SPI. Got a customer that implement it for a NFC chip that was replying while being talked to but he didn't share the driver.
Had your issue got resolved? If yes, we are going to close the discussion in 3 days. If you still need help, please feel free to reply with an update to this discussion.
This discussion is closed since no activity. If you still need help, please feel free to reply with an update to this discussion, or create another discussion.
Retrieving data ...