We're developing a 6sl based board with eMMC. That will use MTFC16GAKAECN-2MM which is a eMMC 5.0 part.
I'm trying to make sure that my boot strapping settings and software changes are correct for that. Here's what I've worked out:
a) booting from eMMC on SD2
[7:6]=01 - boot from usdhc
5=1 - emmc
4=0 - normal boot. I chose normal boot rather than fast boot due to
concern that fast boot doesn't work.
[3:2]=11 - normal speed mode with fast boot acknowledge disabled. I'm
not 100% sure about this as I see conflicting comments in discussions
about this. https://community.nxp.com/thread/429618
1=0 - no power cycle. I'm unsure about this one. The spec says RST is
only for SD3 and SD4. But we know there is SD2_RST.
0=0 - clk through sd pad
[7:5]=010 - 8 bit. I chose 8-bit rather than 8-bit DDR due to concern
that 8-bit DDR won't work with emmc 5.0.
[4:3]=01 - uSDHC2 port
2=0 - 792 / 400 MHz
1=0 - 3.3V because MTFC16GAKAECN-2MM is 3.3V part.
b) software changes
I read EMMC 5.0 and EMMC 5.1 work on i.MX6 .
So my understanding is:
- changes to linux mmc driver drivers/mmc/core/mmc.c
u-boot no changes needed as long as using recent version.