windml相关知识和图形设备驱动程序开发

windml相关知识和图形设备驱动程序开发

ID:20534303

大小:32.50 KB

页数:4页

时间:2018-10-13

windml相关知识和图形设备驱动程序开发_第1页
windml相关知识和图形设备驱动程序开发_第2页
windml相关知识和图形设备驱动程序开发_第3页
windml相关知识和图形设备驱动程序开发_第4页
资源描述:

《windml相关知识和图形设备驱动程序开发》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、WindML相关知识和图形设备驱动程序开发WindML相关知识和图形设备驱动程序开发2.5VxWorksBSP需要典型地,必须修改VxWorksBSP来满足能够使用图形和输入设备的需要。由于Vxworks支持的目标板和处理器比较多,不可能详细说明每个BSP所要修改的东西,下面将描述一些通用的修改:2.5.1图形设备内存映射一个图形设备有两个基本组件:n帧缓冲器n一个或多个控制器帧缓冲器是一个内存块,用来存储要显示的图形数据。控制器包括图形处理器、RAMDACs和时钟芯片。取决于图形设备,有的控制器不

2、用或者集成到单个控制器中。帧缓冲器和每个控制器对于处理器必须是可见的,访问它们根据不同的处理器结构,可以是内存访问、IO访问或者二者结合来访问。要使得处理器能够访问图形设备,必须修改BSP的两个部分:n必须使能设备物理映射n必须使能逻辑或虚映射需要根据处理器、图形设备和总线结构类型来做出准确的修改。物理映射物理映射包括使能地址映射器来解码图形设备所驻留的物理地址。图形控制器的映射取决于图形控制器的类型、处理器结构和VxworksBSP。WindML没有限制图形设备所用的总线结构,总线可以是CPU内部

3、总线、ISA、PCI、AGP、VME总线等。PCI总线PCI规范允许使用标准方法来使图形设备被映射到PCI内存空间。系统启动时,初始化程序负责分配PCI内存给每个PCI设备,初始化程序可以是厂商的启动代码或者是包含在Vxworks初始化程序中。有的厂商有类似于BIOS功能的固件,它可以把控制权交给Vxworks引导程序。比如,在X86处理器上,主板上的BIOS来实现内存映射。当BSP支持PCI总线的自动配置时,就可以使用这个功能来映射图形设备到处理器内存。WindML相关知识和图形设备驱动程序开发《

4、续》2.5VxWorksBSP需要典型地,必须修改VxWorksBSP来满足能够使用图形和输入设备的需要。由于Vxworks支持的目标板和处理器比较多,不可能详细说明每个BSP所要修改的东西,下面将描述一些通用的修改:2.5.1图形设备内存映射一个图形设备有两个基本组件:n帧缓冲器n一个或多个控制器帧缓冲器是一个内存块,用来存储要显示的图形数据。控制器包括图形处理器、RAMDACs和时钟芯片。取决于图形设备,有的控制器不用或者集成到单个控制器中。帧缓冲器和每个控制器对于处理器必须是可见的,访问它们根

5、据不同的处理器结构,可以是内存访问、IO访问或者二者结合来访问。要使得处理器能够访问图形设备,必须修改BSP的两个部分:n必须使能设备物理映射n必须使能逻辑或虚映射需要根据处理器、图形设备和总线结构类型来做出准确的修改。物理映射物理映射包括使能地址映射器来解码图形设备所驻留的物理地址。图形控制器的映射取决于图形控制器的类型、处理器结构和VxworksBSP。WindML没有限制图形设备所用的总线结构,总线可以是CPU内部总线、ISA、PCI、AGP、VME总线等。PCI总线PCI规范允许使用标准方法

6、来使图形设备被映射到PCI内存空间。系统启动时,初始化程序负责分配PCI内存给每个PCI设备,初始化程序可以是厂商的启动代码或者是包含在Vxworks初始化程序中。有的厂商有类似于BIOS功能的固件,它可以把控制权交给Vxworks引导程序。比如,在X86处理器上,主板上的BIOS来实现内存映射。当BSP支持PCI总线的自动配置时,就可以使用这个功能来映射图形设备到处理器内存。然而不幸的是,并不是所有的处理器和VxworksBSP都支持这种PCI设备的映射。当PCI设备不能映射到PCI内存空间时,就

7、必须修改sysLib.c文件来映射PCI图形设备到一个可用的PCI内存空间。当为PCI设备发现一个安全的内存区时,就必须设置PCI配置头的基地址(偏移量为0x10)。下面这段代码说明了TviaIGS-5050图形设备该如何分配位置:/*FirstthePCIbusmustbeprobedtolocatethedevice*/if(pciFindDevice(UGL_PCI_IGS_ID,UGL_PCI_IGS5050_CHIP_ID,instance,&busno,&devno,&funcno)==

8、OK){/*Devicefound,setthebaseaddress*/pciConfigOutLong(busno,devno,funcno,PCI_CFG_BASE_ADDRESS_0,baseAdrs);/*EnableI/Oandmemoryaccess*/pciConfigOutWord(busno,devno,funcno,PCI_CFG_COMMAND,PCI_CMD_IO_ENABLE

9、PCI_CMD_MEM_ENABLE);}else/*Error

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。