Q&A: Does current i.MX6 BSP support eMMC 4.5?

Document created by grantw on Dec 13, 2013
Version 1Show Document
  • View in full screen mode

Q: The i.MX 6Dual/6Quad Applications Processor Reference Manual Rev. D says that i.MX6 supports eMMC 4.5.  But does the current BSP(L3.0.35_12.08.00) support eMMC 4.5?  If not, does Freescale have it in their release plan?

A: i.MX 6Dual/6Quad RM and Datasheet declare that the uSDHC module is "fully compliant with the MMC command/response sets and Physical Layer as defined in the Multimedia Card System Specification, v4.2/4.3/4.4/4.41, including high-capacity (> 2 GB) HC MMC cards."  Therefore, if your eMMC4.5 card is backward-compatible with eMMC4.4, you can use it in eMMC4.4 mode to enable eMMC4.4 functionality and performance on the i.MX6 platform.

For example, the current i.MX6 Linux BSP (L3.0.35_4.1.0) has added code to interface with an eMMC4.5 card to operate as an eMMC4.4 card. See the following code in drivers/mmc/core/mmc.c:

        card->ext_csd.rev = ext_csd[EXT_CSD_REV];
        /* workaround: support emmc 4.5 cards to work at emmc 4.4 mode */
        if (card->ext_csd.rev > 6) {
                printk(KERN_ERR "%s: unrecognised EXT_CSD revision %d\n",
                        mmc_hostname(card->host), card->ext_csd.rev);
                err = -EINVAL;
                goto out;