之前写过一个关于在2.6内核上移植RT5370的驱动,http://blog.csdn.net/andylauren/article/details/51972072
使用的是无线网卡官方提供的驱动,然后据说在3.0.1内核版本之后已经提供了RT5370网卡的支持,然后经过一系列的配置学习终于将RT5370驱动配置进入内核,并在该内核下运行起了无线网卡,具体过程将在下一篇文章中详细介绍。
在配置内核的过程中,总结下了一些经验,在这里分享给大家,希望对大家有帮助。
1、在想配置内核之前需要先确定内核中真的有想要配置的文件,比如在2.6内核中就没有支持RT5370,就算把内核翻个底朝天也不会找到的。所以需要提前确定内核中有支持的文件存在。
2、下面我在3.2.0版本的内核中一步一步的讲解一下如何配置RT5370驱动。
首先在内核源码文件根目录下,使用make menuconfig进入图形界面;
然后使用“/”进入查找模式,在查找模式中输入我们需要查找的东西,“rt53”
在返回的内容中,找到需要的条目
prompt是配置项的字符串。
depends on说的是这个条目所依赖的项目,这里有两项是n,就是没有被配置,需要找到这两项,并进行配置然后就会变成y,depend on中的条件都变成y之后就可以在location的目录中看到prompt字符串,选中就可以了。
下面我们来一步一步的将rt2x00和RT2800USB变成y。
使用“/”查找RT2X00
结果中出现MAC80211没有选中,继续跟踪MAC80211.
结果中显示没有选中CFG80211,老规矩,继续跟踪。
这个条目的依赖都被选中了,说明我们可以在location目录中找到prompt,我们去那里选中让它吧。
果然有这一项,使用空格键将全面的<>中变成<*>,意思是编译进内核,<M>是编译成模块。
这个时候我们应该可以去配置MAC80211了,让我们去找到它,并配置为编译进内核。
选中之后应该就可以选择RT2X00条目了,让我们再查看一下,
我们去把ralink driver support
选中之后使用同样的方法来追踪RT2800USB.
到这里去配置上。
到这里应该就已经可以了,我们已经把RT5370的驱动配置进了内核,我们再来查看一下。
接下来我们就是make uIamge,生成的内核就可以支持了RT5370了。
总结一下:
首先查找需要的驱动文件,然后查看依赖是否都为y,如果有n就去查找n的条目,就这样顺藤摸瓜的一直到将所有依赖都变成y,这个时候到location目录中找到prompt选择。
这是内核中添加驱动,删减驱动查找并且将其取消选中,一般删减只是将需要删减的驱动去掉,不去掉依赖,以为可能会删除掉其它驱动的依赖文件,造成编译失败。