b795aac45f9bfe738e80399ab4db249d88fc8b21
[openwrt/staging/mans0n.git] / target / linux / ath25 / base-files / lib / preinit / 15_preinit_iface_atheros
1 preinit_ip() {
2 if [ -z "$pi_ifname" ]; then
3 grep -q 'Atheros AR231[567]' /proc/cpuinfo && {
4 if [ -e "/sys/bus/mdio_bus/drivers/Infineon ADM6996/0:00" -o \
5 -e "/sys/bus/mdio_bus/drivers/Marvell 88E6060/0:10" ]; then
6 ip link set eth0 up
7 ip link add link eth0 name eth0.1 type vlan id 1
8 ifname=eth0.1
9 else
10 ifname=eth0
11 fi
12 pi_ifname=$ifname
13 }
14 fi
15 [ -n "$pi_ifname" ] && grep -q "$pi_ifname" /proc/net/dev && {
16 ip addr add $pi_ip/$pi_netmask broadcast $pi_broadcast dev $pi_ifname
17 ip link set $pi_ifname up
18 }
19 }
20
21 preinit_ip_deconfig() {
22 if [ -e "/sys/bus/mdio_bus/drivers/Infineon ADM6996/0:00" -o \
23 -e "/sys/bus/mdio_bus/drivers/Marvell 88E6060/0:10" ]; then
24 ip link del eth0.1 2>/dev/null
25 ip link set $pi_ifname down
26 elif [ -n "$pi_ifname" ]; then
27 ip -4 addr flush dev $pi_ifname
28 fi
29 }