summaryrefslogtreecommitdiff
path: root/package/boot/uboot-envtools
diff options
context:
space:
mode:
Diffstat (limited to 'package/boot/uboot-envtools')
-rw-r--r--package/boot/uboot-envtools/Makefile4
-rw-r--r--package/boot/uboot-envtools/files/cns3xxx28
2 files changed, 32 insertions, 0 deletions
diff --git a/package/boot/uboot-envtools/Makefile b/package/boot/uboot-envtools/Makefile
index 55aaf885f1..ded9678be9 100644
--- a/package/boot/uboot-envtools/Makefile
+++ b/package/boot/uboot-envtools/Makefile
@@ -69,6 +69,10 @@ ifneq ($(CONFIG_TARGET_ramips),)
$(INSTALL_DIR) $(1)/etc/uci-defaults
$(INSTALL_BIN) ./files/ramips $(1)/etc/uci-defaults/uboot-envtools
endif
+ifneq ($(CONFIG_TARGET_cns3xxx),)
+ $(INSTALL_DIR) $(1)/etc/uci-defaults
+ $(INSTALL_BIN) ./files/cns3xxx $(1)/etc/uci-defaults/uboot-envtools
+endif
endef
$(eval $(call BuildPackage,uboot-envtools))
diff --git a/package/boot/uboot-envtools/files/cns3xxx b/package/boot/uboot-envtools/files/cns3xxx
new file mode 100644
index 0000000000..a56be15c57
--- /dev/null
+++ b/package/boot/uboot-envtools/files/cns3xxx
@@ -0,0 +1,28 @@
+#!/bin/sh
+#
+# Copyright (C) 2013 OpenWrt.org
+#
+
+[ -e /etc/config/ubootenv ] && exit 0
+
+touch /etc/config/ubootenv
+
+. /lib/cns3xxx.sh
+. /lib/uboot-envtools.sh
+. /lib/functions.sh
+
+board=$(cns3xxx_board_name)
+
+case "$board" in
+laguna)
+ # Laguna uboot env size/erasesize vary depending on NOR vs SPI FLASH
+ size=$(grep mtd1 /proc/mtd | awk '{print $2}')
+ erasesize=$(grep mtd1 /proc/mtd | awk '{print $3}')
+ ubootenv_add_uci_config "/dev/mtd1" "0x0" "0x$size" "0x$erasesize"
+ ;;
+esac
+
+config_load ubootenv
+config_foreach ubootenv_add_app_config ubootenv
+
+exit 0