This problem has prevented working releases for Linaro 2011.07 and 08 so
it would be great to have this fixed for 09.
I believe the problem here is that the mmc driver is not getting
initialized. If I understand things correctly, there are two possible
ways for this driver to get probed. It either needs to be a platform
driver CONFIG_MMC_SDHCI_PLTFM or an OpenFirmware driver
CONFIG_MMC_SDHCI_OF_ESDHC.
If I enable CONFIG_MMC_SDHCI_PLTFM I get a build error:
LD .tmp_vmlinux1
drivers/built-in.o:(.rodata+0xfa74): undefined reference to
`sdhci_tegra_dt_pdata'
make[2]: *** [.tmp_vmlinux1] Error 1
make[1]: *** [sub-make] Error 2
Which when I poke around seems to be caused by the fact that the platform case
really only works for tegra at the moment. Here is a snippet from
drivers/mmc/host/sdhci-pltfm.c:
#if defined(CONFIG_OF)
#include <linux/of_device.h>
static const struct of_device_id sdhci_dt_ids[] = {
{ .compatible = "nvidia,tegra20-sdhci", .data = &sdhci_tegra_dt_pdata },
{ }
};
MODULE_DEVICE_TABLE(platform, sdhci_dt_ids);
static const struct of_device_id *sdhci_get_of_device_id(struct platform_device
*pdev)
{
return of_match_device(sdhci_dt_ids, &pdev->dev);
}
#else
#define sdhci_dt_ids NULL
static inline struct of_device_id *sdhci_get_of_device_id(struct
platform_device *pdev)
{
return NULL;
}
#endif
For the OpenFirmware case case to work the device needs a node in the
device tree. However the device tree for imx51 is pretty much empty:
/*
* Copyright 2011 Linaro Ltd.
*
* The code contained herein is licensed under the GNU General Public
* License. You may obtain a copy of the GNU General Public License
* Version 2 or later at the following locations:
*
* http://www.opensource.org/licenses/gpl-license.html
* http://www.gnu.org/copyleft/gpl.html
*/
/dts-v1/;
/include/ "skeleton.dtsi"
/ {
model = "Freescale i.MX51 Babbage";
compatible = "fsl,mx51-babbage", "fsl,mx51";
memory {
reg = <0x90000000 0x20000000>;
};
};
** Also affects: linaro-landing-team-freescale
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Linaro
Release Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/839541
Title:
mx51evk can't find rootfs by UUID, LABEL or device node, then drop to
initramfs
Status in Linaro Freescale Landing Team Project:
New
Status in “linux-linaro-mx51” package in Ubuntu:
Confirmed
Bug description:
Use an old uboot to bootup, find UUID, LABEL, device node rootfs can't
be found.
Environment:
11.08 release
Log:
Begin: Running /scripts/init-premount ... done.
Begin: Mounting root file system ... [ 1.637092] hub 1-1:1.0: USB hub found
[ 1.699904] hub 1-1:1.0: 7 ports detected
Begin: Running /scripts/local-top ... done.
[ 4.935483] usb 1-1.6: new high speed USB device number 3 using mxc-ehci
Gave up waiting for root device. Common problems:
- Boot args (cat /proc/cmdline)
- Check rootdelay= (did the system wait long enough?)
- Check root= (did the system wait for the right device?)
- Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/disk/by-uuid/1146c852-2afa-443a-93cf-015a33ec3b10 does not
exist. Dropping to a shell!
BusyBox v1.17.1 (Ubuntu 1:1.17.1-10ubuntu1) built-in shell (ash)
Enter 'help' for a list of built-in commands.
(initramfs)
To manage notifications about this bug go to:
https://bugs.launchpad.net/linaro-landing-team-freescale/+bug/839541/+subscriptions
_______________________________________________
Mailing list: https://launchpad.net/~linaro-release
Post to : [email protected]
Unsubscribe : https://launchpad.net/~linaro-release
More help : https://help.launchpad.net/ListHelp