【Linux驱动】TQ2440 DM9000E网卡驱动移植(Linux-2.6.30.4)
花了一天的时间研究了一下Linux-2.6.30.4版本号内核下关于TQ2440 DM9000E的网卡驱动移植。总结一下自己的收获。
事实上。在Linux-2.6.30.4版本号内核下有关于网卡驱动,可是这个网卡驱动不是针对于 DM9000E。而是针对于 DM9000的。
因此要在此基础之上改动一些參数。而且打上必要的相关代码。这个网卡驱动移植是參照了“天嵌科技出品-Linux移植之Step By Step_V4.6”的文档。但就是这样。还是花费了将近一天的时间。事实上这里的难点在于:文档中仅仅是给出了改动代码的大体位置。而没有非常具体的说清楚。因此才会出现,不知道要在什么位置加入或者改动代码的问题。这个文档上面的配置方法,我总共配置了不下5遍。
对比着这个文档,以及从网上搜索的一些资料。改了一遍又一遍。
因此,我认为学习嵌入式。不仅要有一股坚持的劲,还要有耐心。由于我在改动网卡驱动的时候。改动一遍,编译内核,下载到板子。执行看是否正确。然后再改动一遍。然后再编译内核,然后再下载到板子,在执行查看结果……知道成功为止。这中间不知道要经过多少次的反复。难免会认为烦躁,甚至气馁。
可是,我个人认为这似乎才是学习的真谛:我们遇到问题。然后我们想方设法去解决这个问题。在解决这个问题的时候,我们会去查阅资料,会去思考,会去如果,然后自己去做实验去验证(实践),如果如果不对,就会再去查资料,思考,如果,验证……直到成功。事实上说究竟,就是反复。在反复的过程中。慢慢的理解了这部分的知识,慢慢的提升了自己的能力。有的时候我们突破一个问题的时候,就会有一种豁然开朗的感觉。因此,学习怕的不是遇到非常多的问题,而是遇不到问题。
总结到此结束。
以下将配置好的代码的详细位置上图:
arch/arm/mach-s3c2440/mach-smdk2440.c
1、加入蓝色区域内的代码
2、加入蓝色区域内的代码
3、加入蓝色区域内的代码
以下是改动drives/net/dm9000.c文件
4、加入蓝色区域的代码
5、加入蓝色区域的代码
6、加入蓝色区域的代码
7、加入蓝色区域的代码
8、加入蓝色区域的代码
9、加入蓝色区域的代码
最新文章
- WEB安全:XSS漏洞与SQL注入漏洞介绍及解决方案(转)
- Spring集成JUnit测试
- [SLAM] Studying Guidance
- Python 中对文件的输入输出
- Deep Learning 学习笔记——第9章
- struts2文件上传(保存为BLOB格式)
- PDOstament对象执行execute()函数,只要是sql语句正确都是返回true
- expect: spawn id exp4 not open
- C语言,题目:函数调用,内存,malloc找错
- /bin/bash^M: 坏的解释器: 没有那个文件或目录
- 【Python3爬虫】为什么你的博客没人看呢?
- Django视图层
- VMware下安装Ubuntu18.04时vmware tools安装问题
- vagrant box保存路径修改
- delphi:临界区对象TCriticalSection(Delphi) 与 TRtlCriticalSection 的区别
- Intermediate Python for Data Science learning 1 - Basic plots with matplotlib
- spring mvc返回jsonp内容
- 实现对DataGird控件的绑定操作
- POJ 2886 Who Gets the Most Candies? (线段树)题解
- IDEAL葵花宝典:java代码开发规范插件 GenerateAllSetter、ECtranslation、translation、插件
热门文章
- Mac OSX Yosemite 10.10 brew 错误:mktemp: mkdtemp failed on /tmp/git-LIPo: No such file or directory
- 浏览器启动不起来java.lang.NoClassDefFoundError: com/google/common/base/Function
- linux中设置TAB键的宽度
- 2016.3.17__ JavaScript基础_1__第十二天
- iOS 权限判断 跳转对应设置界面
- DB-MySQL:MySQL GROUP BY
- java1.8对集合中对象的特有属性进行排序
- Python学习历程之面对对象浅识
- Combo Select – jQuery可搜索下拉框插件
- 后端向服务器发送客户端请求--HttpWebRequest