1.芯片中支持3种模式:
a.legacy interrupt,MSI,MSI-X with a single vector
b.MSI-X in non-VT mode
c.MSI-X in VT mode
2.中断相关寄存器
在芯片中最多支持64个VF,EIAC(extended interrupt auto clear enable)寄存器只有16bit,不像其他的寄存器要包含2个寄存器(64bit),因为中断16-63会硬件自动清0,不受其他使能的控制;而中断0-15会受到此寄存器的控制.
3.VF register
VF中断寄存器有3个entry,分别代表一个interrupt cause.VF相关的中断都是自动清除的,因此它不需要VFEIAC寄存器.尽管每个VF可以最多产生3个中断,但是只有两个具备中断汇聚的功能,并且与VFEITR有关.
中断mapping相关的寄存器是VFIVAR和VFIVAR_MISC.
4.PF中断寄存器介绍
a.extended interrupt cause(EICR) register
此寄存器用来记录产生的中断,给软件提供中断源相关的信息.每次产生一个中断之后,相应的bit都会置起;中断的使能通过EIMS寄存器控制.可能的中断源如下:
1).每个RTXQ代表如下的事件:TX/RX描述符回写,RX描述符队列满,RX队列描述符个数达到最小阈值.
RTXQ中断汇聚会受到ITR/LLI控制.中断置起之后,软件不能区分出来是ITR中断还是LLI中断.
b.extended Interrupt Cause set(EICS) register
此寄存器使软件能够产生硬件中断.同时,EICS设置同样会影响到RSC功能:
a.ITR模式:与任何rx报文一样,会影响到RSC完成和中断断言(置位);
b.LLI模式:与任何LLI rx报文一样,会影响到RSC完成和中断断言(置位);
网卡芯片中断处理梳理
最新推荐文章于 2024-03-09 11:15:24 发布