3 # Copyright (C) 2009-2011 OpenWrt.org
9 ar71xx_get_mem_total() {
10 $(awk '/MemTotal:/ {print($2)}' /proc/meminfo)
13 ar71xx_get_mtd_part_magic() {
17 mtd=$(find_mtd_part $part)
18 [ -z "$mtd" ] && return
20 dd if=$mtd bs=4 count=1 2>/dev/null | hexdump -v -n 4 -e '1/1 "%02x"'
23 wndr3700_board_detect() {
30 magic="$(ar71xx_get_mtd_part_magic firmware)"
33 machine="NETGEAR WNDR3700"
38 mt=$(ar71xx_get_mem_total)
39 if [ "$mt" -lt "65536" ]; then
40 machine="NETGEAR WNDR3700v2"
42 machine="NETGEAR WNDR3800"
47 AR71XX_BOARD_NAME="$name"
48 AR71XX_MODEL="$machine"
55 part=$(find_mtd_part firmware)
56 [ -z "$part" ] && return 1
58 dd if=$part bs=4 count=1 skip=16 2>/dev/null | hexdump -v -n 4 -e '1/1 "%02x"'
61 ar71xx_board_detect() {
65 machine=$(awk 'BEGIN{FS="[ \t]+:[ \t]"} /machine/ {print $2}' /proc/cpuinfo)
125 *"NBG460N/550N/550NH")
126 name="nbg460n_550n_550nh"
140 *"RouterBOARD 411/A/AH")
146 *"RouterBOARD 433/AH")
149 *"RouterBOARD 433UAH")
158 *"RouterBOARD 493/AH")
173 *"RouterStation Pro")
174 name="routerstation-pro"
224 *"WNDR3700/WNDR3800")
225 wndr3700_board_detect "$machine"
256 [ -z "$name" ] && name="unknown"
258 [ -z "$AR71XX_BOARD_NAME" ] && AR71XX_BOARD_NAME="$name"
259 [ -z "$AR71XX_MODEL" ] && AR71XX_MODEL="$machine"
261 [ -e "/tmp/sysinfo/" ] || mkdir -p "/tmp/sysinfo/"
263 echo "$AR71XX_BOARD_NAME" > /tmp/sysinfo/board_name
264 echo "$AR71XX_MODEL" > /tmp/sysinfo/model
267 ar71xx_board_name() {
270 [ -f /tmp/sysinfo/board_name ] && name=$(cat /tmp/sysinfo/board_name)
271 [ -z "$name" ] && name="unknown"