你好,我现在使用的DM8168做为RC端,C6678作为EP,现在RC和EP直接数据收发都是可以的,现在主要在调试PCIE的msi中断上碰到一个问题,
具体问题描述如下:
RC端配置:
BAR0 is 51000000
BAR1 is 80000008
EP端配置:
OB_SIZE is 3
OB_OFFSET_INDEX1:0x51000000,通过pcieObTransCfg 这个函数来进行配置
连接完成后EP端MSI相关寄存器如下:
[C66xx_0] Link is up.
[C66xx_0] Read MSI Configure.
[C66xx_0] Status Command register is 0x100546[C66xx_0] MSI_CAP register is 0xb7005[C66xx_0] MSI_LOW32 raw is 0x51000054[C66xx_0] MSI_UP32 register is 0x0[C66xx_0] MSI_DATA register is 0x0
之后在EP端向0X608000054 这个地址写入0x00 这个值, *((volatile uint32_t *) 0x60800054) = 0x00 ;
在RC端检测相关寄存器:
the MSI_IRQ value is 0
the MSI0_IRQ_STATUS value is 0
the MSI0_IRQ_ENABLE_SET value is ffffffff
the MSI0_IRQ_ENABLE_CLR value is ffffffff
the IRQ_STATUS value is 0
the IRQ_ENABLE_SET value is ffffffff
the IRQ_ENABLE_CLR value is ffffffff
MSI0_IRQ_STATUS一直为0说明没有接收到中断,请问这个问题该怎么解决?我是不是缺少了别的配置?期待您的回复。
另外,插入驱动之后,显示如下信息:
01:00.0 Class 0000: Device 104c:8888 (rev 01) Flags: bus master, fast devsel, latency 0, IRQ 368 Memory at <unassigned> (32-bit, non-prefetchable) [size=8M] Memory at 20000000 (32-bit, non-prefetchable) [size=8M] Memory at <unassigned> (32-bit, prefetchable) [size=1M] Memory at <unassigned> (32-bit, prefetchable) [size=64K] Memory at <unassigned> (32-bit, prefetchable) [size=4K] Memory at <unassigned> (32-bit, prefetchable) [size=64K] Capabilities: [40] Power Management version 3 Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+ //说明MSI 已经打开
Capabilities: [70] Express Endpoint, MSI 00 Capabilities: [100] Advanced Error Reporting
Eason Wang:
move to the right forum
sichang fu:
回复 Brighton Feng:
问题已解决,是地址搞错了,谢谢回答
TI中文支持网

![AM62A7: Executing edgeai-tiovx-apps-test with [ownContextSendCmd:875] Command ack message returned failure cmd_status: -1-TI中文支持网](https://www.ti2k.com/wp-content/uploads/ti2k/DeyiSupport_DSP_pastedimage1741613950907v1.jpg)

