aboutsummaryrefslogtreecommitdiffstats
path: root/package/boot
diff options
context:
space:
mode:
authorKip Porterfield <kip.porterfield@gmail.com>2020-08-03 14:07:51 +0000
committerPetr Štetiar <ynezz@true.cz>2020-12-22 19:11:50 +0100
commit6ffe8a473eedf6f4f472bb5e64a1e1775917f3c8 (patch)
treeedc24dded25f21f676251b3ad7cbc07d6334e1c4 /package/boot
parent98b86296e67dd2b467212fe1a577656e6d3725da (diff)
downloadupstream-6ffe8a473eedf6f4f472bb5e64a1e1775917f3c8.tar.gz
upstream-6ffe8a473eedf6f4f472bb5e64a1e1775917f3c8.tar.bz2
upstream-6ffe8a473eedf6f4f472bb5e64a1e1775917f3c8.zip
kirkwood: add support for Seagate BlackArmor NAS220
The Seagate BlackArmor NAS220 is a consumer NAS with two internal drive bays. The stock OS runs RAID 1 over the disks via mdadm. Device specification: - SoC: Marvell 88F6192 800 MHz - RAM: 128 MB - Flash: 32 MB - 2 x internal SATA II drives - Ethernet: 10/100/1000 Mbps (single port, no switch) - WLAN: None - LED: Power, Status, Sata Activity - Key: Power, Reset - Serial: 10 pin header, (115200,8,N,1), 3.3V TTL 9|x - x|10 7|x - x|8 5|x - GND|6 3|x - RX|4 1|TX - x|2 front of case - USB ports: 2 x USB 2.0 Flash instruction: NOTE: this process uses a serial connection. It will upgrade the bootloader and reset the bootloader environment variables TFTP server setup - Setup PC with TFTP server set the PC IP to 10.4.50.5 as TFTP server - Copy these files to TFTP server location - u-boot.kwb - seagate_blackarmor-nas220-initramfs-uImage - seagate_blackarmor-nas220-squashfs-sysupgrade.bin - seagate_blackarmor-nas220-squashfs-factory.bin Seagate NAS setup - Connect LAN cable between PC and seagate device - Connect to serial to seagate device Install u-boot - Boot seagate device and stop in bootloader by pressing any key - run 'printenv' from u-boot and save the values - tftpboot 0x2000000 u-boot.kwb - nand erase.part uboot - nand write 0x2000000 0x0 ${filesize} - reset Update MAC address in u-boot env - Stop in u-boot by pressing any key - Get your MAC address from your saved printenv. Is also on chassis - setenv ethaddr <your MAC> - saveenv Option 1 (recommended) - Install OpenWrt via initramfs and sysupgrade - tftpboot 0x2000000 seagate_blackarmor-nas220-initramfs-uImage - bootm 0x2000000 - *OpenWrt should be running now, however it is not written to flash yet* - From the running instance of OpenWrt use Luci's "flash image" feature from the web site or use sysupgrade from the console to write seagate_blackarmor-nas220-squashfs-sysupgrade.bin to flash Option 2 - Install OpenWrt by flashing factory image from u-boot - nand erase.part ubi - tftpboot 0x2000000 seagate_blackarmor-nas220-squashfs-factory.bin - nand write 0x2000000 ubi ${filesize} - reset Signed-off-by: Kip Porterfield <kip.porterfield@gmail.com>
Diffstat (limited to 'package/boot')
-rw-r--r--package/boot/uboot-kirkwood/Makefile6
-rw-r--r--package/boot/uboot-kirkwood/patches/201-blackarmor-nas220.patch29
2 files changed, 35 insertions, 0 deletions
diff --git a/package/boot/uboot-kirkwood/Makefile b/package/boot/uboot-kirkwood/Makefile
index e1493bf0e8..1ed1743e21 100644
--- a/package/boot/uboot-kirkwood/Makefile
+++ b/package/boot/uboot-kirkwood/Makefile
@@ -59,6 +59,11 @@ define U-Boot/l-50
BUILD_DEVICES:=checkpoint_l-50
endef
+define U-Boot/nas220
+ NAME:=Seagate Blackarmor NAS220
+ BUILD_DEVICES:=seagate_blackarmor-nas220
+endef
+
define U-Boot/nsa310
NAME:=Zyxel NSA310
BUILD_DEVICES:=zyxel_nsa310b
@@ -95,6 +100,7 @@ UBOOT_TARGETS := \
ib62x0 ib62x0_second_stage \
iconnect iconnect_second_stage \
l-50 \
+ nas220 \
nsa310 \
nsa310s \
nsa325 \
diff --git a/package/boot/uboot-kirkwood/patches/201-blackarmor-nas220.patch b/package/boot/uboot-kirkwood/patches/201-blackarmor-nas220.patch
new file mode 100644
index 0000000000..50de4e7b82
--- /dev/null
+++ b/package/boot/uboot-kirkwood/patches/201-blackarmor-nas220.patch
@@ -0,0 +1,29 @@
+--- a/include/configs/nas220.h
++++ b/include/configs/nas220.h
+@@ -54,17 +54,22 @@
+ /*
+ * Default environment variables
+ */
+-#define CONFIG_BOOTCOMMAND ""
++#define CONFIG_BOOTCOMMAND \
++ "ubi part ubi; " \
++ "ubi read 0x800000 kernel; " \
++ "bootm 0x800000"
+
+ #define CONFIG_EXTRA_ENV_SETTINGS \
+ "bootargs=console=ttyS0,115200\0" \
+ "mtdparts=mtdparts=orion_nand:0xa0000@0x0(uboot),"\
+ "0x010000@0xa0000(env),"\
+- "0x500000@0xc0000(uimage),"\
+- "0x1a40000@0x5c0000(rootfs)\0" \
++ "0x1e80000@0xc0000(ubi)\0"\
+ "mtdids=nand0=orion_nand\0"\
+ "autostart=no\0"\
+- "autoload=no\0"
++ "autoload=no\0"\
++ "ipaddr=10.4.50.165\0"\
++ "serverip=10.4.50.5\0"\
++ "bootdelay=3"
+
+ /*
+ * Ethernet Driver configuration