Update documentation to reflect recent findings
[apc.git] / apc-linux.run
blobebb36d6cba2bd89bd5bcfba247a1b91250edb191
1 #!/bin/sh
3 set -e
5 dev="/dev/itc"
7 function suX() { # remove X to enjoy sudo
8 shift
9 sudo $*
12 ! test `uname -s` = "Linux" && {
13 echo `uname -s` is not Linux
14 exit 1
17 case `uname -r | cut -d. -f1,2` in
18 2.6) kms=ko; syms=/proc/kallsyms;;
19 2.4) kms=o; syms=/proc/ksyms;;
20 *) echo "unknown kernel version"; exit 1;;
21 esac
24 test -e "build/itc.$kms" && kmod=build/itc.$kms
25 test -z "$kmod" && test -e "mod/itc.$kms" && kmod=mod/itc.$kms
27 test -z "$kmod" && {
28 echo "Kernel module does not exist"
29 exit 1
32 case `uname -m` in
33 i[3456]86)
34 func=$(awk '/default_idle$/ {print "0x" $1}' $syms)
35 args="idle_func=$func"
39 args=
41 esac
43 if ! test -c $dev; then
44 echo "ITC kernel module is not running. Will try to load $kmod."
45 su -c "insmod $kmod $args"
48 if ! test -r $dev; then
49 echo "ITC is not readable. Will try to change mode."
50 su -c "chmod +r $dev"
53 ./apc -d $dev & disown
54 echo "apc should be running now"