summaryrefslogtreecommitdiff
path: root/target
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2016-01-29 23:19:41 +0000
committerFelix Fietkau <nbd@openwrt.org>2016-01-29 23:19:41 +0000
commitbeda11255b27d2ec089aae4d8248000f213d323b (patch)
tree0104bf6230cdda52838c7b268f0eb5f1eeba5e0e /target
parentf32de94e0a46e06586dfd4066465a9425fa64304 (diff)
downloadmtk-20170518-beda11255b27d2ec089aae4d8248000f213d323b.zip
mtk-20170518-beda11255b27d2ec089aae4d8248000f213d323b.tar.gz
mtk-20170518-beda11255b27d2ec089aae4d8248000f213d323b.tar.bz2
octeon: get rid of /lib/functions/octeon.sh hackery, use sysinfo directly
Fixes sysupgrade Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 48558
Diffstat (limited to 'target')
-rwxr-xr-xtarget/linux/octeon/base-files/etc/board.d/01_network5
-rwxr-xr-xtarget/linux/octeon/base-files/lib/functions/octeon.sh50
-rw-r--r--target/linux/octeon/base-files/lib/preinit/20_sysinfo31
-rw-r--r--target/linux/octeon/base-files/lib/preinit/79_move_config6
-rwxr-xr-xtarget/linux/octeon/base-files/lib/upgrade/platform.sh8
5 files changed, 36 insertions, 64 deletions
diff --git a/target/linux/octeon/base-files/etc/board.d/01_network b/target/linux/octeon/base-files/etc/board.d/01_network
index 3c1e843..851b7e8 100755
--- a/target/linux/octeon/base-files/etc/board.d/01_network
+++ b/target/linux/octeon/base-files/etc/board.d/01_network
@@ -4,13 +4,10 @@
#
. /lib/functions/uci-defaults.sh
-. /lib/functions/octeon.sh
board_config_update
-board=$(octeon_board_name)
-
-case "$board" in
+case "$(cat /tmp/sysinfo/board_name)" in
erlite)
ucidef_set_interfaces_lan_wan "eth0" "eth1"
;;
diff --git a/target/linux/octeon/base-files/lib/functions/octeon.sh b/target/linux/octeon/base-files/lib/functions/octeon.sh
deleted file mode 100755
index deae9e3..0000000
--- a/target/linux/octeon/base-files/lib/functions/octeon.sh
+++ /dev/null
@@ -1,50 +0,0 @@
-#!/bin/sh
-#
-# Copyright (C) 2010-2013 OpenWrt.org
-#
-
-OCTEON_BOARD_NAME=
-OCTEON_MODEL=
-
-octeon_board_detect() {
- local machine
- local name
-
- machine=$(grep "^system type" /proc/cpuinfo | sed "s/system type.*: \(.*\)/\1/g")
-
- case "$machine" in
- "UBNT_E100"*)
- name="erlite"
- ;;
-
- "UBNT_E200"*)
- name="er"
- ;;
-
- "UBNT_E220"*)
- name="erpro"
- ;;
-
- *)
- name="generic"
- ;;
- esac
-
- [ -z "$OCTEON_BOARD_NAME" ] && OCTEON_BOARD_NAME="$name"
- [ -z "$OCTEON_MODEL" ] && OCTEON_MODEL="$machine"
-
- [ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
-
- echo "$OCTEON_BOARD_NAME" > /tmp/sysinfo/board_name
- echo "$OCTEON_MODEL" > /tmp/sysinfo/model
-}
-
-octeon_board_name() {
- local name
-
- [ -f /tmp/sysinfo/board_name ] || octeon_board_detect
- [ -f /tmp/sysinfo/board_name ] && name=$(cat /tmp/sysinfo/board_name)
- [ -z "$name" ] && name="unknown"
-
- echo "$name"
-}
diff --git a/target/linux/octeon/base-files/lib/preinit/20_sysinfo b/target/linux/octeon/base-files/lib/preinit/20_sysinfo
new file mode 100644
index 0000000..d8f467e
--- /dev/null
+++ b/target/linux/octeon/base-files/lib/preinit/20_sysinfo
@@ -0,0 +1,31 @@
+do_sysinfo_octeon() {
+ local machine
+ local name
+
+ machine=$(grep "^system type" /proc/cpuinfo | sed "s/system type.*: \(.*\)/\1/g")
+
+ case "$machine" in
+ "UBNT_E100"*)
+ name="erlite"
+ ;;
+
+ "UBNT_E200"*)
+ name="er"
+ ;;
+
+ "UBNT_E220"*)
+ name="erpro"
+ ;;
+
+ *)
+ name="generic"
+ ;;
+ esac
+
+ [ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
+
+ echo "$name" > /tmp/sysinfo/board_name
+ echo "$machine" > /tmp/sysinfo/model
+}
+
+boot_hook_add preinit_main do_sysinfo_octeon
diff --git a/target/linux/octeon/base-files/lib/preinit/79_move_config b/target/linux/octeon/base-files/lib/preinit/79_move_config
index 39cefd5..669999e 100644
--- a/target/linux/octeon/base-files/lib/preinit/79_move_config
+++ b/target/linux/octeon/base-files/lib/preinit/79_move_config
@@ -2,11 +2,7 @@
# Copyright (C) 2014 OpenWrt.org
move_config() {
- . /lib/functions/octeon.sh
-
- local board="$(octeon_board_name)"
-
- case "$board" in
+ case "$(cat /tmp/sysinfo/board_name)" in
erlite)
mount -t vfat /dev/sda1 /mnt
mv -f /mnt/sysupgrade.tgz /
diff --git a/target/linux/octeon/base-files/lib/upgrade/platform.sh b/target/linux/octeon/base-files/lib/upgrade/platform.sh
index 4cb03bc..91763ce 100755
--- a/target/linux/octeon/base-files/lib/upgrade/platform.sh
+++ b/target/linux/octeon/base-files/lib/upgrade/platform.sh
@@ -2,8 +2,6 @@
# Copyright (C) 2014 OpenWrt.org
#
-. /lib/functions/octeon.sh
-
platform_get_rootfs() {
local rootfsdev
@@ -24,7 +22,7 @@ platform_get_rootfs() {
}
platform_copy_config() {
- local board="$(octeon_board_name)"
+ local board="$(cat /tmp/sysinfo/board_name)"
case "$board" in
erlite)
@@ -60,7 +58,7 @@ platform_do_flash() {
platform_do_upgrade() {
local tar_file="$1"
- local board=$(octeon_board_name)
+ local board=$(cat /tmp/sysinfo/board_name)
local rootfs="$(platform_get_rootfs)"
local kernel=
@@ -83,7 +81,7 @@ platform_do_upgrade() {
}
platform_check_image() {
- local board=$(octeon_board_name)
+ local board=$(cat /tmp/sysinfo/board_name)
case "$board" in
erlite | \