On 11/20/2023 2:15 AM, Kang Yang wrote: > The reservation mode of interrupts in kernel assigns a dummy vector > when the interrupt is allocated and assigns a real vector when the > request_irq is called. The reservation mode helps to ease vector > pressure when devices with a large amount of queues/interrupts are > initialized, but only a minimal subset of those queues/interrupts > is actually used. > > So on reservation mode, the msi_data may change after request_irq is > called, then it will lead to spurious interrupt. But when VT-d in > BIOS is enabled and ath12k can get 32 MSI vectors, ath12k always get > the same msi_data before and after request_irq. > > So in case of one MSI vector, ath12k need read msi_data again after > request_irq is called, and then the correct msi_data is programmed > into WCN7850 hardware components. > > Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.0-03427-QCAHMTSWPL_V1.0_V2.0_SILICONZ-1.15378.4 > > Signed-off-by: Kang Yang <quic_kangyang@xxxxxxxxxxx> Acked-by: Jeff Johnson <quic_jjohnson@xxxxxxxxxxx>