liuhaifeng0209
驱动牛犊
驱动牛犊
  • 注册日期2007-01-15
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分60分
  • 威望7点
  • 贡献值0点
  • 好评度6点
  • 原创分0分
  • 专家分0分
阅读:2131回复:1

VxWorks的设备枚举问题

楼主#
更多 发布于:2008-01-09 10:26
我现在所用的平台是一块X86的板卡。上面有一个CPCI的桥片PCI6466。在BIOS进行枚举的时候已经给这个设备分配了大小和基地址,我现在想通过软件来修改其配置的空间的大小,所以要对总线重新进行一次扫描。利用函数pciAutoConfig()。但是里面的对于X86平台下对PCI设备的基地址分配不知道如何去做。比如结构体(定义在pciAutoConfig.h中):
typedef struct pciSystem /* PCI_SYSTEM, auto configuration info */
    {
    UINT pciMem32;        /* 32 bit prefetchable memory location */
    UINT pciMem32Size;        /* 32 bit prefetchable memory size */
    UINT pciMemIo32;        /* 32 bit non-prefetchable memory location */
    UINT pciMemIo32Size;    /* 32 bit non-prefetchable memory size */
    UINT pciIo32;        /* 32 bit io location */
    UINT pciIo32Size;        /* 32 bit io size */
    UINT pciIo16;        /* 16 bit io location */
    UINT pciIo16Size;        /* 16 bit io size */

中的这几个地址应该如何去分配,我现在不是很清楚。
希望那位大哥给予指点。谢谢!
hwybird
论坛版主
论坛版主
  • 注册日期2006-11-11
  • 最后登录2010-08-31
  • 粉丝0
  • 关注0
  • 积分988分
  • 威望359点
  • 贡献值0点
  • 好评度96点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2008-05-18 15:41
为什么要自己枚举呢?这些地址的Size是根据硬件决定的,基地址在4G空间内随意放置,通常大于物理内存。映射时VxWorks会帮你决定是否映射成功,映射成功后即可将基地址写回到板卡上。
游客

返回顶部