linux 2440网卡驱动,【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、加入蓝色区域内的代码

861decbae3f62ae4de84098da43108eb.png

2、加入蓝色区域内的代码

d981fb9f7e9eaf87c1373e706aee6425.png

302a9fee17e925ef50641562acb9ab16.png

3、加入蓝色区域内的代码

e0e46865c1d5615954c55d122475c54e.png

以下是改动drives/net/dm9000.c文件

4、加入蓝色区域的代码

398e6774b5fd7c1067d68a681108fe12.png

5、加入蓝色区域的代码

bd85ba2f94b2b609f5996a5efa197b2c.png

6、加入蓝色区域的代码

bc5bb2bc9b3e80c463754bfe241506c3.png

7、加入蓝色区域的代码

84cb4abdcc4b03b4e501f3d901e92b0c.png

8、加入蓝色区域的代码

7794a7216a677c9914d5ada5a79f4fc7.png

9、加入蓝色区域的代码

87b1c20cc0e817ae6a607e2bca4c2f20.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值