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

keystoneII网卡发送中断到底报到哪里?

在示例程序中,网卡发送队列采用了648,channel用了8,当向648号push一个descriptor后,发送成功后,中断报到哪里去了?是netcp的pktdma的disctributor,还是qmss的,还是会直接上报给cpu?
谢谢。

Thomas Yang1:

不知道你用的是K2哪款DSP,建议可以查找该款DSP对应的datasheet,在interrupt 这章可以找到该event的路由对应关系。

dapeng lv:

回复 Thomas Yang1:

您好,我用的是66ak2h14的arm核心,我现在的理解是netcp的pktdma发现tx ch非空后,就会从队列中去除descriptor,然后启动dma发送。那么完成后,这个中断应该通过netcp中的pktdma的distributor报上来给cpu,这样理解对么?如果是这样的,根据手册,那就应该是313。

dapeng lv:

看到multicore nacigator手册2.6中提到"11.After the packet descriptor pointer has been written, the queue manager will indicate the status of the TX completion queues to …..",那看来是由qm向上报中断了?那就是在qmss的 interrupt distributor 中了?

Andy Yin1:

回复 dapeng lv:

648是专用TXQ,不会产生中断到外部,一旦648中有描述符,且NETCP相应的channel是free,就会自动取走描述符处理。

Thomas Yang1:

回复 dapeng lv:

313 应该是指PA PacketDMA 的starvation event,

313 NETCP_PKTDMA_INT0 Packet Accelerator Packet DMA starvation interrupt

按QMSS starvation event理解,这个是接收侧的event。

dapeng lv:

回复 Andy Yin1:

那发送完成这个事件应该是要通过中断报告给cpu,如果648不报中断,那可以由谁报给cpu呢?谢谢

Andy Yin1:

回复 dapeng lv:

648是专用TxQ,讲报文放到TxQ会自动由NETCP取走,取走处理完后会将描述符回收到指定的ReturnQ,如果你要及时知道放进去的报文已经被取走,可以指定returnQ为可以产生中断的queue,如accumulator Queue,但是一般没有必要在发送侧产生中断,只要后面需要再次发送报文时从returnQ中获取描述符即可,如果有可用描述符则可以继续发包,如果没有则说明报文还为发送成功。

赞(0)
未经允许不得转载:TI中文支持网 » keystoneII网卡发送中断到底报到哪里?
分享到: 更多 (0)