Detect card
or embedded
memory
MMC/ SD Booting
Success
Failed
Not detected
Get the booting file
Configure the card address
(RCA)
Detected
Initialize the MMC / SD driver
“Raw mode”
detected?
Get raw data
Yes
No
Booting file
found?
No
The booting file is searched
only in case of MMC/SD card
Functional Description
26.1.7.5.3 Booting Procedure
The high level flowchart of the eMMC / eSD and MMC/SD booting procedure is depicted in
The booting file is searched only in case of booting from a card. eMMC/eSD embedded memories only
support raw mode.
Figure 26-17. MMC/SD Booting
26.1.7.5.4 Initialization and Detection
The ROM Code initializes the memory device or card connected on MMC interface using the standard
High-Voltage range (3.3 V). If neither memory device nor card is detected then the ROM Code carries on
to the next booting device. The standard identification process and Relative Card Address (RCA)
assignment are used. However, the ROM Code assumes that only one memory or card is present on the
bus. This first sequence is done using the CMD signal which is common to SD and MMC devices.
MMC and SD standards detail this phase as initialization phase. Both standards differ in the first
commands involved: CMD1 and ACMD41. The ROM Code uses this difference in command set to
discriminate between MMC and SD devices: CMD1 is supported only by the MMC standard whereas
ACMD41 is only supported by SD standard. The ROM Code first sends a CMD1 to the device and gets a
response only if an MMC device is connected. If no response is received then ACMD41 (ACMD41 is
made out of CMD55 and ACMD41) is sent and a response is expected from an SD device. If no response
is received then it is assumed that no device is connected and the ROM Code exits the MMC/SD Booting
procedure with FAIL. This is detection procedure shown in
4130
Initialization
SPRUH73H – October 2011 – Revised April 2013
Copyright © 2011–2013, Texas Instruments Incorporated