diff options
author | Jan Beulich <jbeulich@suse.com> | 2013-04-10 17:30:19 +0200 |
---|---|---|
committer | Jan Beulich <jbeulich@suse.com> | 2013-04-10 17:30:19 +0200 |
commit | fe017c59c4c3ce189119954841a38ef0f1e415d0 (patch) | |
tree | 3831ce08b067dda022975f310a0102bb94567d95 /xen/include/asm-x86/msi.h | |
parent | 94d166c0106f158fa2c86496bfb0ca1fbb8627ec (diff) | |
download | xen-fe017c59c4c3ce189119954841a38ef0f1e415d0.tar.gz xen-fe017c59c4c3ce189119954841a38ef0f1e415d0.tar.bz2 xen-fe017c59c4c3ce189119954841a38ef0f1e415d0.zip |
x86/MSI: cleanup to prepare for multi-vector MSI
The major aspect being the removal of the overload of the MSI entry's
mask_base field for MSI purposes - a proper union is being installed
instead, tracking both the config space position needed and the number
of vectors used (which is going to be 1 until the actual multi-vector
MSI patches arrive).
It also corrects misleading information from debug key 'M': When
msi_get_mask_bit() returns a negative value, there's no mask bit, and
hence output shouldn't give the impression there is.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Diffstat (limited to 'xen/include/asm-x86/msi.h')
-rw-r--r-- | xen/include/asm-x86/msi.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/xen/include/asm-x86/msi.h b/xen/include/asm-x86/msi.h index 6fe67dc145..d288cfcaa2 100644 --- a/xen/include/asm-x86/msi.h +++ b/xen/include/asm-x86/msi.h @@ -100,6 +100,10 @@ struct msi_desc { union { void __iomem *mask_base;/* va for the entry in mask table */ + struct { + unsigned int nvec;/* number of vectors */ + unsigned int mpos;/* location of mask register */ + } msi; unsigned int hpet_id; /* HPET (dev is NULL) */ }; struct pci_dev *dev; |