uboot-tools/mvebu-enable-generic-distro-boot-config.patch

128 lines
3.7 KiB
Diff
Raw Normal View History

2016-08-23 13:16:45 +00:00
From ed2f11671a20a92841b4d0614e9f46d5867c2bb4 Mon Sep 17 00:00:00 2001
From: Peter Robinson <pbrobinson@gmail.com>
2016-08-23 13:16:45 +00:00
Date: Tue, 23 Aug 2016 09:54:50 +0100
Subject: [PATCH] [PATCH] arm: mvebu: enable generic distro boot config
2016-02-16 10:15:37 +00:00
Switch all of the mvebu boards to support disto generic booting
This will enable Fedora, Debian and other distros to support
mvebu systems easier. Tested on SolidRun ClearFog
Signed-off-by: Dennis Gilmore <dgilmore@redhat.com>
---
include/configs/clearfog.h | 5 ---
2016-08-23 13:16:45 +00:00
include/configs/mv-common.h | 84 +++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 84 insertions(+), 5 deletions(-)
2016-02-16 10:15:37 +00:00
diff --git a/include/configs/clearfog.h b/include/configs/clearfog.h
index ffaeedb..fd0114e 100644
2016-02-16 10:15:37 +00:00
--- a/include/configs/clearfog.h
+++ b/include/configs/clearfog.h
@@ -90,11 +90,6 @@
2016-02-16 10:15:37 +00:00
#define CONFIG_SYS_CONSOLE_INFO_QUIET /* don't print console @ startup */
#define CONFIG_SYS_ALT_MEMTEST
-/* Keep device tree and initrd in lower memory so the kernel can access them */
-#define CONFIG_EXTRA_ENV_SETTINGS \
- "fdt_high=0x10000000\0" \
- "initrd_high=0x10000000\0"
-
/* SPL */
/*
* Select the boot device here
diff --git a/include/configs/mv-common.h b/include/configs/mv-common.h
2016-08-23 13:16:45 +00:00
index 62f4937..a3e2fbf 100644
2016-02-16 10:15:37 +00:00
--- a/include/configs/mv-common.h
+++ b/include/configs/mv-common.h
2016-08-23 13:16:45 +00:00
@@ -147,4 +147,88 @@
2016-02-16 10:15:37 +00:00
#define CONFIG_LZO
#endif
+#ifndef CONFIG_SPL_BUILD
+#include <config_distro_defaults.h>
+
+/*
+* 160M RAM (256M minimum minus 64MB heap + 32MB for u-boot, stack, fb, etc.
+* 32M uncompressed kernel, 16M compressed kernel, 1M fdt,
+* 1M script, 1M pxe and the ramdisk at the end.
+*/
+#define SDRAM_OFFSET(x) 0x0##x
+
+#define KERNEL_ADDR_R __stringify(SDRAM_OFFSET(2000000))
+#define FDT_ADDR_R __stringify(SDRAM_OFFSET(3000000))
+#define SCRIPT_ADDR_R __stringify(SDRAM_OFFSET(3100000))
+#define PXEFILE_ADDR_R __stringify(SDRAM_OFFSET(3200000))
+#define RAMDISK_ADDR_R __stringify(SDRAM_OFFSET(3300000))
+
+#define MEM_LAYOUT_ENV_SETTINGS \
+ "bootm_size=0xa000000\0" \
+ "kernel_addr_r=" KERNEL_ADDR_R "\0" \
+ "fdt_addr_r=" FDT_ADDR_R "\0" \
+ "scriptaddr=" SCRIPT_ADDR_R "\0" \
+ "pxefile_addr_r=" PXEFILE_ADDR_R "\0" \
+ "ramdisk_addr_r=" RAMDISK_ADDR_R "\0"
+
+#ifdef CONFIG_MMC
+#define BOOT_TARGET_DEVICES_MMC(func) func(MMC, mmc, 0)
+#else
+#define BOOT_TARGET_DEVICES_MMC(func)
+#endif
+
+#ifdef CONFIG_CMD_SATA
+#define BOOT_TARGET_DEVICES_SATA(func) func(SATA, sata, 0) func(SATA, sata, 1)
+#define CONFIG_PREBOOT "sata init"
+#else
+#define BOOT_TARGET_DEVICES_SATA(func)
+#endif
+
+#ifdef CONFIG_USB_STORAGE
+#define BOOT_TARGET_DEVICES_USB(func) func(USB, usb, 0)
+#else
+#define BOOT_TARGET_DEVICES_USB(func)
+#endif
+
+#define BOOT_TARGET_DEVICES(func) \
+ BOOT_TARGET_DEVICES_MMC(func) \
+ BOOT_TARGET_DEVICES_SATA(func) \
+ BOOT_TARGET_DEVICES_USB(func) \
+ func(PXE, pxe, na)
+
+#include <config_distro_bootcmd.h>
+
+#ifdef CONFIG_USB_KEYBOARD
+#define CONSOLE_STDIN_SETTINGS \
+ "preboot=usb start\0" \
+ "stdin=serial,usbkbd\0"
+#else
+#define CONSOLE_STDIN_SETTINGS \
+ "stdin=serial\0"
+#endif
+
+#ifdef CONFIG_VIDEO
+#define CONSOLE_STDOUT_SETTINGS \
+ "stdout=serial,vga\0" \
+ "stderr=serial,vga\0"
+#else
+#define CONSOLE_STDOUT_SETTINGS \
+ "stdout=serial\0" \
+ "stderr=serial\0"
+#endif
+
+#define CONSOLE_ENV_SETTINGS \
+ CONSOLE_STDIN_SETTINGS \
+ CONSOLE_STDOUT_SETTINGS
+
+#define CONFIG_EXTRA_ENV_SETTINGS \
+ CONSOLE_ENV_SETTINGS \
+ MEM_LAYOUT_ENV_SETTINGS \
+ "fdtfile=" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0" \
+ "console=ttyS0,115200\0" \
+ BOOTENV
+#else /* ifndef CONFIG_SPL_BUILD */
+#define CONFIG_EXTRA_ENV_SETTINGS
+#endif
+
#endif /* _MV_COMMON_H */
--
2016-08-23 13:16:45 +00:00
2.9.3