clk
cmd
CMD0*
CMD0/reset
CMD1
RESP
CMD2
RESP
CMD3
RESP
S
010
E
512 Bytes
+ CRC
S
512 Bytes
+ CRC
S
E
dat0
Min. 74 clocks
required after
power is stable
to start boot
command.
50ms max
1 sec. max
* Refer to MMC Specification for correct argument.
E
Functional Description
18.3.13 Card Boot Mode Management
Boot Operation Mode allows the MMC/SD/SDIO host controller to read boot data from the connected
slave (MMC device) by keeping CMD line low after power-on (or sending CMD0 with specific argument)
before issuing CMD1. The data can be read from either boot area or user area, depending on register
setting. Power-on boot defines a way for the boot-code to be accessed by the MMC/SD/SDIO host
controller without an upper-level software driver, speeding the time it takes for a controller to access the
boot code.
The two possible ways to issue a boot command (either issuing a CMD0 or driving the CMD line to 0
during the whole boot phase) are described in the following sections.
18.3.13.1 Boot Mode Using CMD0
shows the timing diagram of a boot sequence using CMD0.
Figure 18-31. Boot Mode With CMD0
•
Configure:
–
MMCHS_CON[BOOT_CF0] to 0
–
MMCHS_CON[BOOT_ACK] (if an acknowledge will be received) to 0x1
–
MMCHS_BLK with the correct block length and number of block
–
MMCHS_SYSCTL[DTO] for timeout
If transfer is done in DDR mode also set MMCHS_CON[DDR] to 1.
•
Write register MMCHS_ARG with correct argument (see MMC Specification).
•
Write in MMCHS_CMD register to start CMD0 transfer with these bit fields set:
–
INDX set to 0x00
–
DP set to ‘1’
–
DDIR set to ‘1’
–
MSBS set to ‘1’
–
BCE set to ‘1’
•
If boot status is not received within the timing defined, the MMCHS_STAT[DTO] will be generated.
Otherwise the MMCHS_STAT[BSR] is arisen.
•
After the transfer is complete, the controller will generate the MMCHS_STAT[TC], and then the system
can emit another CMD0 (MMCHS_CON[BOOT_ACK] previously cleared to 0x0) to exit the card from
boot state.
•
If the system wants to abort the boot sequence it must issue a CMD0 with MMCHS_CMD[CMD_TYPE]
set to 0x3 (MMCHS_CON[BOOT_ACK] previously cleared to 0x0) during the transfer to abort transfer
and enable card to exit from boot state.
3380
Multimedia Card (MMC)
SPRUH73H – October 2011 – Revised April 2013
Copyright © 2011–2013, Texas Instruments Incorporated