想把linux-2.6.18的 net/davinic_emac.c驱动,改成linux-2.6.34 的
小弟最近在学习网络驱动,用的是DM365开发板,板子原来的内核是linux-2.6.18版本的,现在想把linux-2.6.18的 net/davinic_emac.c驱动,改成linux-2.6.34 的 。
现在的想法是:从34版本源码中,复制出davinic_emac.c文件,用18版本把davinic_emac.c 编译成davinic_emac.ko模块。
出现的问题是:有许多头文件找不到,还有有一些内核的API参数或返回值类型不一样,所以调用时会出错。然后我就将找不到的头文件从34版本里复制过去,然后又出现许多冲突。。。。
请问:
我这样做法大的方向有没有错?我担心把34版本的一些文件复制到18版本里,假设可以编译成了davinic_emac.ko ,应该会影响到其实它模块的编译。
你们的驱动移值是这样子做的吗?介绍一下吧~~
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
是要改驱动程序还是这样移算了?
这种方法不太适合移植吧,最好还是用34的源码编译,如果不可用,看看代码有什么不同,然后再改。