ソースを探すのが大変だと思うので、ここに置いておきます。
[作成からインストールまで]
root@glantank:~# apt-get install make gcc linux-headers-3.2.0-4-iop32x
root@glantank:~# tar xvfz fandrv.tar.gz
root@glantank:~# cd fandrv
root@glantank:~# vi Makefile
#
KERNEL_SRC = /usr/src/linux-headers-3.2.0-4-iop32x
TARGET:= fandrv.ko
all: ${TARGET}
${TARGET}: fandrv.c
make -C $(KERNEL_SRC) M=`pwd` modules
clean:
make -C $(KERNEL_SRC) M=`pwd` clean
obj-m:= fandrv.o
clean-files:= *.o *.ko *.mod.[co] *~ *.bak
root@glantank:~# mkdir /lib/modules/3.2.0-4-iop32x/kernel/drivers/fan
root@glantank:~# cp ~/fandrv/fandrv.ko /lib/modules/3.2.0-4-iop32x/kernel/drivers/fan
root@glantank:~# insmod /lib/modules/3.2.0-4-iop32x/kernel/drivers/fan/fandrv.ko
root@glantank:~# modprobe -a
root@glantank:~# vi /etc/modules
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
# Parameters can be specified after the module name.
loop
fandrv
[ファンの状態表示]statusが"01"ならファンが動作、"00"ならファンが停止。
root@glantank:~# cat /proc/fandrv
status: 01
[ファンの制御]"/proc/fandrv"に0を書き込むとファンを停止、"1"を書き込むとファンが起動します。
root@glantank:~# echo 0 > /proc/fandrv
root@glantank:~# echo 1 > /proc/fandrv
0 件のコメント:
コメントを投稿