octeon: add basic board detection

Signed-off-by: John Crispin <blogic@openwrt.org>

SVN-Revision: 41274
master
John Crispin 10 years ago
parent f98b58fcec
commit e6e024f155
  1. 3
      target/linux/octeon/base-files.mk
  2. 18
      target/linux/octeon/base-files/etc/config/network
  3. 31
      target/linux/octeon/base-files/etc/uci-defaults/01_network
  4. 42
      target/linux/octeon/base-files/lib/functions/octeon.sh

@ -0,0 +1,3 @@
define Package/base-files/install-target
rm -f $(1)/etc/config/network
endef

@ -1,18 +0,0 @@
# Copyright (C) 2009 OpenWrt.org
config interface loopback
option ifname lo
option proto static
option ipaddr 127.0.0.1
option netmask 255.0.0.0
config interface lan
option ifname eth1
option type bridge
option proto static
option ipaddr 192.168.1.1
option netmask 255.255.255.0
config interface wan
option ifname eth0
option proto dhcp

@ -0,0 +1,31 @@
#!/bin/sh
#
# Copyright (C) 2014 OpenWrt.org
#
[ -e /etc/config/network ] && exit 0
. /lib/functions/uci-defaults.sh
. /lib/functions/octeon.sh
touch /etc/config/network
board=$(octeon_board_name)
case "$board" in
erlite)
ucidef_set_interface_loopback
ucidef_set_interface_lan 'eth0'
ucidef_set_interface_wan 'eth1'
;;
*)
ucidef_set_interface_loopback
ucidef_set_interface_wan 'eth1'
ucidef_set_interface_lan 'eth0'
;;
esac
uci commit network
exit 0

@ -0,0 +1,42 @@
#!/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"
;;
*)
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"
}
Loading…
Cancel
Save