S03ethernet 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #!/bin/sh
  2. ### BEGIN INIT INFO
  3. # Provides:
  4. # Short-Description: USB Ethernet Support
  5. # Description: Enable USB Ethernet adapter support and kernel module
  6. ### END INIT INFO
  7. . /opt/wz_mini/etc/rc.common
  8. . /opt/wz_mini/wz_mini.conf
  9. case "$1" in
  10. start)
  11. echo "#####$(basename "$0")#####"
  12. if [[ "$ENABLE_USB_ETH" == "true" ]]; then
  13. insmod $KMOD_PATH/kernel/drivers/net/usb/usbnet.ko
  14. echo "Auto-Detect an Ethernet Driver and load it"
  15. if [[ "$ENABLE_USB_ETH_MODULE_AUTODETECT" == "true" ]]; then
  16. for DEVICE in `lsusb | awk '{print $6}'| tr '[:upper:]' '[:lower:]'`; do
  17. case $DEVICE in
  18. '077b:2226' | '0846:1040' | '2001:1a00' | '0b95:1720' | '07b8:420a' |\
  19. '08dd:90ff' | '0557:2009' | '0411:003d' | '0411:006e' | '6189:182d' |\
  20. '0df6:0056' | '07aa:0017' | '1189:0893' | '1631:6200' | '04f1:3008' |\
  21. '17ef:7203' | '0b95:772b' | '0b95:7720' | '0b95:1780' | '0789:0160' |\
  22. '13b1:0018' | '1557:7720' | '07d1:3c05' | '2001:3c05' | '2001:1a02' |\
  23. '1737:0039' | '04bb:0930' | '050d:5055' | '05ac:1402' | '0b95:772a' |\
  24. '14ea:ab11' | '0db0:a877' | '0b95:7e2b' | '0b95:172a' | '066b:20f9')
  25. echo "Loading ASIX Ethernet driver..."
  26. modprobe asix
  27. ;;
  28. '0b95:1790' | '0b95:178a' | '0df6:0072')
  29. echo "Loading AX88179 Gigabit Ethernet driver..."
  30. modprobe ax88179_178a
  31. ;;
  32. '1004:61aa' | '046d:c11f' | '1410:b001' | '1410:9010' | '413c:8195' |\
  33. '413c:8196' | '413c:819b' | '16d5:650a' | '12d1:14ac')
  34. echo "Loading USB CDC Ethernet driver..."
  35. modprobe cdc_ether
  36. ;;
  37. '0bda:8152')
  38. echo "Loading Realtek RTL8152 driver..."
  39. modprobe r8152
  40. ;;
  41. esac
  42. done
  43. fi
  44. echo "Manually load any other Ethernet Drivers if asked for"
  45. if [[ "$ENABLE_USB_ETH_MODULE_MANUAL" != "" ]]; then
  46. for i in $(echo "$ENABLE_USB_ETH_MODULE_MANUAL" | tr "," "\n")
  47. do
  48. insmod $KMOD_PATH/kernel/drivers/net/usb/$i.ko
  49. done
  50. fi
  51. cat /sys/class/net/eth0/address | tr '[:lower:]' '[:upper:]' > /opt/wz_mini/tmp/eth0_mac
  52. else
  53. echo "USB Ethernet disabled"
  54. fi
  55. ;;
  56. *)
  57. echo "Usage: $0 {start}"
  58. exit 1
  59. ;;
  60. esac