|
技术文库首页
|
编程
|
IC
|
晶体管
|
精解
|
中频
|
其它
|
电源
|
基础
|
电脑
|
无线
|
液晶
|
微波
|
空调
|
手机
|
|
热水器
|
电动车
|
LED屏
|
焊机
|
您现在的位置: 华玉生活网 >> 技术文库 >> 无线 >> 正文>> 繁體中文

一种在U—BooT中嵌入千兆网络功能的方法,U—BOOT,千兆网,AX88180,驱动

引言U-BOOT是德国DENX小组开发的用于多种嵌入式微处理器的引导加载程序,它是系统上电后运行的第一段程序代码,用于初始化目标板硬件,为嵌入式操作系统提供目标板硬件配置信息,并装载、引导和运行嵌入式操作系统等。U—BOOT支持网络功能,在下载操作系统内核和大的文件系统时,比其它不支持网络的引导加载程序速度更快、更方便。目前U—BOOT仅支持10M/100M的网络功能,随着科学技术发展,千兆网络功能必将大量应用在嵌入式系统


引言

U-BOOT是德国DENX小组开发的用于多种嵌入式微处理器的引导加载程序,它是系统上电后运行的第一段程序代码,用于初始化目标板硬件,为嵌入式操作系统提供目标板硬件配置信息,并装载、引导和运行嵌入式操作系统等。U—BOOT支持网络功能,在下载操作系统内核和大的文件系统时,比其它不支持网络的引导加载程序速度更快、更方便。目前U—BOOT仅支持10M/100M的网络功能,随着科学技术发展,千兆网络功能必将大量应用在嵌入式系统中。本文介绍了一种让U—BOOT支持千兆网络功能的方法,可以使U—BOOT功能更加强大,使用更加方便。

U—BOOT简介

U—BOOT的全称是Universal Boot Loader,它遵循GPL条款的开放源码项目,支持多种处理器,如ARM、PowerPC、MIPS等,也支持Linux、VxWorks、QNX、RTEMS、ARTOS、LynxOS等嵌入式操作系统。

U-BOOT包含两种不同的工作模式:启动加载模式和下载模式。启动加载模式也称为自主模式,即U—BOOT从目标机上的某个固态存储设备上将操作系统加载到RAM中运行,这种模式是U—BOOT的正常工作模式。下载模式就是在开发或生产过程中,U—BOOT通过网络连接等通信手段从主机下载操作系统内核和文件系统等到目标机的RAM中,然后再写到目标机上的FLASH类固态存储设备中。U—BOOT允许用户在这两种工作模式间进行切换,系统启动时会延时等待一段时间,如果这时用户没有按键,U—BOOT就默认进入启动加载模式。

U—BOOT代码采用一种高度模块化的编程方式,可以很方便地在不同的硬件平台上进行移植。U—BOOT下包含多个目录,如图1所示。其中BOARD目录下存放了所有其支持的目标板子目录,比如BOARD/SMDK2440/就是本文将要用到的目标板;COMMON目录是与体系结构无关的文件,实现各种命令的C文件;CPU目录存放了其支持的CPU类型,比如arm920t、mips、mpc8260和nios等,每个特定的子目录中都包括cpu.c和interrupt.c、start.s;DRIVERS目录存放了各种外设接口的驱动程序,其中就包含本文用到的千兆网络的驱动程序;FS目录存放了一些文件系统,U—BOOT现在支持cramfs、fat、fdos、jffs2和registerfs;net目录存放的是与网络有关的代码,BOOTP协议、TFTP协议、RARP协议和NFS文件系统的实现,INCLUDE目录存放了一些相关头文件,还有对各种硬件平台支持的汇编文件、系统的配置文件和对文件系统支持的文件。

硬件平台

本文使用的硬件平台是基于S3C2440A的开发板和基于非PCI千兆以太网控制芯片AX88180的嵌入式网卡,如图2所示。S3C2440A是ARM920T核的16/32位RISC嵌入式微处理器,运行频率高达500MHz,开发板上有64M NAND闪存、64M SDRAM;网卡由MAC芯片AX88180、PHY芯片88E1111、RJ45等电路组成;S3C2440A目标板与网卡之间采用目标板32位扩展总线相连接,在产品设计时也可以将这两部分设计在同一块板上。

驱动程序

在U-BOOT中嵌入千兆网络功能需要设计千兆网卡驱动程序,并在U—BOOT中进行移植,在相应的硬件平台上实现通过千兆网口下载等功能。网卡驱动程序主要由初始化程序eth_init(bd_t*bd)、关闭网络设备程序eth_halt(void)、发送数据包程序eth_send(volatilevoid*packet,intlength)、接收数据包程序inteth_rx(void)等组成。初始化程序的工作主要是配置和初始化硬件,在初始化程序里可以完成对网络控制芯片AX88180和PHY芯片的配置,比如将接口设置为1000Mbps、全双工模式等。数据发送就是将上层协议打包好的数据放在发送数据缓冲区,然后由网卡发送到网络上;数据接收就是在网卡接收到网络传来的数据包产生中断后,从缓冲区将数据取出交给上层协议程序进行解包处理。中断服务程序处理网卡发送数据包后、接收到数据包后产生的中断以及PHY产生的中断等。

