#!/bin/sh

DAY=`date +%d`
CMODE_HI=14
CMODE_LO=3
CMODE=`cat /proc/sys/pm/cmode`

while true; do
  # Put board to sleep at midnight. It's nighttime.
  if [ $DAY != `date +%d` ]; then
        logger "Bedtime. Goodnight."
	DAY=`date +%d`
	echo 1 > /proc/sys/pm/suspend
  fi

  LOADAVG=`cut -f1 -d\  /proc/loadavg | sed 's/\\.//'`
  if [ $LOADAVG -gt 150 -a $CMODE -lt $CMODE_HI ]; then
    logger "Changing CMODE up to $CMODE_HI"
    echo $CMODE_HI > /proc/sys/pm/cmode
    CMODE=`cat /proc/sys/pm/cmode`
  fi
  if [ $LOADAVG -lt 50 -a $CMODE -gt $CMODE_LO ]; then
    logger "Changing CMODE down to $CMODE_LO"
    echo $CMODE_LO > /proc/sys/pm/cmode
    CMODE=`cat /proc/sys/pm/cmode`
  fi
  sleep 5
done
    

