09.12.2012 Views

RM0090: Reference manual - STMicroelectronics

RM0090: Reference manual - STMicroelectronics

RM0090: Reference manual - STMicroelectronics

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Secure digital input/output interface (SDIO) <strong>RM0090</strong><br />

28.6.2 SDIO read wait operation by stopping SDIO_CK<br />

If the SDIO card does not support the previous read wait method, the SDIO can perform a<br />

read wait by stopping SDIO_CK (SDIO_DCTRL is set just like in the method presented in<br />

Section 28.6.1, but SDIO_DCTRL[10] =1): DSPM stops the clock two SDIO_CK cycles after<br />

the end bit of the current received block and starts the clock again after the read wait start<br />

bit is set.<br />

As SDIO_CK is stopped, any command can be issued to the card. During a read/wait<br />

interval, the SDIO can detect SDIO interrupts on SDIO_D1.<br />

28.6.3 SDIO suspend/resume operation<br />

While sending data to the card, the SDIO can suspend the write operation. the<br />

SDIO_CMD[11] bit is set and indicates to the CPSM that the current command is a suspend<br />

command. The CPSM analyzes the response and when the ACK is received from the card<br />

(suspend accepted), it acknowledges the DPSM that goes Idle after receiving the CRC<br />

token of the current block.<br />

The hardware does not save the number of the remaining block to be sent to complete the<br />

suspended operation (resume).<br />

The write operation can be suspended by software, just by disabling the DPSM<br />

(SDIO_DCTRL[0] =0) when the ACK of the suspend command is received from the card.<br />

The DPSM enters then the Idle state.<br />

To suspend a read: the DPSM waits in the Wait_r state as the function to be suspended<br />

sends a complete packet just before stopping the data transaction. The application<br />

continues reading RxFIFO until the FIF0 is empty, and the DPSM goes Idle automatically.<br />

28.6.4 SDIO interrupts<br />

SDIO interrupts are detected on the SDIO_D1 line once the SDIO_DCTRL[11] bit is set.<br />

28.7 CE-ATA specific operations<br />

The following features are CE-ATA specific operations:<br />

● sending the command completion signal disable to the CE-ATA device<br />

● receiving the command completion signal from the CE-ATA device<br />

● signaling the completion of the CE-ATA command to the CPU, using the status bit<br />

and/or interrupt.<br />

The SDIO supports these operations only for the CE-ATA CMD61 command, that is, if<br />

SDIO_CMD[14] is set.<br />

28.7.1 Command completion signal disable<br />

Command completion signal disable is sent 8 bit cycles after the reception of a short<br />

response if the ‘enable CMD completion’ bit, SDIO_CMD[12], is not set and the ‘not interrupt<br />

Enable’ bit, SDIO_CMD[13], is set.<br />

The CPSM enters the Pend state, loading the command shift register with the disable<br />

sequence “00001” and, the command counter with 43. Eight cycles after, a trigger moves<br />

881/1416 Doc ID 018909 Rev 3

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!