/home/acos
--+ rpi
----+ linux: 存放Kernel Source
----+ tools: 存放Toolchain
----+ driver: 存放此範例檔案hello.c與Makefile
hello.c
#include <linux/module.h> #include <linux/init.h> MODULE_LICENSE("Dual BSD/GPL"); static int hello_init(void) { printk(KERN_ALERT "Hello, RPi!\n"); return 0; } static void hello_exit(void) { printk(KERN_ALERT "Goodbye, RPi\n"); } module_init(hello_init); module_exit(hello_exit);
Makefile
obj-m := hello.o all: make -C /home/acos/rpi/linux M=$(PWD) modules clean: make -C /home/acos/rpi/linux M=$(PWD) clean
進到driver目錄下執行
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
root@raspberrypi:~# insmod hello.ko [ 5835.187137] Hello, RPi! root@raspberrypi:~# rmmod hello [ 5842.134762] Goodbye, RPi
沒有留言:
張貼留言