[yocto] [PATCH] linux-yocto 3.0: fix beagleboard boot hang on mmc init due to preempt

Denys Dmytriyenko denis at denix.org
Mon Apr 16 17:18:19 PDT 2012


From: Denys Dmytriyenko <denys at ti.com>

The boot hangs with the message:
mmc0: error -110 whilst initialising SD card

The MMC driver has issues initializing when PREEMPT is enabled (either forced
or voluntary). Unplugging and then plugging the card back will reset the
driver and continue booting. Alternatively, disable preemption.

Signed-off-by: Denys Dmytriyenko <denys at ti.com>
---
 .../recipes-kernel/linux/files/no-preempt.cfg      |    1 +
 .../recipes-kernel/linux/files/no-preempt.scc      |    1 +
 .../recipes-kernel/linux/linux-yocto_3.0.bbappend  |    6 ++++++
 3 files changed, 8 insertions(+), 0 deletions(-)
 create mode 100644 meta-yocto/recipes-kernel/linux/files/no-preempt.cfg
 create mode 100644 meta-yocto/recipes-kernel/linux/files/no-preempt.scc

diff --git a/meta-yocto/recipes-kernel/linux/files/no-preempt.cfg b/meta-yocto/recipes-kernel/linux/files/no-preempt.cfg
new file mode 100644
index 0000000..0cbeb5a
--- /dev/null
+++ b/meta-yocto/recipes-kernel/linux/files/no-preempt.cfg
@@ -0,0 +1 @@
+CONFIG_PREEMPT_NONE=y
diff --git a/meta-yocto/recipes-kernel/linux/files/no-preempt.scc b/meta-yocto/recipes-kernel/linux/files/no-preempt.scc
new file mode 100644
index 0000000..1e75e15
--- /dev/null
+++ b/meta-yocto/recipes-kernel/linux/files/no-preempt.scc
@@ -0,0 +1 @@
+kconf non-hardware no-preempt.cfg
diff --git a/meta-yocto/recipes-kernel/linux/linux-yocto_3.0.bbappend b/meta-yocto/recipes-kernel/linux/linux-yocto_3.0.bbappend
index 944f601..d5460fd 100644
--- a/meta-yocto/recipes-kernel/linux/linux-yocto_3.0.bbappend
+++ b/meta-yocto/recipes-kernel/linux/linux-yocto_3.0.bbappend
@@ -1,3 +1,5 @@
+FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
+
 KMACHINE_atom-pc  = "yocto/standard/common-pc/atom-pc"
 KMACHINE_routerstationpro = "yocto/standard/routerstationpro"
 KMACHINE_mpc8315e-rdb = "yocto/standard/fsl-mpc8315e-rdb"
@@ -13,3 +15,7 @@ COMPATIBLE_MACHINE_mpc8315e-rdb = "mpc8315e-rdb"
 COMPATIBLE_MACHINE_routerstationpro = "routerstationpro"
 COMPATIBLE_MACHINE_beagleboard = "beagleboard"
 COMPATIBLE_MACHINE_atom-pc = "atom-pc"
+
+KERNEL_FEATURES_append_beagleboard = " no-preempt.scc"
+
+SRC_URI_append_beagleboard = " file://no-preempt.scc"
-- 
1.7.0.4




More information about the yocto mailing list