summaryrefslogtreecommitdiffstats
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:39:12 +0100
commitaa360336a9e14440df7879be3a79a7e470690774 (patch)
tree316595addd4a2779db3adfe63f8be5f6ca38c254
parentc10cc6a393283272cd25aece371e3051d5b40ab4 (diff)
downloadbarebox-aa360336a9e14440df7879be3a79a7e470690774.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 3042189..9b1a9ec 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 bbc5561..5d3d2ed 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;
+};