当前位置: 代码迷 >> VxWorks >> vxworks的pci驱动有关问题 vxbus
  详细解决方案

vxworks的pci驱动有关问题 vxbus

热度:698   发布时间:2016-04-28 11:31:23.0
求助vxworks的pci驱动问题 vxbus
目前在vxwork下面做一个pci板子的驱动 当前目标是读写寄存器 用的是vxbus 系统是64位的
首先在BSP中注册用有dr dc mk .c IMAGE里面没有注册这个硬件
(struct vxbDevRegInfo *)NULL,
VXB_DEVID_DEVICE,
VXB_BUSID_PCI,
VXB_VER_5_0_0,
"pcie",
&PciExFuncs,
PciEx_methods,
NULL,    
NULL
},      
NELEMENTS(DevIDList),     
DevIDList
然后在PciExInstInit2 里面做了初始化和映射
vxbRegMap(pInst, 0, &pDrvCtrl->regHandle);
启动vxwork系统以后 通过串口输出调试 用vxbusshow能够看到这个硬件的信息
pInst->pRegBase[0]这个里面是有地址的,这个应该就是basememory吧?0xffff800024021000
我当时也注册了两个method用来给应用调用 分别是read和write
我在image的usrAppInit函数里面用vxbDevMethodRun
vxbDevMethodRun(DEVMETHOD_CALL(busCtlrDevCfgWrite),19) != OK)
发现vxbDevMethodRun返回是成功的 但是没有进入我自己写的write函数
如果在BSP的usrAppInit函数里面用vxbDevMethodRun去write一个值 vxwork启动的时候在bsp那里就会报错
PciExMethodDevCfgWrite函数内容如下 addr是我用来测试的一个offset 是可以进行read和write的
vxbWrite64 (PCIEX_HANDLE(pDev),
        (UINT64 *)((UINT64)pDev->pRegBase[0] + (UINT64)addr),
        data);

vxworks

------解决方案--------------------

------解决方案--------------------
坐在镜像里就可以了 ,镜像是包含BSP的
最好是做一个DOWNLOAD,方便调试
  相关解决方案