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:01:09 +0100
commit72029e85d700544e3d70c1d8d21450b100a47da4 (patch)
tree1f97f442d7320558bcfe2bb11a4e584f8f598522
parent7f7c969b9433ccb3010a66a954729083bcda226f (diff)
downloadbarebox-72029e85d700544e3d70c1d8d21450b100a47da4.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;
+};