diff options
Diffstat (limited to 'package/boot/uboot-envtools')
-rw-r--r-- | package/boot/uboot-envtools/Makefile | 6 | ||||
-rw-r--r-- | package/boot/uboot-envtools/files/ipq40xx | 42 | ||||
-rw-r--r-- | package/boot/uboot-envtools/files/ipq806x (renamed from package/boot/uboot-envtools/files/ipq) | 3 |
3 files changed, 47 insertions, 4 deletions
diff --git a/package/boot/uboot-envtools/Makefile b/package/boot/uboot-envtools/Makefile index 57a2ec5393..442cf3fd83 100644 --- a/package/boot/uboot-envtools/Makefile +++ b/package/boot/uboot-envtools/Makefile @@ -88,9 +88,13 @@ ifneq ($(CONFIG_TARGET_imx6),) $(INSTALL_DIR) $(1)/etc/uci-defaults $(INSTALL_DATA) ./files/imx6 $(1)/etc/uci-defaults/30_uboot-envtools endif +ifneq ($(CONFIG_TARGET_ipq40xx),) + $(INSTALL_DIR) $(1)/etc/uci-defaults + $(INSTALL_DATA) ./files/ipq40xx $(1)/etc/uci-defaults/30_uboot-envtools +endif ifneq ($(CONFIG_TARGET_ipq806x),) $(INSTALL_DIR) $(1)/etc/uci-defaults - $(INSTALL_DATA) ./files/ipq $(1)/etc/uci-defaults/30_uboot-envtools + $(INSTALL_DATA) ./files/ipq806x $(1)/etc/uci-defaults/30_uboot-envtools endif ifneq ($(CONFIG_TARGET_kirkwood),) $(INSTALL_DIR) $(1)/etc/uci-defaults diff --git a/package/boot/uboot-envtools/files/ipq40xx b/package/boot/uboot-envtools/files/ipq40xx new file mode 100644 index 0000000000..4eae506fb1 --- /dev/null +++ b/package/boot/uboot-envtools/files/ipq40xx @@ -0,0 +1,42 @@ +#!/bin/sh +# +# Copyright (C) 2016 LEDE +# + +[ -e /etc/config/ubootenv ] && exit 0 + +touch /etc/config/ubootenv + +. /lib/uboot-envtools.sh +. /lib/functions.sh + +board=$(board_name) + +ubootenv_mtdinfo () { + UBOOTENV_PART=$(cat /proc/mtd | grep APPSBLENV) + mtd_dev=$(echo $UBOOTENV_PART | awk '{print $1}' | sed 's/:$//') + mtd_size=$(echo $UBOOTENV_PART | awk '{print "0x"$2}') + mtd_erase=$(echo $UBOOTENV_PART | awk '{print "0x"$3}') + nor_flash=$(find /sys/bus/spi/devices/*/mtd -name ${mtd_dev}) + + if [ -n "$nor_flash" ]; then + ubootenv_size=$mtd_size + else + # size is fixed to 0x40000 in u-boot + ubootenv_size=0x40000 + fi + + sectors=$(( $ubootenv_size / $mtd_erase )) + echo /dev/$mtd_dev 0x0 $ubootenv_size $mtd_erase $sectors +} + +case "$board" in +openmesh,a42) + ubootenv_add_uci_config "/dev/mtd5" "0x0" "0x10000" "0x10000" + ;; +esac + +config_load ubootenv +config_foreach ubootenv_add_app_config ubootenv + +exit 0 diff --git a/package/boot/uboot-envtools/files/ipq b/package/boot/uboot-envtools/files/ipq806x index 441ba48372..4618aac892 100644 --- a/package/boot/uboot-envtools/files/ipq +++ b/package/boot/uboot-envtools/files/ipq806x @@ -34,9 +34,6 @@ case "$board" in linksys,ea8500) ubootenv_add_uci_config "/dev/mtd10" "0x0" "0x20000" "0x20000" ;; -openmesh,a42) - ubootenv_add_uci_config "/dev/mtd5" "0x0" "0x10000" "0x10000" - ;; qcom,ipq8064-ap148 |\ qcom,ipq8064-db149) ubootenv_add_uci_config $(ubootenv_mtdinfo) |