On Thu, Nov 19, 2020 at 06:38:21PM +0200, Vladimir Oltean wrote: > As the boot order in the kernel continues to change, sometimes it may > happen that the eSDHC controller mmc@2150000 (the one for eMMC) gets > probed before the one at mmc@2140000 (for external SD cards). The effect > is that the eMMC controller gets the /dev/mmcblk0 name, and the SD card > gets /dev/mmcblk1. > > Since the introduction of this SoC, that has never happened in practice, > even though it was never guaranteed in theory. Setting > "root=/dev/mmcblk0p2" in /proc/cmdline has always caused the kernel to > use the second partition from the SD card as the rootfs. > > The NXP development boards are typically shipped with either > - LSDK, which uses "root=UUID=", or > - OpenIL, which uses "root=/dev/mmcblkNp2" > > So for OpenIL, let's preserve that old behavior by adding some aliases > which create naming consistency (for LSDK it doesn't matter): > - the SD card controller uses /dev/mmcblk0 > - the eMMC controller uses /dev/mmcblk1 > > For the Kontron SL28 boards, Michael Walle says that they are shipped > with "root=UUID=" already, so the probing order doesn't matter, but it > is more natural to him for /dev/mmcblk0 to be the eMMC, so let's do it > the other way around there. > > The aliases are parsed by mmc_alloc_host() in drivers/mmc/core/host.c. > > Cc: Ashish Kumar <Ashish.Kumar@xxxxxxx> > Cc: Yangbo Lu <yangbo.lu@xxxxxxx> > Cc: Michael Walle <michael@xxxxxxxx> > Signed-off-by: Vladimir Oltean <vladimir.oltean@xxxxxxx> Applied, thanks.