summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2015-01-06 09:16:03 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2015-01-06 14:01:24 +0100
commitbfbe59ab94b85b98f250620a53255b426ea20ba2 (patch)
tree9d32923e427ef192b62e1b7f087f6bdb03d982ae
parent9fc366d5fb373ef2faf66152bfb8c47b441e243f (diff)
downloadbarebox-bfbe59ab94b85b98f250620a53255b426ea20ba2.tar.gz
ARM: am335x bone: Fix Booting from eMMC
Booting a beaglebone black from eMMC is broken since: commit 0d6392de4ad824a6553c0e3e3e18edef689a7c85 Author: Sascha Hauer <s.hauer@pengutronix.de> Date: Thu Jun 5 12:09:07 2014 +0200 ARM: AM335x: Beaglebone: Use stripped down devicetree for MLO The stripped down device tree does not have the eMMC device node which the beaglebone black needs for booting. Add this node to the common dts file, but keep it disabled. It gets enabled later with a call to am33xx_of_register_bootdevice() when the system is booted from eMMC. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r--arch/arm/boards/beaglebone/board.c3
-rw-r--r--arch/arm/dts/am335x-bone-common.dts16
2 files changed, 19 insertions, 0 deletions
diff --git a/arch/arm/boards/beaglebone/board.c b/arch/arm/boards/beaglebone/board.c
index 3042189f6d..9b1a9ecdc2 100644
--- a/arch/arm/boards/beaglebone/board.c
+++ b/arch/arm/boards/beaglebone/board.c
@@ -92,6 +92,9 @@ static int beaglebone_devices_init(void)
armlinux_set_architecture(MACH_TYPE_BEAGLEBONE);
+ if (IS_ENABLED(CONFIG_SHELL_NONE))
+ return am33xx_of_register_bootdevice();
+
return 0;
}
coredevice_initcall(beaglebone_devices_init);
diff --git a/arch/arm/dts/am335x-bone-common.dts b/arch/arm/dts/am335x-bone-common.dts
index bbc55617c8..5d3d2ed5aa 100644
--- a/arch/arm/dts/am335x-bone-common.dts
+++ b/arch/arm/dts/am335x-bone-common.dts
@@ -1,5 +1,12 @@
/dts-v1/;
+/*
+ * DTS for the beaglebone white/black MLO
+ *
+ * Only contains the common parts of both boards which is
+ * all we need for the MLO
+ */
+
#include "am33xx.dtsi"
#include "am335x-bone-common.dtsi"
@@ -7,3 +14,12 @@
model = "TI AM335x BeagleBone";
compatible = "ti,am335x-bone", "ti,am33xx";
};
+
+&mmc2 {
+ vmmc-supply = <&vmmcsd_fixed>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&emmc_pins>;
+ bus-width = <8>;
+ status = "disabled"; /* only present on beaglebone black, enabled during runtime */
+ ti,vcc-aux-disable-is-sleep;
+};