From e3d5a4003a0d24aba8600300fbbe6b6b75d21464 Mon Sep 17 00:00:00 2001
From: Kevin Mihelich <kevin@archlinuxarm.org>
Date: Sun, 25 Feb 2018 12:20:18 -0700
Subject: [PATCH] arch linux arm modifications

---
 configs/mvebu_mcbin-88f8040_defconfig |  1 +
 drivers/usb/eth/r8152.c               |  4 +--
 include/configs/mvebu_armada-common.h | 61 ++++++++++++++---------------------
 3 files changed, 27 insertions(+), 39 deletions(-)

diff --git a/configs/mvebu_mcbin-88f8040_defconfig b/configs/mvebu_mcbin-88f8040_defconfig
index 8932ceac3c..b85e318e37 100644
--- a/configs/mvebu_mcbin-88f8040_defconfig
+++ b/configs/mvebu_mcbin-88f8040_defconfig
@@ -84,3 +84,4 @@ CONFIG_USB_XHCI_HCD=y
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_STORAGE=y
 CONFIG_SMBIOS_MANUFACTURER=""
+CONFIG_MVEBU_MMC_BOOT
diff --git a/drivers/usb/eth/r8152.c b/drivers/usb/eth/r8152.c
index ed441f3243..e09351b0d2 100644
--- a/drivers/usb/eth/r8152.c
+++ b/drivers/usb/eth/r8152.c
@@ -26,7 +26,7 @@ struct r8152_dongle {
 	unsigned short product;
 };
 
-static const struct r8152_dongle const r8152_dongles[] = {
+static const struct r8152_dongle r8152_dongles[] = {
 	/* Realtek */
 	{ 0x0bda, 0x8050 },
 	{ 0x0bda, 0x8152 },
@@ -59,7 +59,7 @@ struct r8152_version {
 	bool           gmii;
 };
 
-static const struct r8152_version const r8152_versions[] = {
+static const struct r8152_version r8152_versions[] = {
 	{ 0x4c00, RTL_VER_01, 0 },
 	{ 0x4c10, RTL_VER_02, 0 },
 	{ 0x5c00, RTL_VER_03, 1 },
diff --git a/include/configs/mvebu_armada-common.h b/include/configs/mvebu_armada-common.h
index c406a7aa1b..de084959bc 100644
--- a/include/configs/mvebu_armada-common.h
+++ b/include/configs/mvebu_armada-common.h
@@ -34,43 +34,7 @@
 #define CONFIG_HAS_ETH1
 #define CONFIG_HAS_ETH2
 #define CONFIG_ETHPRIME			"eth0"
-#define CONFIG_ROOTPATH                 "/srv/nfs/" /* Default Dir for NFS */
-#define CONFIG_EXTRA_ENV_SETTINGS	"kernel_addr=0x5000000\0"	\
-					"initrd_addr=0xa00000\0"	\
-					"initrd_size=0x2000000\0"	\
-					"fdt_addr=0x4f00000\0"		\
-					"loadaddr=0x5000000\0"		\
-					"fdt_high=0xffffffffffffffff\0"	\
-					"hostname=marvell\0"		\
-					"ramfs_addr=0x8000000\0"	\
-					"ramfs_name=-\0"		\
-					"fdt_name=fdt.dtb\0"		\
-					"netdev=eth0\0"			\
-					"ethaddr=00:51:82:11:22:00\0"	\
-					"eth1addr=00:51:82:11:22:01\0"	\
-					"eth2addr=00:51:82:11:22:02\0"	\
-					"eth3addr=00:51:82:11:22:03\0"	\
-					"image_name=Image\0"		\
-					"get_ramfs=if test \"${ramfs_name}\"" \
-						" != \"-\"; then setenv " \
-						"ramfs_addr 0x8000000; " \
-						"tftpboot $ramfs_addr " \
-						"$ramfs_name; else setenv " \
-						"ramfs_addr -;fi\0"	\
-					"get_images=tftpboot $kernel_addr " \
-						"$image_name; tftpboot " \
-						"$fdt_addr $fdt_name; " \
-						"run get_ramfs\0"	\
-					"console=" CONFIG_DEFAULT_CONSOLE "\0"\
-					"root=root=/dev/nfs rw\0"	\
-					"set_bootargs=setenv bootargs $console"\
-						" $root ip=$ipaddr:$serverip:" \
-						"$gatewayip:$netmask:$hostname"\
-						":$netdev:none nfsroot="\
-						"$serverip:$rootpath " \
-						"$extra_params"
-#define CONFIG_BOOTCOMMAND	"run get_images; run set_bootargs; " \
-				"booti $kernel_addr $ramfs_addr $fdt_addr"
+
 #define CONFIG_ENV_OVERWRITE	/* ethaddr can be reprogrammed */
 /*
  * For booting Linux, the board info and command line data
@@ -175,4 +139,27 @@
  */
 #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 10
 
+#include <config_distro_defaults.h>
+
+#define BOOT_TARGET_DEVICES(func) \
+	func(MMC, mmc, 1) \
+	func(MMC, mmc, 0) \
+	func(USB, usb, 0) \
+	func(SCSI, scsi, 0)
+
+#include <config_distro_bootcmd.h>
+
+#define CONFIG_EXTRA_ENV_SETTINGS	\
+	"scriptaddr=0x4d00000\0"	\
+	"pxefile_addr_r=0x4e00000\0"	\
+	"fdt_addr_r=0x4f00000\0"	\
+	"kernel_addr_r=0x5000000\0"	\
+	"ramdisk_addr_r=0x8000000\0"	\
+	"fdtfile=" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0" \
+	"eth1addr=00:51:82:11:22:01\0"	\
+	"eth2addr=00:51:82:11:22:02\0"	\
+	"eth3addr=00:51:82:11:22:03\0"	\
+	"ethaddr=00:51:82:11:22:00\0"	\
+	BOOTENV
+
 #endif /* _CONFIG_MVEBU_ARMADA_H */
-- 
2.14.1