[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v6 11/12] x3130/upstream: support aer
From: |
Isaku Yamahata |
Subject: |
[Qemu-devel] [PATCH v6 11/12] x3130/upstream: support aer |
Date: |
Wed, 20 Oct 2010 17:19:00 +0900 |
add aer support.
Signed-off-by: Isaku Yamahata <address@hidden>
---
hw/xio3130_upstream.c | 15 ++++++++++-----
1 files changed, 10 insertions(+), 5 deletions(-)
diff --git a/hw/xio3130_upstream.c b/hw/xio3130_upstream.c
index d9d637f..36ed4b1 100644
--- a/hw/xio3130_upstream.c
+++ b/hw/xio3130_upstream.c
@@ -38,10 +38,13 @@
static void xio3130_upstream_write_config(PCIDevice *d, uint32_t address,
uint32_t val, int len)
{
+ uint32_t uncorsta =
+ pci_get_long(d->config + d->exp.aer_cap + PCI_ERR_UNCOR_STATUS);
+
pci_bridge_write_config(d, address, val, len);
pcie_cap_flr_write_config(d, address, val, len);
msi_write_config(d, address, val, len);
- /* TODO: AER */
+ pcie_aer_write_config(d, address, val, len, uncorsta);
}
static void xio3130_upstream_reset(DeviceState *qdev)
@@ -89,14 +92,14 @@ static int xio3130_upstream_initfn(PCIDevice *d)
pcie_cap_flr_init(d);
pcie_cap_deverr_init(d);
- /* TODO: AER */
+ pcie_aer_init(d, XIO3130_AER_OFFSET);
return 0;
}
static int xio3130_upstream_exitfn(PCIDevice *d)
{
- /* TODO: AER */
+ pcie_aer_exit(d);
msi_uninit(d);
pcie_cap_exit(d);
return pci_bridge_exitfn(d);
@@ -131,7 +134,8 @@ static const VMStateDescription vmstate_xio3130_upstream = {
.minimum_version_id_old = 1,
.fields = (VMStateField[]) {
VMSTATE_PCIE_DEVICE(br.dev, PCIEPort),
- /* TODO: AER */
+ VMSTATE_STRUCT(br.dev.exp.aer_log, PCIEPort, 0, vmstate_pcie_aer_log,
+ PCIEAERLog),
VMSTATE_END_OF_LIST()
}
};
@@ -151,7 +155,8 @@ static PCIDeviceInfo xio3130_upstream_info = {
.qdev.props = (Property[]) {
DEFINE_PROP_UINT8("port", PCIEPort, port, 0),
- /* TODO: AER */
+ DEFINE_PROP_UINT16("aer_log_max", PCIEPort, br.dev.exp.aer_log.log_max,
+ PCIE_AER_LOG_MAX_DEFAULT),
DEFINE_PROP_END_OF_LIST(),
}
};
--
1.7.1.1
- Re: [Qemu-devel] Re: [PATCH v6 07/12] pcie/hotplug: introduce pushing attention button command, (continued)
- Re: [Qemu-devel] Re: [PATCH v6 07/12] pcie/hotplug: introduce pushing attention button command, Isaku Yamahata, 2010/10/25
- Re: [Qemu-devel] Re: [PATCH v6 07/12] pcie/hotplug: introduce pushing attention button command, Michael S. Tsirkin, 2010/10/25
- Re: [Qemu-devel] Re: [PATCH v6 07/12] pcie/hotplug: introduce pushing attention button command, Isaku Yamahata, 2010/10/25
- Re: [Qemu-devel] Re: [PATCH v6 07/12] pcie/hotplug: introduce pushing attention button command, Michael S. Tsirkin, 2010/10/25
- Re: [Qemu-devel] Re: [PATCH v6 07/12] pcie/hotplug: introduce pushing attention button command, Isaku Yamahata, 2010/10/26
- Re: [Qemu-devel] Re: [PATCH v6 07/12] pcie/hotplug: introduce pushing attention button command, Michael S. Tsirkin, 2010/10/27
[Qemu-devel] [PATCH v6 10/12] ioh3420: support aer, Isaku Yamahata, 2010/10/20
[Qemu-devel] [PATCH v6 06/12] x3130: pcie downstream port, Isaku Yamahata, 2010/10/20
[Qemu-devel] [PATCH v6 03/12] pcie port: define struct PCIEPort/PCIESlot and helper functions, Isaku Yamahata, 2010/10/20
[Qemu-devel] [PATCH v6 12/12] x3130/downstream: support aer., Isaku Yamahata, 2010/10/20
[Qemu-devel] [PATCH v6 11/12] x3130/upstream: support aer,
Isaku Yamahata <=
[Qemu-devel] [PATCH v6 01/12] pcie: comment on hpev_intx, Isaku Yamahata, 2010/10/20
[Qemu-devel] Re: [PATCH v6 00/12] pcie port switch emulators, Michael S. Tsirkin, 2010/10/20