基于PPC8247的8841网络芯片移植与挂接详解
需积分: 9 28 浏览量
更新于2024-09-11
收藏 456KB DOCX 举报
本文档详细介绍了基于PPC8247芯片的网络芯片8841在VxWorks操作系统中的移植与挂接流程。首先,网络设备的初始化过程被分解为boot阶段和系统启动后两个阶段,其中motfcc设备和884x设备的初始化方式类似,但分别处理。在bootrom的初始化阶段,如syslib.c中的sysKs884xPciInit函数负责8841的PCI接口上电扫描,配置内存和IO地址空间,同时设置寄存器,使用PCI底层API函数进行读写操作。
在系统启动加载完成后,usrEndLibInit函数负责8841的加载,这部分代码主要集中在prjConfig.c文件中,而不是usrConfig.c。在这个过程中,endDevTbl变量作为END_TBL_ENTRY结构体起到了关键作用,它控制了884x芯片在BSP阶段的初始化时机,即在VxWorks操作系统加载完毕后再进行。
特别值得注意的是,884x设备的挂载实际上是在bootrom阶段之后,由sysKs884xEndLoad函数负责。这个函数首先通过muxDevLoad进行试探性加载,通过检查endLoad参数来判断设备是否已经在表中存在,若不存在,则会进一步执行设备的真正装载和挂接。整个过程强调了对设备加载顺序的管理和对硬件资源的正确配置。
通过这篇文章,读者可以了解到8841网络芯片在VxWorks环境下如何与PPC8247平台无缝集成,以及初始化和挂接过程中涉及的关键函数和数据结构,这对于理解类似网络芯片的移植和系统集成具有很高的参考价值。
2022-07-06 上传
2012-04-19 上传
2012-02-29 上传
2014-01-06 上传
120 浏览量
2022-09-22 上传
123 浏览量
2022-09-21 上传
2020-10-24 上传
xiaochubing20023
- 粉丝: 6
- 资源: 19
最新资源
- Android圆角进度条控件的设计与应用
- mui框架实现带侧边栏的响应式布局
- Android仿知乎横线直线进度条实现教程
- SSM选课系统实现:Spring+SpringMVC+MyBatis源码剖析
- 使用JavaScript开发的流星待办事项应用
- Google Code Jam 2015竞赛回顾与Java编程实践
- Angular 2与NW.js集成:通过Webpack和Gulp构建环境详解
- OneDayTripPlanner:数字化城市旅游活动规划助手
- TinySTM 轻量级原子操作库的详细介绍与安装指南
- 模拟PHP序列化:JavaScript实现序列化与反序列化技术
- ***进销存系统全面功能介绍与开发指南
- 掌握Clojure命名空间的正确重新加载技巧
- 免费获取VMD模态分解Matlab源代码与案例数据
- BuglyEasyToUnity最新更新优化:简化Unity开发者接入流程
- Android学生俱乐部项目任务2解析与实践
- 掌握Elixir语言构建高效分布式网络爬虫