15_preinit_iface_atheros 842 B

1234567891011121314151617181920212223242526272829
  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. preinit_ip_deconfig() {
  21. if [ -e "/sys/bus/mdio_bus/drivers/Infineon ADM6996/0:00" -o \
  22. -e "/sys/bus/mdio_bus/drivers/Marvell 88E6060/0:10" ]; then
  23. ip link del eth0.1 2>/dev/null
  24. ip link set $pi_ifname down
  25. elif [ -n "$pi_ifname" ]; then
  26. ip -4 addr flush dev $pi_ifname
  27. fi
  28. }