Linux2.6 内核驱动移植参考
随着 的发布,由于 内核做了教的改动,各个设备的驱动程序在不同程度上要
进行改写。为了方便各位 爱好者我把自己整理的这分文档 出来。该文当列举
了 内核同以前版本的绝大多数变化,可惜的是由于时间和精力有限没有详细列出各个
函数的用法。
特别声明:该文档中的内容来自 ,该网也上也有各个函数的较为详细的
说明可供各位参考。如果需要该文档的 版的朋友, 请 到
索
取。
1、 使用新的入口
必须包含
!"#$
!"#$
老版本: %#$
% %#$
& 中两种都可以用,对如后面的入口函数不必要显示包含任何头文件。
2、 GPL
'()*+,-+./+ 0)1/)230#$
老版本:'()*+,-+./+ 0230#$
3、 模块参数
必须显式包含
4!4#$
4%4!4#$
参数定义
444#$
! 4!44#$
老版本:'()*+356' %74!#$
'()*+356')+/- %74!#$
4、 模块别名
'()*+5,5/ 080#$
这是新增的,在老版本中需在" 配置,现在在代码中就可以实现。
5、 模块计数
! 9#$
#$
老版本:'(),.-*/+-(*.:和 '())+-*/+-(*.:
6、 符号导出
只有显示的导出符号才能被其他模块使用,默认不导出所有的符号,不必使用 +;3(6:.(
/<'1(/
老板本:默认导出所有的符号,除非使用 +;3(6:.(/<'1(/
7、 内核版本检查
需要在多个文件中包含时,不必定义.(=+6/,(.
老版本:在多个文件中包含时,除在主文件外的其他文件中必须定义
.(=+6/,(.,防止版本重复定义。
评论1
最新资源