网卡初始化程序如下:

int eth_init(bd_t*bd)

{

memset(&axlocal,0,sizeof(AX88180_PRIVATE));

RESET_MAC;

DISABLE_INTERRUPT;

WRITE_MACREG(CMD,WAKEMOD);

tmp16=bd->bi_enetaddr[1];

macid0_val=(tmp16<<8) │ bd>bi_enetaddr[0];

tmp16=bd->bi_enetaddr[3];

macid1_val=(tmp16<<8)│ bd>bi_enetaddr[2];

tmp16=bd->bi_enetaddr[5];

macid2_val=(tmpl6<<8)│ bd>bi_enetaddr[4];

WRITE_MACREG(MACID0,macid0_val);

WRITE_MACREG(MACID1,macid1_val);

WRITE_MACREG(MACID2,macid2_val);

ax88180_PHY_initial();

ax88180_meida_config();

WRITE_MACREG(RXFILTER,DEFAULT_RXFILTER);

INT TXRX VARIABLES;

READ_MACREG(ISR,tmp_regval);

PRINTK(INIT_MSG,”ax88180;The interrupt status=0x%081x\n”.tmp_regval);

if(tmp_regval)

WRITE_MACREG(ISR,tmp_regval);

WRITE_MACREO(CMD,RXEN │ TXEN │ WAKEMOD);

return0;}

驱动移植

驱动移植是在基于S3C2440A硬件平台的U—BOOT中添加驱动程序代码和相关配置,具体如下:

1.在drivers/目录中添加网口设备驱动程序ax88180.c和ax88180.h。

2.在lib_arm/board.C中相应位置(参考CS8900)添加如下代码:

#ifdef CONFIG_DRIVER_AX88180

extern Void ax88180_get_enetaddr(uchar*addr);

#endif

#ifdef CONFIG_DRIVER_AX88180

ax88180_get_enetaddr(gd一>bd>bi_enetaddr);

#endif

3.在include/configs/smdk2440.h中相应位置(参考CS8900)添加如下代码:

#define CONFIG_DRIVER_AX88180 1 #define AX88180_BASE

Ox08000000

4.最后在drivers/Makefile中加入ax88180.o,重新编译生成U—BOOT即可。

结语

U-BOOT广泛应用在嵌入式系统中,本文阐述的方法可以使U-BOOT功能更强大、使用更方便,文中介绍的硬件平台给嵌入式系统千兆网络功能的设计提供了一定的指导。本设计虽然基于S3C2440A平台,对其它类似的系统也有很好的借鉴作用,本文介绍的方法已经在产品中得到应用,效果良好。


