| #!/sbin/openrc-run |
| # Copyright 1999-2013 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| |
| CPUFREQ_SYSFS=/sys/devices/system/cpu/cpufreq |
| |
| change() { |
| local c ret=0 opts="$1" |
| if [ -n "$opts" ] ; then |
| ebegin "Running cpupower -c all frequency-set ${opts}" |
| cpupower -c all frequency-set ${opts} >/dev/null 2>&1 |
| : $(( ret += $? )) |
| eend ${ret} |
| |
| if [ -d ${CPUFREQ_SYSFS} ] && [ -n "${SYSFS_EXTRA}" ] ; then |
| c=1 |
| einfo "Setting extra options: ${SYSFS_EXTRA}" |
| if cd ${CPUFREQ_SYSFS} ; then |
| local o v |
| for o in ${SYSFS_EXTRA} ; do |
| v=${o#*=} |
| o=${o%%=*} |
| echo ${v} > ${o} || break |
| done |
| c=0 |
| fi |
| eend ${c} |
| : $(( ret += c )) |
| fi |
| fi |
| |
| return ${ret} |
| } |
| |
| start() { |
| change "${START_OPTS}" |
| } |
| |
| stop() { |
| change "${STOP_OPTS}" |
| } |