title: How can I get the corresponding MSI message in an interrupt?
body: <p>We are using an FPGA on a PCIe card. I am able to reserve the proper resources and the MSI interrupt fires correctly. My problem is discerning the interrupt sources from: My Linux driver receives only a single MSI interrupt for different interrupt sources from the FPGA. Therefore the FPGA guys are sending the reason coded in the MSI message over the bus. </p>
  
  <p><strong>Questions:</strong> </p>
  
  <ol>
  <li>Is there a possibility to access this message in order to get the information out of this frame in my ISR? (I know I could always check the FPGA's interrupt status register, but using the MSI message would be more elegant and would avoid additional bus access.)</li>
  <li>If 1 is not possible, would switching to MSI-X solve this problem, so that I could get the information directly? (I know that MSI-X is the preferred solution, but the FPGA guys specified MSI)</li>
  </ol>
  
  <p>Thank you for your help!</p>