设为首页 加入收藏

TOP

从0移植uboot(六) _实现网络功能
2017-04-07 10:26:37 】 浏览:349
Tags:移植 uboot 实现 网络 功能

为uboot添加网卡功能可以让uboot通过tftp下载内核, 方便我们的开发, 对于网卡功能的移植,我们依然在在一遍又一遍的实践这个uboot改造的套路。


为了实现ping、tftp下载、nfs挂载等功能,必须将uboot的网卡功能配置上,这个功能属于板级功能,
README+经验+样板


需要在相应板级目录的xxx.c中配置,所以我们找到了"board/samsung/xboot/xboot.c",这个文件的入口是board_init(),即1.找到了运行逻辑


接下来就需要根据网卡手册进行配置,显然,写的都是裸板代码,这里,我们的dm9000网卡的配置代码如下,此为2.根据运行逻辑编写相应的代码


将网卡代码编写好之后,我们来分析uboot的配置逻辑,这部分的大部分内容我已经在一文中进行了介绍,这里仅介绍和网卡相关的配置文件。和通用的配置文件一样,我们首先需要将
在相关配置文件中添加网络支持,一文中已经介绍了uboot的配置原理,make config最后生成的结果文件是"include/configs/xxx.h",里面以宏的形式对板子的功能进行了配置,我们这里需要的文件是"include/configs/xboot.h"
我们只需要打开或关闭相应的宏,就可以完成对某一功能的配置


我们主要的工作就是在头文件中打开相应的宏开关,虽然不使用这种宏开关的方式也可以将功能添加成功,但是移植的一个重要原则就是尊重原架构,这对后期维护和代码重用都很有好处。


最终的结果如下, 我们可以看到dm9000已经启动了



也可以正常的加载并启动内核


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Python中的property注解 下一篇Linux i2c子系统(一) _动手写一个..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目