zynq 第一個模組驅動的載入
終於可以開始從開發驅動出發了
急忙寫了個最簡模組
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/module.h>
static int __init vser_init(void)
{
printk("vser_init\n");
return 0;
}
static void __exit vser_exit(void)
{
printk("vser_exit\n");
}
module_init(vser_init);
module_exit(vser_exit);
MODULE_LICENSE("GPL");
直接拷貝韋東山第一期的第一個驅動的Makefile檔案改一下核心目錄和目標檔案
KERN_DIR =/home/hello/camboard/linux-xlnx-master
all:
make -C $(KERN_DIR) M=`pwd` modules
clean:
make -C $(KERN_DIR) M=`pwd` modules clean
rm -rf modules.order
obj-m += vser.o
/Desktop$ make
make -C /home/hello/camboard/linux-xlnx-master M=`pwd` modules
make[1]: Entering directory '/home/hello/camboard/linux-xlnx-master'
CC [M] /home/hello/Desktop/vser.o
Building modules, stage 2.
MODPOST 1 modules
CC /home/hello/Desktop/vser.mod.o
LD [M] /home/hello/Desktop/vser.ko
make[1]: Leaving directory '/home/hello/camboard/linux-xlnx-master'
cp vser.ko /tftpboot/rootfs
insmod vser.ko
lsmod 發現有一個vser的模組
rmmod vser.ko