[PATCH v2] arm64: dts: ls1028a: make the eMMC and SD card controllers use fixed indices

Michael Walle michael at walle.cc
Thu Nov 19 13:12:37 EST 2020


Am 2020-11-19 17:38, schrieb Vladimir Oltean:
> As the boot order in the kernel continues to change, sometimes it may
> happen that the eSDHC controller mmc at 2150000 (the one for eMMC) gets
> probed before the one at mmc at 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 at nxp.com>
> Cc: Yangbo Lu <yangbo.lu at nxp.com>
> Cc: Michael Walle <michael at walle.cc>
> Signed-off-by: Vladimir Oltean <vladimir.oltean at nxp.com>

Acked-by: Michael Walle <michael at walle.cc> [for the sl28 boards]

-michael



More information about the linux-arm-kernel mailing list