[PATCH 4/4] OMAP3: beagle: make beagleboard boot with CONFIG_OMAP_MUX

Mike Rapoport mike at compulab.co.il
Thu Apr 29 13:08:29 BST 2010


Enabling CONFIG_OMAP_MUX prevents boot on BeaglBoard.
Provide temporaty fix until the problem is properly resolved.

Signed-off-by: Mike Rapoport <mike at compulab.co.il>
---
 arch/arm/mach-omap2/board-omap3beagle.c |    8 ++++++++
 arch/arm/mach-omap2/mux.c               |    3 +++
 2 files changed, 11 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c
index 8e936e1..dd3ed80 100644
--- a/arch/arm/mach-omap2/board-omap3beagle.c
+++ b/arch/arm/mach-omap2/board-omap3beagle.c
@@ -46,6 +46,14 @@
 #include <plat/timer-gp.h>
 #include <plat/display.h>
 
+/*
+  FIXME: ugly fix to enable beagleboard boot with CONFIG_OMAP_MUX enabled.
+  undefining it here makes calls to omap_mux_* noops
+*/
+#ifdef CONFIG_OMAP_MUX
+#undef CONFIG_OMAP_MUX
+#endif
+
 #include "mux.h"
 #include "mmc-twl4030.h"
 
diff --git a/arch/arm/mach-omap2/mux.c b/arch/arm/mach-omap2/mux.c
index 5fef73f..5e7978f 100644
--- a/arch/arm/mach-omap2/mux.c
+++ b/arch/arm/mach-omap2/mux.c
@@ -69,6 +69,9 @@ void omap_mux_write(u16 val, u16 reg)
 
 void omap_mux_write_array(struct omap_board_mux *board_mux)
 {
+	if (!board_mux)
+		return;
+
 	while (board_mux->reg_offset !=  OMAP_MUX_TERMINATOR) {
 		omap_mux_write(board_mux->value, board_mux->reg_offset);
 		board_mux++;
-- 
1.6.6.2




More information about the kernel-team mailing list