免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2821 | 回复: 8
打印 上一主题 下一主题

Linux2.4向2.6移植问题。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-10-14 16:14 |只看该作者 |倒序浏览
本帖最后由 na2650945 于 2011-10-17 16:39 编辑

PCI Driver驱动。
现在的问题是。
mknod /dev/rubicon。
mknod /dev/rubicon1。
然后都chmod 777的权限。
/dev/rubicon次设备号为0.
/dev/rubicon1次设备号为1.
open(/dev/rubicon, ...)没有问题。
open(/dev/rubicon1, ...)提示No such device or address.
经过调试发现根本没进入我的驱动代码呀。
在2.4内核下是好好的。
在2.6内核下就不行了。
这是为什么呢。
高手在哪里呀。
赐教呀。
GOOGLE了好几天了。

论坛徽章:
0
2 [报告]
发表于 2011-10-17 09:30 |只看该作者
问题找到了。
其实我理解错了。
人家是建立了两个设备。
一个是/dev/rubicon 次设备号为0.
另一个是/dev/rubicon1次设备号为1。

论坛徽章:
0
3 [报告]
发表于 2011-10-17 10:41 |只看该作者
又遇到新的问题了。
高手快啦呀。
问题是这样的。
观察2.4内核下的测试卡的行为是。
建立两个文件/dev/rubicon MINOR为0.
另一个是/dev/rubicon1 MINOR为1.
打开哪个都没问题。
但是转到2.6内核下。
打开/dev/rubicon成功。
打开/dev/rubicon1却失败。
提示no such device or address.
没有进入到驱动代码中都。
不知道为什么。
高手赐教。

论坛徽章:
0
4 [报告]
发表于 2011-10-17 15:03 |只看该作者
高手在哪里呀。
高手在哪里。

论坛徽章:
0
5 [报告]
发表于 2011-10-18 08:51 |只看该作者
我又来求高手了。

论坛徽章:
0
6 [报告]
发表于 2011-10-18 13:57 |只看该作者
我又来求高手了。
那个问题搞过去去。
因为probe里面的一个注册设备函数选择不当。
在用老的方法的时候。
会默认注册0-255的MINOR设备。
新的函数不会。
现在新问题又来了。
谁知道IRQ 19是个怎样的中断。
高手。
在哪里。

论坛徽章:
0
7
发表于 2011-10-20 21:43
可能是我问的问题太白痴了吧。
没人愿意回答。
问题现在基本搞完了。
基本把PCI的2.4向2.6搞个编。
写写心得吧。
剩的以后有人搜索到帖子找不到解决方法。
2.4向2.6移植的话。
会在注册设备。
中断处理函数处有问题。
我的代码是这样的。
还有模块的位置。
需要在probe中pci_enalbe_device.
然后再open处request_irq.
中断处理函数的声明和返回值都有所改变。

论坛徽章:
0
8 [报告]
发表于 2011-10-21 22:04 |只看该作者
怎么会被删楼呢。
无语。

论坛徽章:
0
9 [报告]
发表于 2011-10-21 22:09 |只看该作者
问题已解决。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP