794
6437E–ATARM–23-Apr-13
SAM9M11
37.11 HSMCI Boot Operation Mode
In boot operation mode, the processor can read boot data from the slave (MMC device) by keep-
ing the CMD line low after power-on before issuing CMD1. The data can be read from either the
boot area or user area, depending on register setting.
37.11.1
Boot Procedure, Processor Mode
1.
Configure the HSMCI data bus width programming SDCBUS Field in the
HSMCI_SDCR register. The BOOT_BUS_WIDTH field located in the device Extended
CSD register must be set accordingly.
2.
Set the byte count to 512 bytes and the block count to the desired number of blocks,
writing BLKLEN and BCNT fields of the HSMCI_BLKR Register.
3.
Issue the Boot Operation Request command by writing to the HSMCI_CMDR register
with SPCMD field set to BOOTREQ, TRDIR set to READ and TRCMD set to “start data
transfer”.
4.
The BOOT_ACK field located in the HSMCI_CMDR register must be set to one, if the
BOOT_ACK field of the MMC device located in the Extended CSD register is set to one.
5.
Host processor can copy boot data sequentially as soon as the RXRDY flag is
asserted.
6.
When Data transfer is completed, host processor shall terminate the boot stream by
writing the HSMCI_CMDR register with SPCMD field set to BOOTEND.
37.11.2
Boot Procedure, DMA Mode
1.
Configure the HSMCI data bus width by programming SDCBUS Field in the
HSMCI_SDCR register. The BOOT_BUS_WIDTH field in the device Extended CSD
register must be set accordingly.
2.
Set the byte count to 512 bytes and the block count to the desired number of blocks by
writing BLKLEN and BCNT fields of the HSMCI_BLKR Register.
3.
Enable DMA transfer in the HSMCI_DMA register.
4.
Configure DMA controller, program the total amount of data to be transferred and
enable the relevant channel.
5.
Issue the Boot Operation Request command by writing to the HSMCI_CMDR register
with SPCND set to BOOTREQ, TRDIR set to READ and TRCMD set to “start data
transfer”.
6.
DMA controller copies the boot partition to the memory.
7.
When DMA transfer is completed, host processor shall terminate the boot stream by
writing the HSMCI_CMDR register with SPCMD field set to BOOTEND.
37.12 HSMCI Transfer Done Timings
37.12.1
Definition
The XFRDONE flag in the HSMCI_SR indicates exactly when the read or write sequence is
finished.
37.12.2
Read Access
During a read access, the XFRDONE flag behaves as shown in
Figure 37-11.