Samsung S3C2410A Microphone User Manual


 
S3C2410A MMC/SD/SDIO HOST CONTROLLER
19-3
SDI OPERATION
A serial clock line is synchronized with the five data lines for shifting and sampling of the information. Making the
appropriate bit settings to the SDIPRE register depends on the transmission frequency. You can modify its
frequency to adjust the baud rate data register value.
Programming Procedure (common)
SDI modules can be programmed, following these basic steps:
1. Set SDICON to configure properly with clock and interrupt.
2. Set SDIPRE to configure with a proper value.
3. Wait 74 SDCLK clock cycle in order to initialize the card.
CMD Path Programming
1. Write command argument (32-bit) to SDICARG register.
2. Determine command types and start command by setting SDICCON[8].
3. Confirm the end of SDI command operation when the specific flag of SDICSTA is set.
If the type of command is no-response, the flag is SDICSTA[11].
If the type of command is with-response, the flag is SDICSTA[9].
4. Clear the corresponding flag of the SDICSTA register by writing one to the flag bit.
DAT Path Programming
1. Write timeout period to SDIDTIMER register.
2. Write block size (block length) to SDIBSIZE register (normally 0x200 byte).
3. Determine the mode of block, wide bus, DMA, etc. and start data transfer with setting SDIDCON register.
4. Write Tx-data to SDIDAT register while Tx FIFO is available by checking SDIFSTA (available, half or empty)
register.
5. Read Rx-data from SDIDAT register while Rx FIFO is available by checking SDIFSTA (available, half or be last
data) register.
6. Confirm the end of SDI data operation when the flag of data transfer finish (SDIDSTA[4]) is set.
7. Clear the corresponding flag of SDIDSTA register by writing one to the flag bit.
NOTE
In case of long response command, CRC error can be wrong by H/W but a user can ignore this. It should be
detected by software if it is need to check.