author | Yonghui Yu <yonghui.yu@amlogic.com> | 2018-08-16 16:11:35 (GMT) |
---|---|---|
committer | Xindong Xu <xindong.xu@amlogic.com> | 2018-08-21 07:30:47 (GMT) |
commit | 501be3b485eb43c0a8fa8dd25f874da38c8764a0 (patch) | |
tree | c9c91e615e4b66ccd94d968269a9d79b24827d1e | |
parent | 967e759c677fb026991c12f1b79749906bf6a92f (diff) | |
download | common-ampere-20180821.zip common-ampere-20180821.tar.gz common-ampere-20180821.tar.bz2 |
init: wait emmc ready before root
PD#171658: init: wait emmc ready before root
A temporary ugly patch
Change-Id: I9a75fabf7460f92b0b9ae51992ac0d3c964798d2
Signed-off-by: Yonghui Yu <yonghui.yu@amlogic.com>
-rw-r--r-- | init/do_mounts.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/init/do_mounts.c b/init/do_mounts.c index 1902a1c8..9245c5b 100644 --- a/init/do_mounts.c +++ b/init/do_mounts.c @@ -549,13 +549,23 @@ void __init mount_root(void) void __init prepare_namespace(void) { int is_floppy; - +#ifdef CONFIG_AMLOGIC_MODIFY + dev_t res = 0; + int wait = 80; /* 8s max wait*/ +#endif /* CONFIG_AMLOGIC_MODIFY */ if (root_delay) { printk(KERN_INFO "Waiting %d sec before mounting root device...\n", root_delay); ssleep(root_delay); } - +#ifdef CONFIG_AMLOGIC_MODIFY + /* A ugly patch for system as root wait emmc ready. */ + while (!res && wait--) { + res = blk_lookup_devt("mmcblk0", 0); + msleep(100); + }; + pr_info("%s() wait %d\n", __func__, wait); +#endif /* CONFIG_AMLOGIC_MODIFY */ /* * wait for the known devices to complete their probing * |