[求助]ch340 linux 驱动编译出错

我的linux版本是gentoo,内核2.6.31 编译通不过阿,一堆错误,麻烦大家给看一下,是不是驱动和内核版本不匹配阿

make -C /lib/modules/2.6.31-gentoo-r6/build SUBDIRS=/home/weicz/install/ch341 modules make[1]: Entering directory `/usr/src/linux-2.6.31-gentoo-r6' CC [M] /home/weicz/install/ch341/ch341.o /home/weicz/install/ch341/ch341.c: 在函数‘ch341_open’中: /home/weicz/install/ch341/ch341.c:248: 警告:传递‘usb_serial_generic_open’的第 1 个参数时在不兼容的指针类型间转换 /home/weicz/install/ch341/ch341.c:248: 警告:传递‘usb_serial_generic_open’的第 2 个参数时在不兼容的指针类型间转换 /home/weicz/install/ch341/ch341.c:248: 错误:提供给函数‘usb_serial_generic_open’的实参太少 /home/weicz/install/ch341/ch341.c: 在函数‘ch341_set_termios’中: /home/weicz/install/ch341/ch341.c:260: 错误:‘struct usb_serial_port’没有名为‘tty’的成员 /home/weicz/install/ch341/ch341.c:266: 错误:‘struct usb_serial_port’没有名为‘tty’的成员 /home/weicz/install/ch341/ch341.c:266: 错误:‘struct usb_serial_port’没有名为‘tty’的成员 /home/weicz/install/ch341/ch341.c: 在文件层: /home/weicz/install/ch341/ch341.c:317: 错误:初始值设定项里有未知的字段‘num_interrupt_in’ /home/weicz/install/ch341/ch341.c:317: 错误:‘NUM_DONT_CARE’未声明(不在函数内) /home/weicz/install/ch341/ch341.c:318: 错误:初始值设定项里有未知的字段‘num_bulk_in’ /home/weicz/install/ch341/ch341.c:319: 错误:初始值设定项里有未知的字段‘num_bulk_out’ /home/weicz/install/ch341/ch341.c:319: 警告:初始化时将整数赋给指针,未作类型转换 /home/weicz/install/ch341/ch341.c:321: 警告:从不兼容的指针类型初始化 /home/weicz/install/ch341/ch341.c:322: 警告:从不兼容的指针类型初始化 make[2]: *** [/home/weicz/install/ch341/ch341.o] 错误 1 make[1]: *** [_module_/home/weicz/install/ch341] 错误 2 make[1]: Leaving directory `/usr/src/linux-2.6.31-gentoo-r6'

我们提供的驱动在2.6.18内核下测试通过,但是由于linux内核版本的差异可能会导致编译不过,解决问题的办法是根据错误提示修改驱动代码.


请问ch340的linux:2.6.18-238.e15的驱动哪里有下载的呢?求发一份,邮箱:个人信息保护,已隐藏

我下了两个,编译出错,情况跟楼主的差不多,不知道怎么修改程序。


楼主的驱动应该从网上随便找到的,没有向wch申请。二楼邮件已发。


只有登录才能回复,可以选择微信账号登录