[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v6 10/11] pci bridge dev: change msi property type
From: |
Cao jin |
Subject: |
[Qemu-devel] [PATCH v6 10/11] pci bridge dev: change msi property type |
Date: |
Tue, 24 May 2016 12:04:48 +0800 |
>From bit to enum OnOffAuto.
cc: Michael S. Tsirkin <address@hidden>
cc: Markus Armbruster <address@hidden>
cc: Marcel Apfelbaum <address@hidden>
Signed-off-by: Cao jin <address@hidden>
---
hw/pci-bridge/pci_bridge_dev.c | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/hw/pci-bridge/pci_bridge_dev.c b/hw/pci-bridge/pci_bridge_dev.c
index 41ca47b..fa0c50c 100644
--- a/hw/pci-bridge/pci_bridge_dev.c
+++ b/hw/pci-bridge/pci_bridge_dev.c
@@ -42,9 +42,10 @@ struct PCIBridgeDev {
MemoryRegion bar;
uint8_t chassis_nr;
-#define PCI_BRIDGE_DEV_F_MSI_REQ 0
-#define PCI_BRIDGE_DEV_F_SHPC_REQ 1
+#define PCI_BRIDGE_DEV_F_SHPC_REQ 0
uint32_t flags;
+
+ OnOffAuto msi;
};
typedef struct PCIBridgeDev PCIBridgeDev;
@@ -66,7 +67,7 @@ static int pci_bridge_dev_initfn(PCIDevice *dev)
}
} else {
/* MSI is not applicable without SHPC */
- bridge_dev->flags &= ~(1 << PCI_BRIDGE_DEV_F_MSI_REQ);
+ bridge_dev->msi = ON_OFF_AUTO_OFF;
}
err = slotid_cap_init(dev, 0, bridge_dev->chassis_nr, 0);
@@ -74,7 +75,8 @@ static int pci_bridge_dev_initfn(PCIDevice *dev)
goto slotid_error;
}
- if ((bridge_dev->flags & (1 << PCI_BRIDGE_DEV_F_MSI_REQ)) &&
+ if ((bridge_dev->msi == ON_OFF_AUTO_AUTO ||
+ bridge_dev->msi == ON_OFF_AUTO_ON) &&
msi_nonbroken) {
err = msi_init(dev, 0, 1, true, true);
if (err < 0) {
@@ -147,8 +149,8 @@ static Property pci_bridge_dev_properties[] = {
/* Note: 0 is not a legal chassis number. */
DEFINE_PROP_UINT8(PCI_BRIDGE_DEV_PROP_CHASSIS_NR, PCIBridgeDev, chassis_nr,
0),
- DEFINE_PROP_BIT(PCI_BRIDGE_DEV_PROP_MSI, PCIBridgeDev, flags,
- PCI_BRIDGE_DEV_F_MSI_REQ, true),
+ DEFINE_PROP_ON_OFF_AUTO(PCI_BRIDGE_DEV_PROP_MSI, PCIBridgeDev, msi,
+ ON_OFF_AUTO_AUTO),
DEFINE_PROP_BIT(PCI_BRIDGE_DEV_PROP_SHPC, PCIBridgeDev, flags,
PCI_BRIDGE_DEV_F_SHPC_REQ, true),
DEFINE_PROP_END_OF_LIST(),
--
2.1.0
- [Qemu-devel] [PATCH v6 00/11] Add param Error ** for msi_init(), Cao jin, 2016/05/24
- [Qemu-devel] [PATCH v6 02/11] fix some coding style problems, Cao jin, 2016/05/24
- [Qemu-devel] [PATCH v6 01/11] pci core: assert ENOSPC when add capability, Cao jin, 2016/05/24
- [Qemu-devel] [PATCH v6 04/11] megasas: Fix, Cao jin, 2016/05/24
- [Qemu-devel] [PATCH v6 10/11] pci bridge dev: change msi property type,
Cao jin <=
- [Qemu-devel] [PATCH v6 03/11] change pvscsi_init_msi() type to void, Cao jin, 2016/05/24
- [Qemu-devel] [PATCH v6 09/11] megasas: change msi/msix property type, Cao jin, 2016/05/24
- [Qemu-devel] [PATCH v6 08/11] mptsas: change msi property type, Cao jin, 2016/05/24
- [Qemu-devel] [PATCH v6 05/11] mptsas: change .realize function name, Cao jin, 2016/05/24
- [Qemu-devel] [PATCH v6 11/11] pci: Convert msi_init() to Error and fix callers to check it, Cao jin, 2016/05/24
- [Qemu-devel] [PATCH v6 06/11] usb xhci: change msi/msix property type, Cao jin, 2016/05/24
- [Qemu-devel] [PATCH v6 07/11] intel-hda: change msi property type, Cao jin, 2016/05/24
- Re: [Qemu-devel] [PATCH v6 00/11] Add param Error ** for msi_init(), Cao jin, 2016/05/31