TI中文支持网
TI专业的中文技术问题搜集分享网站

执行regrw.out写寄存器时卡死

最近我们测算发现程序执行到这条语句会卡住不再继续执行下去:system("regrw.out -w 1c71c7c 0x120 > /dev/null\n");  一旦卡住,会导致运行该语句的进程

CPU占用率达90%以上,大概是每20次左右会出现一次卡死。

0x1c717c对应寄存器:OSD模块 Bitmap Window 1 Y-Position (OSDWIN1YP)。

我们程序是基于Appro IPNC方案Private_IPNC_DM368_1.9.0。

SDK版本:dvsdk_2_10_01_18。

 

Regrw.out命令的主要源码如下:

regAddr = xstrtoi(argv[2]);

regValue = xstrtoi(argv[3]);

 

  status = CSL_vpssOpen(&gCSL_vpssHndl);

  if(status!=OSA_SOK) {

    OSA_ERROR("CSL_sysInit()\n");

    return status;

  }

 

  if(regDump) {

    DRV_regDump(regAddr, numRegs, numCols);

  } else {

    DRV_regWrite(regAddr, regValue);

  }

 

  status = CSL_vpssClose(&gCSL_vpssHndl);

 

测试发现程序是卡死在if(regDump) 之前了,这个函数主要操作是把寄存器的物理地址映射成虚拟地址。

user1369122:

Hi , 不是很清楚你的具体操作。请问和regrw去操作的具体寄存器地址有关吗。我担心你去操作的寄存器的那个模块可能并没有正确的初始化,比如时钟电源都没有正常加上去之类的,这样去读写肯定不行

赞(0)
未经允许不得转载:TI中文支持网 » 执行regrw.out写寄存器时卡死
分享到: 更多 (0)