ath79/nand: add support for Netgear WNDR4300SW
[oweals/openwrt.git] / target / linux / ath79 / nand / base-files / etc / board.d / 02_network
1 #!/bin/sh
2
3 . /lib/functions/system.sh
4 . /lib/functions/uci-defaults.sh
5
6 ath79_setup_interfaces()
7 {
8         local board="$1"
9
10         case "$board" in
11         aerohive,hiveap-121)
12                 ucidef_set_interface_lan "eth0"
13                 ;;
14         domywifi,dw33d)
15                 ucidef_add_switch "switch0" \
16                         "0@eth0" "1:wan" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth1"
17                 ;;
18         glinet,gl-ar750s-nor|\
19         glinet,gl-ar750s-nor-nand)
20                 ucidef_add_switch "switch0" \
21                         "0@eth0" "2:lan:2" "3:lan:1" "1:wan"
22                 ;;
23         netgear,wndr3700-v4|\
24         netgear,wndr4300|\
25         netgear,wndr4300sw|\
26         netgear,wndr4300-v2|\
27         netgear,wndr4500-v3)
28                 ucidef_add_switch "switch0" \
29                         "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
30                 ;;
31         zyxel,nbg6716)
32                 ucidef_add_switch "switch0" \
33                         "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
34                 ;;
35         *)
36                 ucidef_set_interfaces_lan_wan "eth0" "eth1"
37                 ;;
38         esac
39 }
40
41 ath79_setup_macs()
42 {
43         local board="$1"
44
45         case "$board" in
46         netgear,wndr3700-v4|\
47         netgear,wndr4300|\
48         netgear,wndr4300sw|\
49         netgear,wndr4300-v2|\
50         netgear,wndr4500-v3)
51                 wan_mac=$(mtd_get_mac_binary caldata 0x6)
52                 ;;
53         esac
54
55         [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac
56         [ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" $wan_mac
57         [ -n "$label_mac" ] && ucidef_set_label_macaddr $label_mac
58 }
59
60 board_config_update
61 board=$(board_name)
62 ath79_setup_interfaces $board
63 ath79_setup_macs $board
64 board_config_flush
65
66 exit 0