1、usb-skeleton.c编译为usb-skeleton.ko模块
在内核源码的driver/usb目录中的kconfig、Makefine文件中添加usb框架文件:
config USB_SKELETON_CONFIG
tristate "TQ2440/SKY2440 USB_SKELETON Driver"
depends on USB
default m if USB
help
EmbedSky TQ2440/SKY2440 USB_SKELETON.
obj-$(CONFIG_USB_SKELETON_CONFIG) += usb-skeleton.o
2、通过make menuconfig配置内核,选择USB_SKELETON

3、在内核源码目录编译,得到usb_skeleton.ko模块

4、测试usb-skeleton.ko
修改源码的vendorid和productid,并加入一点打印消息,重新编译模块,并加载模块,插入usb wifi:
/* Define these values to match your devices */
/*#define USB_SKEL_VENDOR_ID 0xfff0
#define USB_SKEL_PRODUCT_ID 0xfff0*/
#define USB_SKEL_VENDOR_ID 0x0bda
#define USB_SKEL_PRODUCT_ID 0x818b

可以看到usb-skeleton正常工作起来了。
博客介绍了将usb-skeleton.c编译为usb-skeleton.ko模块的过程,包括在内核源码的driver/usb目录的kconfig、Makefine文件中添加usb框架文件,通过make menuconfig配置内核选择USB_SKELETON,在内核源码目录编译得到模块。还进行了测试,修改源码参数、重新编译加载后,usb-skeleton正常工作。
7411

被折叠的 条评论
为什么被折叠?



