Devicetree: Initialization order of mmc block devices?
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Thu Jul 19 04:07:32 EDT 2012
Le Wed, 18 Jul 2012 17:16:49 +0200,
Knut Wohlrab <knut.wohlrab at de.bosch.com> a écrit :
> No, because we have to know which will be the name of the root device
> _before_ we start the kernel. In our embedded device we start the kernel
> with a bootloader (U-Boot) and pass the root device with the kernel
> command line parameter "root=/dev/mmcblk0p1". That is not possible if we
> do not know what will be the name of the root device (mmcblk0 or
> mmcblk1) when kernel try to mount it.
You can always work around this by having a minimal initramfs inside
your kernel, which contains a basic userspace environment that will
just locate the right location of the real root filesystem, mount it,
and switch to it. But I agree that it's a bit painful to have such a
complexity just to identify which device contains the root filesystem.
I also believe the root=UUID=... thing does not work when root= is
parsed by the kernel, unless you have a GPT partition table or
something like that. With the old-style partition table, the UUIDs are
inside the filesystems, and the kernel does not know about them. At
least that was my understanding of the matter about a year ago when I
looked into this.
Best regards,
Thomas
--
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
More information about the linux-arm-kernel
mailing list