目录
1.关于使用U-Boot启动VxWorks
对于ARM和PowerPC系统,可以使用第三方的U-Boot启动VxWorks。ARM和PowerPC的BSP都是用DTB文件将设备访问信息从BSP代码中分离出来。U-Boot作为ARM和PowerPC的标准启动程序,可以使用独立的DTB文件。
2.获取与构建U-Boot
U-Boot源码可从DENX获得。在使用U-Boot启动VxWorks镜像之前,需要首先在主机上安装和构建U-Boot。
(1)准备工作
在获取与构建U-Boot之前,需要在主机上安装如下软件:
- git
- 交叉开发环境(提供针对开发板的SDK)
- 以RPM形式提供的风和U-Boot补丁
(2)执行过程
a)下载U-Boot源码
执行如下命令:
$ git clone git://git.denx.de/u-boot.git
b)构建U-Boot二进制文件
执行如下命令构建U-Boot二进制文件:
$ make distclean CROSS_COMPILE=path_to_your_cross_build_tools
$ make your_board_config ARCH=path_to_your_cross_build_tools
$ make ARCH=your_arch CROSS_COMPILE=path_to_your_cross_build_tools
最后需要将该二进制文件加载到板子上的可启动介质中去。
3.使用U-Boot启动VxWorks
根据VxWorks镜像的结构,U-Boot提供了不同的启动选项。
在构建VxWorks内核镜像时,在BSP目录下必须有一个可供使用的DTB文件。VxWorks内核镜像必须使用默认的ELF格式,并且命名为VxWorks。
过程描述:
(1)使用objcopy工具将VxWorks内核镜像由ELF格式转换为二进制格式;
- 对于ARM架构,执行如下命令:
$ objcopyarm -O binary vxWorks vxWorks.bin
- 对于PPC架构,执行如下命令:
$ objcopyppc -O binary vxWorks vxWorks.bin
(2)将U-Boot镜像头部添加到VxWorks二进制文件中;
VxWorks提供mkimage工具,用于生成VxWorks.uboot文件。
mkimage工具包括如下选项:
- -A:设置架构
- -O:设置OS
- -T:设置镜像类型
- -C:设置压缩类型
- -a:设置加

本文详细介绍了如何使用U-Boot启动VxWorks实时操作系统,涵盖了从U-Boot的获取与构建,到使用U-Boot启动VxWorks的各种方法,包括使用独立的DTB文件和嵌入DTB文件的方式,以及如何准备和启动存放在ROM中的镜像。
最低0.47元/天 解锁文章
3065

被折叠的 条评论
为什么被折叠?



