工具与软件:
您好!
我正在尝试从 C6657端点(EP)向远程根复合体 PCIe 器件发送 MSI 中断、但在根复合体端不会发生 MSI 中断。
这是我做了什么:
1.在 C6657端点上、我将 PCIe 出站转换设置为远程 PCIe 根复合体设备的 BAR0地址(0xE0000000)。
2.在 C6657端点上、我将 MSI_ENABLE = 1和 MSI Lower Address Register 设置为远程 PCIe 根复合体设备的 BAR0地址(0xE0000000)、如下所示。
msiCapReg.msiEn = 0x01;
msiLoReg.addr = 0xE0000000;
msiUpReg.addr = 0x00000000;
msiDataReg.data = 0x00;
//将更新后的状态写回
如果((RetVal = PCIe_writeRegs (PCIe_handle、PCIe_location_local、®s))!= PCIe_RET_OK){
//错误、适当处理。
}
3.在 C6657端点上、我对 PCIe BAR0基址(0x6000000)+ MSI IRQ 偏移(0x54)启动 MSI 中断、如下所示:
//发送中断。
*((volatile u32*) 0x60000054)= 0x00;
我是不是做错了什么我丢失了????
感谢您的帮助。
Jan