linux usb转串口驱动报错,USB转串口驱动编译出错

我现在有个设备 XR21V1412  我在网上找了个xr21v141x-lnx-2.6.18驱动程序,而我的虚拟机用的是federo10  内核版本是Linux version 2.6.27.30-170.2.82.fc10.i686,我编译的时候出错如下;[root@root qu]# make

make -C /lib/modules/2.6.27.30-170.2.82.fc10.i686/build M=/home/35/qu

make[1]: Entering directory `/usr/src/kernels/2.6.27.30-170.2.82.fc10.i686'

LD      /home/35/qu/built-in.o

CC [M]  /home/35/qu/vizzini.o

/home/35/qu/vizzini.c: 在函数‘vizzini_set_termios’中:

/home/35/qu/vizzini.c:429: 错误:‘struct usb_serial_port’没有名为‘tty’的成员

/home/35/qu/vizzini.c:487: 错误:‘struct usb_serial_port’没有名为‘tty’的成员

/home/35/qu/vizzini.c:487: 错误:‘struct usb_serial_port’没有名为‘tty’的成员

/home/35/qu/vizzini.c:488: 错误:‘struct usb_serial_port’没有名为‘tty’的成员

/home/35/qu/vizzini.c:489: 错误:‘struct usb_serial_port’没有名为‘tty’的成员

/home/35/qu/vizzini.c:516: 错误:‘struct usb_serial_port’没有名为‘tty’的成员

/home/35/qu/vizzini.c: 在函数‘vizzini_write’中:

/home/35/qu/vizzini.c:852: 警告:传递‘usb_fill_bulk_urb’的第 6 个参数时在不兼容的指针类型间转换

/home/35/qu/vizzini.c: 在函数‘vizzini_in_callback’中:

/home/35/qu/vizzini.c:889: 错误:‘struct usb_serial_port’没有名为‘tty’的成员

/home/35/qu/vizzini.c: 在函数‘vizzini_int_callback’中:

/home/35/qu/vizzini.c:1032: 错误:‘struct usb_serial_port’没有名为‘tty’的成员

/home/35/qu/vizzini.c: 在函数‘vizzini_open’中:

/home/35/qu/vizzini.c:1105: 错误:‘struct usb_serial_port’没有名为‘tty’的成员

/home/35/qu/vizzini.c: 在函数‘vizzini_close’中:

/home/35/qu/vizzini.c:1136: 错误:‘struct usb_serial_port’没有名为‘tty’的成员

/home/35/qu/vizzini.c: 在函数‘vizzini_attach’中:

/home/35/qu/vizzini.c:1225: 警告:传递‘usb_fill_bulk_urb’的第 6 个参数时在不兼容的指针类型间转换

/home/35/qu/vizzini.c: 在文件层:

/home/35/qu/vizzini.c:1472: 警告:从不兼容的指针类型初始化

/home/35/qu/vizzini.c:1473: 警告:从不兼容的指针类型初始化

/home/35/qu/vizzini.c:1474: 警告:从不兼容的指针类型初始化

/home/35/qu/vizzini.c:1475: 警告:从不兼容的指针类型初始化

/home/35/qu/vizzini.c:1476: 警告:从不兼容的指针类型初始化

/home/35/qu/vizzini.c:1477: 警告:从不兼容的指针类型初始化

/home/35/qu/vizzini.c:1478: 警告:从不兼容的指针类型初始化

/home/35/qu/vizzini.c:1479: 警告:从不兼容的指针类型初始化

/home/35/qu/vizzini.c:1480: 警告:从不兼容的指针类型初始化

/home/35/qu/vizzini.c:1483: 警告:从不兼容的指针类型初始化

我仔细看了下是说struct usb_serial_port中没有tty?这是咋回事????怎么解决能保证编译成功!

|

linux的驱动好像很依赖于内核版本,2.6.18到2.6.27跨度不算太小了。最好能找到版本一致的。

我拿比较新的内核编译ldd3里面的例子,也会出错,需要自己做一些修改。

搜索 "struct usb_serial_port tty" 能看到很多结果,说明很多同学遇到过这个问题,LZ可以参考一下。

|

诚如1楼所说。

搜索一下那个结构体在新版内核的对应名称,再一一修改。

PS:不仅内核结构体名称随版本变化,u-boot也是,变得可能还有目录、函数名称,等等。

|

1L解释的很清楚了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值