【Linux 驱动】第四章 调试技术

1)cd linux-source-3.0.0

2)lsusb /*查看所有连接到系统的USB设备*/

3)拔掉USB设备,然后再运行一遍lsusb命令,这样就可以确定以上哪条信息是针对你的新硬件的了。

Bus 002 Device 004: ID 1e3d:2093 /*我的硬件识别信息*/

其中ID 1e3d:2093这个信息对我们很有用处,我们需要用它来查找内核中与硬件匹配的信息。1e3d代表的是厂商ID,就是哪家厂商。2093是硬件ID。

下面开始用1e3d搜索内核源码树:

4)grep -i -R-l 0403 drivers

drivers/usb/serial/ftdi_sio.mod.o drivers/usb/serial/ftdi_sio.ko drivers/usb/serial/ftdi_sio.mod.c drivers/watchdog/pcwd_pci.ko drivers/watchdog/pcwd_pci.mod.c drivers/watchdog/pcwd_pci.mod.o drivers/bluetooth/btusb.ko drivers/bluetooth/btusb.mod.c drivers/bluetooth/btusb.mod.o drivers/media/rc/keymaps/rc-hauppauge.c drivers/media/rc/keymaps/rc-dib0700-rc5.c drivers/media/dvb/dvb-usb/dvb-usb-vp702x.mod.c drivers/media/dvb/dvb-usb/nova-t-usb2.c drivers/media/dvb/dvb-usb/dvb-usb-vp702x.ko drivers/media/dvb/dvb-usb/dvb-usb-vp702x.mod.o

该命令执行完后,会在屏幕上显示若干条以.data .c .h等为结尾的文件,比如drivers/usb/serial/ftdi_sio.ko不用看最后一部分,前三个目录名就可以确定这是个USB串口设备。同样的判断方法,我们就可以确定我们需要的内核文件了。以防万一,我们进入这个文件中,USB驱动告诉内核它们支持哪些谁被,以便内核可以把驱动绑定到设备上。一般在一个结构体变量中列出制造商ID和设备ID。如果我们设备的制造商ID和设备ID在里面的话,说明这个驱动支持我们的硬件设备。

cd linux-3.0.0 /*进入内核文件中*/

find –type f –name Makefile | xargs grep XXXXX/*会显示一个以CONFIG_为前缀的字段*/

找到这个字段后,返回内核Makefile文件中,使用内核配置工具menuconfig,搜索这个字段。最后在该程序菜单中相应位置启动这个驱动。

不论你在什么时候开始,重要的是开始之後就不要停止

【Linux 驱动】第四章 调试技术

相关文章:

你感兴趣的文章:

标签云: