On Sat, Dec 03, 2011 at 12:17:26PM +0100, Jan Kiszka wrote: > From: Jan Kiszka <jan.kiszka@xxxxxxxxxxx> > > Rename msix_supported to msi_supported and control MSI and MSI-X > activation this way. That was likely to original intention for this > flag, but MSI support came after MSI-X. > > Signed-off-by: Jan Kiszka <jan.kiszka@xxxxxxxxxxx> Acked-by: Michael S. Tsirkin <mst@xxxxxxxxxx> This patch should go into qemu.git, right? > --- > hw/msi.c | 8 ++++++++ > hw/msi.h | 2 ++ > hw/msix.c | 9 ++++----- > hw/msix.h | 2 -- > hw/pc.c | 4 ++-- > 5 files changed, 16 insertions(+), 9 deletions(-) > > diff --git a/hw/msi.c b/hw/msi.c > index f214fcf..5d6ceb6 100644 > --- a/hw/msi.c > +++ b/hw/msi.c > @@ -36,6 +36,9 @@ > > #define PCI_MSI_VECTORS_MAX 32 > > +/* Flag for interrupt controller to declare MSI/MSI-X support */ > +bool msi_supported; > + > /* If we get rid of cap allocator, we won't need this. */ > static inline uint8_t msi_cap_sizeof(uint16_t flags) > { > @@ -116,6 +119,11 @@ int msi_init(struct PCIDevice *dev, uint8_t offset, > uint16_t flags; > uint8_t cap_size; > int config_offset; > + > + if (!msi_supported) { > + return -ENOTSUP; > + } > + > MSI_DEV_PRINTF(dev, > "init offset: 0x%"PRIx8" vector: %"PRId8 > " 64bit %d mask %d\n", > diff --git a/hw/msi.h b/hw/msi.h > index 5766018..3040bb0 100644 > --- a/hw/msi.h > +++ b/hw/msi.h > @@ -24,6 +24,8 @@ > #include "qemu-common.h" > #include "pci.h" > > +extern bool msi_supported; > + > bool msi_enabled(const PCIDevice *dev); > int msi_init(struct PCIDevice *dev, uint8_t offset, > unsigned int nr_vectors, bool msi64bit, bool msi_per_vector_mask); > diff --git a/hw/msix.c b/hw/msix.c > index b15bafc..8850fbd 100644 > --- a/hw/msix.c > +++ b/hw/msix.c > @@ -12,6 +12,7 @@ > */ > > #include "hw.h" > +#include "msi.h" > #include "msix.h" > #include "pci.h" > #include "range.h" > @@ -32,9 +33,6 @@ > #define MSIX_MAX_ENTRIES 32 > > > -/* Flag for interrupt controller to declare MSI-X support */ > -int msix_supported; > - > /* Add MSI-X capability to the config space for the device. */ > /* Given a bar and its size, add MSI-X table on top of it > * and fill MSI-X capability in the config space. > @@ -212,10 +210,11 @@ int msix_init(struct PCIDevice *dev, unsigned short nentries, > unsigned bar_nr, unsigned bar_size) > { > int ret; > + > /* Nothing to do if MSI is not supported by interrupt controller */ > - if (!msix_supported) > + if (!msi_supported) { > return -ENOTSUP; > - > + } > if (nentries > MSIX_MAX_ENTRIES) > return -EINVAL; > > diff --git a/hw/msix.h b/hw/msix.h > index 7e04336..5aba22b 100644 > --- a/hw/msix.h > +++ b/hw/msix.h > @@ -29,6 +29,4 @@ void msix_notify(PCIDevice *dev, unsigned vector); > > void msix_reset(PCIDevice *dev); > > -extern int msix_supported; > - > #endif > diff --git a/hw/pc.c b/hw/pc.c > index 9328ee5..5225d5b 100644 > --- a/hw/pc.c > +++ b/hw/pc.c > @@ -36,7 +36,7 @@ > #include "elf.h" > #include "multiboot.h" > #include "mc146818rtc.h" > -#include "msix.h" > +#include "msi.h" > #include "sysbus.h" > #include "sysemu.h" > #include "blockdev.h" > @@ -896,7 +896,7 @@ static DeviceState *apic_init(void *env, uint8_t apic_id) > apic_mapped = 1; > } > > - msix_supported = 1; > + msi_supported = true; > > return dev; > } > -- > 1.7.3.4 -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html