Alternative Boot Operation for eMMC Card Devices
The following figure illustrates the sequence of steps required to perform the alternative boot operation for
eMMC card devices. The detailed steps are described following the flow chart.
Figure 11-15: Flow for eMMC Alternative Boot Operation
†
Start
Step 1
Step 2 to Step 12
Step 13
Step 15
expect_boot_ack = 1
expect_boot_ack = 0
Step 14.a
Step 14.b
Step 14.e
No Start
Pattern
Start Pattern & No
Boot Data Received
Start Pattern &
Boot Data Received
Step 16.a
Step 16.b
No Boot Data
Received
Boot Data
Received
Stop
Step 14.h
Successfully
Received Boot
Data (14.d)
NAC Timeout
Successfully
Received Boot
Data (16.d)
1. The software driver checks:
†
• If the eMMC card device supports alternative boot operation (the BOOT_INFO bit is set to 1 in the
eMMC card).
†
• The BOOT_SIZE_MULT and BOOT_BUS_WIDTH values in the card device to use during the boot
process.
†
2. The software sets the following bits:
†
• Sets masks for interrupts by resetting the appropriate bits to 0 in the
intmask
register.
†
• Sets the
int_enable
bit of the
ctrl
register to 1. Other bits in the
ctrl
register must be set to
0.
†
Altera recommends writing 0xFFFFFFFF to the
rintsts
register and
idsts
register to
clear any pending interrupts before setting the
int_enable
bit. For internal DMA controller
mode, the software driver needs to unmask all the relevant fields in the
idinten
register.
†
Note:
3. If the software driver needs to use the internal DMA controller to transfer the boot data received, it must
perform the following actions:
†
Altera Corporation
SD/MMC Controller
11-67
Alternative Boot Operation for eMMC Card Devices
cv_54011
2013.12.30