#!/bin/sh
#
#    usb_autosuspend: Auto suspend usb core.
#
#    Copyright (C) 2010 Canonical Ltd.
#
#    Authors: Andres Rodriguez <andreserl@ubuntu.com>
#
#    This program is free software: you can redistribute it and/or modify
#    it under the terms of the GNU General Public License as published by
#    the Free Software Foundation, version 3 of the License.
#
#    This program is distributed in the hope that it will be useful,
#    but WITHOUT ANY WARRANTY; without even the implied warranty of
#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#    GNU General Public License for more details.
#
#    You should have received a copy of the GNU General Public License
#    along with this program.  If not, see <http://www.gnu.org/licenses/>.

#for i in /sys/bus/usb/devices/*/power/autosuspend; do echo 1 > $i; done 
#for i in /sys/bus/usb/devices/*/power/level; do echo auto > $i; done

set_usb_autosuspend() {
	for i in /sys/bus/usb/devices/*/power/autosuspend;
	do
		echo $1 > $i
	done

	for i in /sys/bus/usb/devices/*/power/level;
	do
		echo $2 > $i
	done
}

help() {
	echo "Auto suspend USB bus to save power."
}

case $1 in
	true)
		set_usb_autosuspend 1 auto ;;
	false)
		set_usb_autosuspend 2 on ;;
	help)
		help;;
	*)
		exit $NA ;;
esac
