You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
982 B

  1. #! /bin/sh
  2. # wlan_pwr -- version: "11-Apr-2020"
  3. # Tested on Debian 8.11
  4. # Improve CHIP's wireless performance by turning off power management.
  5. set -e
  6. # Log settings new
  7. echo "wlan_pwr: IFACE $IFACE, MODE $MODE, ADDRFAM $ADDRFAM"
  8. # Don't bother for loopback
  9. if [ "$IFACE" = lo ]; then
  10. exit 0
  11. fi
  12. # Only run from ifup.
  13. if [ "$MODE" != start ]; then
  14. exit 0
  15. fi
  16. # old off
  17. # Only do it once (skip for inet6).
  18. # if [ "$ADDRFAM" != inet ]; then
  19. # exit 0
  20. # fi
  21. # Hopefully wireless-tools is installed
  22. if [ ! -x /sbin/iw ]; then
  23. exit 0
  24. fi
  25. # New
  26. # The IFACE argument is not passed
  27. # /sbin/iw dev $IFACE set power_save off
  28. # Insert run through available wlans
  29. echo "wlan_pwr: Setting power saving to off"
  30. for wifi in `ip a | grep wlan | cut -f2 -d ' ' | sed "s/://"`
  31. do
  32. echo "wlan_pwr: Power save to off for $wifi"
  33. /sbin/iw dev $wifi set power_save off
  34. echo -n "wlan_pwr: $wifi is set to "
  35. /sbin/iw dev $wifi get power_save
  36. done
  37. exit 0