vxworks end驱动的调试

1.修改confignet.h中的数组END_TBL_ENTRY endDevTbl [],在其中添加要加载的end驱动的一个表项,这个表项中包含:设备单元号、load装载函数、load buffer等等。如果需要加载多个则需要全部添加到表中。
2.在usrRoot()中会对END_TBL_ENTRY endDevTbl []表中的end驱动进行初始化:
        for (count = 0, pDevTbl = endDevTbl; count < (int)(NELEMENTS(endDevTbl));
             pDevTbl++, count++)
            {
                if (pDevTbl->endLoadFunc != NULL)
                {
                    cookieTbl[count].pCookie = muxDevLoad (pDevTbl->unit, pDevTbl->endLoadFunc,
                                                   pDevTbl->endLoadString,
                                                   pDevTbl->endLoan, pDevTbl->pBSP);
                    if (cookieTbl[count].pCookie == NULL)
                        {
                        printf ("muxLoad failed!/n");
                        }
                    cookieTbl[count].unitNo=pDevTbl->unit;
                    bzero((void *)cookieTbl[count].devName,END_NAME_MAX);
                    pDevTbl->endLoadFunc((char*)cookieTbl[count].devName, NULL);

                }

            }
3.如果整个初始化过程都没有问题,接下来判断中断是否正确,是否能产生中断:
    中断的挂载是在END_TBL_ENTRY endDevTbl []中指定的load装载函数中完成的,通过在中断处理函数中加打印(不能用printf)或者点灯或者累加一个全局变量的方式来判断中断处理函数挂载的是否正确。
4.如果中断没有问题则需要判断是整个路径上什么位置出现了问题,通过配置回环(loopback)来进行判断。以FCC为例:首先在CPU FCC端配置一个loopback,把GFMR1的DIAG域配置为01,FPSMR的PRO域配置为1。如果能够ping通说明cpu端没有问题。接下来在PHY芯片配置一个loopback,以此类推,由近及远的配置loopback来判断整个通路上什么位置出现了问题。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值