瑞达币购买
桂山秋竹_唐年桂2023年
桂北云雾图_唐年桂202

  • 扩展阅读
  • 上一个文章:
  • 【返回网站首页】 【返回无线】
  • 下一个文章:
  • 【字体: 】【】【发表评论】【加入收藏】【告诉好友】【打印此文
    文章 软件 电影 商品

    相关文章

    本站公告

    • 扫一扫,打赏给我们,谢谢!

      本站2016年12月16日起取消ruida.org.cn域名,该域名正式作废,该域名发布任何信息与本站无关。


      启用ruida.orghy928.net域名;

      瑞达网,瑞达科技网宣

    附页内镶内容
    健康养生 商场新品 股市K线、指标知识
     六种药酒配制法[11月7日]
     玉容西施散别名:玉容散[4月17日]
     国公酒_散风祛湿,舒筋活络[3月8日]
     气血双补党参、麦冬、黄芪炖[11月29日]
     参桂再造丸_臂丛神经痛[11月29日]
     臂丛神经痛该怎样治疗[11月29日]
     舒筋络酊、百宝丹擦剂、参桂[11月29日]
     臂丛神经痛针灸治疗[11月29日]
     枳椇子_利水渗湿药[11月29日]
     三七、丹参、西洋参_颈椎病[8月17日]
     瑞达币购买
     桂山秋竹_唐年桂2023年新作品
     桂北云雾图_唐年桂2023年新作品
     广西2019年《高考指南》+《招生计
     金士科前置过滤器
     金牛前置过滤器
     USB口24系列编程器第二版含USB延
     液晶电视、液晶显示器图纸、维修
     彩电、显示器、DVD、EVD打印机等
     高清CRT彩电、显示器图纸刻录 4G
     [理财]各种短视频赚钱方法
     [会员]专业交易实战控制系统
     [理财]1分2分5分硬币回收价格表(20250123)
     [理财]1分2分5分硬币回收价格表(20230928)
     [理财]1分2分5分硬币回收价格表(20230624)
     [理财]2022 年新版1分2分5分硬币回收价格表…
     [理财]微信收款码如何开通商业版收信用卡费…
     [指标]R平方_基金指标
     [指标]标准差_基金指标
     [指标]平均回报_基金指标
    装修案例 网站建设 电器维修
     一般水电安装几个常用尺寸[1月29日]
     三相电表接法及度数的正确读…[5月8日]
     万能通用卧室房门锁更换步骤…[2月22日]
     乳胶漆的八大施工步骤及涂刷…[2月14日]
     旧墙翻新步骤及注意事项[2月14日]
     屋面防水施工工艺流程及注意…[1月16日]
     专利产品“防污吸气帽”新产…[1月8日]
     鲁班尺吉数对照表高清图片查…[10月29日]
     砂浆胶作用与危害[9月21日]
     4种处理水泥地面起砂方法[9月21日]
     网页html点击切换显示内容完[11月7日]
     动易SiteWeaver6.6网站管理系[7月31日]
     中国阴历农历JS支持 HTML网页[2月26日]
     java script error 容错处理[2月15日]
     几款还不错的网页特效显示日[2月14日]
     图片可以调大小的代码[12月14日]
     动易SW6.8网站系统改自适应支[11月20日]
     网站建设_套餐服务[12月4日]
     网站建设-费用明细[12月4日]
     不显示出来的代码[12月3日]
     联想 小新Air 14 2019笔记本…[6月15日]
     滚筒洗衣机脱水声音大原因及…[4月17日]
     智能电视不能开机强制恢复出…[1月16日]
     各大品牌智能电视机恢复出厂…[1月16日]
     洗衣机自己排水或不存水漏水…[6月15日]
     海尔冰箱出现-03还滴滴报警[5月29日]
     TCL电视通用教程安装教程[2月2日]
     TCL L43V7300A-3D液晶彩电出…[2月2日]
     先锋液晶电视LED-32B550无光…[1月17日]
     智能电视主板的应用与维修(…[1月11日]
    电器资料 下载 读书
     手机恢复出厂设置具体操作方…[3月29日]
     三个代码让电脑提速畅通秘籍[3月13日]
     视得安750D6对讲门铃工作原理…[9月13日]
     什么是量子芯片和光子芯片[5月14日]
     沃尔沃S90汽车遥控钥匙失灵的…[1月19日]
     LED显示屏瑞合信PLus单双色全…[12月22日]
     Windows 照片查看器无法显示…[8月6日]
     已经设置IE主页,但是打开还…[7月6日]
     如何调整空压机压力?空压机…[6月8日]
     剪映-视频编辑软件手机版使用…[5月28日]
     [书籍]幼学琼林全文
     [书籍]滕王阁序_原文_注释译文_白
     [书籍]《天工开物》明代宋应星初
     [电影]《抓娃娃》高清电影
     [联想]Lenovo S540-14API Compl 
     [书籍]《墨子》原文注释译文
     [LED条屏]瑞合信单双色/全彩控制系统
     [LED条屏]LED显示屏瑞合信手机APP6.
     [书籍]全本新注聊斋志异
     [书籍]广西2023年高考指南 招生计
     黄历干支年号公元皇帝对照年[4月17日]
     广西高考2024~2022年历史类([6月25日]
     花木[4月16日]
     鸟兽[4月16日]
     释道鬼神[4月16日]
     讼狱[4月16日]
     技艺[4月16日]
     制作[4月16日]
     科第[4月16日]
     文事[4月16日]
    珠宝玉器 在线电视台
     鸡血石与鸡血玉有什么区别[6月12日]
     鸡血玉[6月12日]
     鸡血石 (bloodstone)[6月12日]
     什么是莫桑石(Moissanite)[6月12日]
     可以戴钻石洗澡吗[1月22日]
     钻石如何保养才好呢?[1月22日]
     PT容易花的问题和钻戒保养问…[1月22日]
     切工 钻石的雕刻艺术[1月22日]
     如何保养好钻戒[1月22日]
     钻戒保养方法[1月22日]
     中央体育台
     中央新闻台
     宁夏卫视
     湖北卫视
     西藏卫视
     辽宁卫视
     河北卫视
     北京卫视
     政法频道
     农民频道
     湖南经视
     湖 南 台
     河南频道
     湖南卫视
     兵团卫视
     江苏卫视
     旅游卫视
     湖南都市
     七彩戏剧
     动漫秀场
     游戏风云
     法制天地
     魅力音乐
     新 娱 乐
     南 方 TV
     浙江卫视
     齐鲁频道
     山西影视
     东南卫视
     上海卫视
     贵州电视台
     重庆电视台
     山东卫视
     哪吒之魔童闹海《哪吒2》在线
     《抓娃娃》在线电影
     流浪地球2剧情介绍
     《万里归途》完整版
     《阿凡达2:水之道》耗资3.1
     2021港剧《梅艳芳》5集全.HD
     误杀2 -电影-完整版视频在线
     亲爱的/亲爱的小孩/打拐/家之
     《第一炉香》-电影-完整版视
     《扬名立万》-电影-完整版视
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
        没有任何评论

    | 服务声明 | 充值中心| 华安五金电器 | 收费标准| 论坛| 留言| 实用查询| 会员中心| 下载帮助| 设为首页|

    技术支持:瑞达科技 即时交谈QQ:237013889 QQ群:13810759 E-Mail:237013889@qq.com
    非盈利网站,如有侵权,请来信来电告知,第一时间处理,谢谢!
    桂ICP备17008104号 华玉生活网网站统计
    tj