VxWorks6.6 pcPentium BSP 使用说明(一):基本概念

“VxWorks6.6 BSP 使用说明”将公布pcPentium和idp945两个系列的BSP的使用说明。每一个系列约5篇文章。

之后还将公布由这两个官方提供的BSP的实战移植方法。

本说明适用范围

pcPentium/2/3/4 - 386/486 和 Pentium/2/3/4

引言

该參考文档提供执行pcPentium,pcPentium2,pcPentium3和pcPentium4的VxWorks BSP的板卡特性信息。

在板卡上执行VxWorks之前,核实板卡执行在正确的配置,通过检測是否採用原厂ROM。是否设置正确的跳线和连接串口读取配置信息。

请注意,pc386,pc486,pcPentium。pcPentium2,pcPentium3和pcPentium4的BSP是针对通用PC机主板的通用BSP包。

为了达到最佳效果。本文档应结合板卡供应商的说明文档一起使用。

假设此BSP(pcPentium4)是用于一些特定的目标板,包含英特尔E7520芯片组(Allagash)。那么vxBus串行驱动的支持是必需的。若想以WDB连接方式通过不论什么串行port加载bootrom和系统镜像,都必须配置支持vxBus串行驱动程序。见第3节使用vxBus串行驱动的说明:“创建一个BootROM镜像”。

引导过程

当一个标准的採用AT电源方式的计算机开机时,系统的BIOS代码会被载入并引导运行。引导载入程序是基于8088的16位汇编语言。

BIOS从引导扇区引导启动,这可能是例如以下几种方式:软盘,硬盘,或一些其它的介质如ROMCARD或TFFS卡。

BIOS找到引导载入器后将转交给其继续运行。引导载入程序找到bootrom.sys文件,将它载入内存。并跳转到romInit開始运行。

TrueFFS支持

该BSP支持TrueFFS及其配置。要使用TrueFFS,安装软件并在BSP的config.h文件里定义包括INCLUDE_TFFS

TrueFFS被设计为使用M - Systems公司的DiskOnChip 2000(闪存)和双PCMCIA插槽的採用dosFs的磁盘驱动。

假设你想从DiskOnChip启动。更改config.hSYS_WARM_TYPE的定义,由SYS_WARM_FD变为SYS_WARM_TFFS

“无线局域网支持”

该BSP支持可选的无线局域网芯片创锐讯(Atheros)AR521X MAC。为了启用无线局域网支持,安装硬件并配置BSPconfig.h文件包括定义INCLUDE_AR521X_END

启动镜像

通常AT电源方式PC的典型启动方式採用的是的启动盘而不是启动芯片。启动盘包含启动扇区(0扇区)和一个有启动镜像文件bootrom.sys的DOS文件系统。该引导映像能够是例如以下几种形式之中的一个。注意。project会建立vxWorks_romCompress.bin和vxWorks_romResident.bin。 VxWorks_rom.bin能够被project或者命令行建立。

其它镜像由个命令行建立。

    镜像  
镜像名称 说明 压缩 镜像载入

vxWorks_rom.bin 可引导的VxWorks 高内存
vxWorks.st_rom.bin 可引导的vxWorks.st 高内存
bootrom.bin 引导镜像 高内存
bootrom_uncmp.bin 引导镜像 高内存
vxWorks_romCompress.bin 可引导的VxWorks 高内存
vxWorks_romResident.bin 可引导的VxWorks 低内存

VxWorks.st是一个包括基本命令行。符号表和网络接口的独立完整镜像。只是请注意,网络接口没有初始化。

引导映像必须被拷贝到软盘(A:)或IDE硬盘(C:)中,使用DOS引导工具“mkboot.bat”,或VxWorks的引导工具“mkbootFd”(对软盘),或“mkbootAta”(对硬盘)。

请注意。为避免又一次启动的问题,适当地调整工作区中的SYS_WARM_TYPE參数并确保參数更新应用到project中。默认是採用软盘启动。

在主机端制作启动盘包含两个步骤。

创建BootROM的镜像文件,并准备启动盘。

创建一个BootROM镜像

1、首先从6种支持的启动镜像中选择合适的并改变扩展名为.bin,如vxWorks_rom.bin,vxWorks.st_rom.bin。bootrom.bin和bootrom_uncmp.bin。请记住,低内存启动映像(vxWorks_romResident.bin)不得大于640KB。

2、选择一个适当的引导方式,通过Workbench定义DEFAULT_BOOT_LINE,或直接在config.h中定义。

DEFAULT_BOOT_LINE的示比例如以下:

"fei(0,0)host:/path/name/vxWorks h=90.0.0.3 e=90.0.0.50 u=bob"(通过网络下载引导启动)"fd=0,0(0,0)host:/fd0/vxWorks e=90.0.0.50 u=jane o=fei"(通过软盘引导启动)"ata=0,0(0,0)host:/ata0disk0/vxWorks e=90.0.0.50 u=steve o=fei"(通过IDE硬盘0通道主盘引导启动)"ata=0,1(0,0)host:/ata0disk1/vxWorks.st"(通过IDE硬盘0通道从盘引导启动)

3、假设要创建一个基于E7520芯片组目标板的引导镜像。如英特尔 bAllagash,必要改动config.h配置以包含vxBus和16550串口支持。DEFAULT_BOOT_LINE定义后增加下面行。

#define INCLUDE_VXBUS #define INCLUDE_SIO_UTILS #define DRV_SIO_NS16550 #define INCLUDE_PARAM_SYS#define INCLUDE_HWMEM_ALLOC #define INCLUDE_PLB_BUS #define INCLUDE_PCI_BUS #define INCLUDE_PENTIUM_PCI #define HWMEM_POOL_SIZE 50000

3、通过在BSP文件夹下执行“make image_name”来编译启动镜像或阅读Wind River Workbench User's Guide来引导如何通过Workbench编译一个可启动的镜像。

准备一个启硬盘/软盘。

4、引导载入器在软盘上搜索的文件bootrom.sys。

扩展名为.bin的引导文件能够被重命名为bootrom.sys。

而全部其它的启动镜像则须要一个转换工具来转换为bootrom.sys。

原文地址:https://www.cnblogs.com/yjbjingcha/p/6823967.html