qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH v4 00/15] pcie port switch emulators


From: Isaku Yamahata
Subject: [Qemu-devel] [PATCH v4 00/15] pcie port switch emulators
Date: Mon, 18 Oct 2010 12:17:41 +0900

Here is v4 of the pcie patch series.
- PCIDevice::written
  The abuse of PCIDevice::config to record a written bit of non-modifiable
  registers is confusing and bad style. So I introduced PCIDevice::written.
- FLR stuff
  I didn't addresse FLR function pointer issue. Anyway in order to
  make FLR work, Qdev bus reset must be addresssed.
  So Let's discuss it at the next phase.

new patches: 1, 2, 3, 4, 5
Other patches are (almost) same as before except adjustment to compile.
The patches of 1, 2, 3 and 5 can be harmlessly merged, I think.

Patch description:
This patch series implements pcie port switch emulators
which is basic part for pcie/q35 support.
This is for mst/pci tree.

changes v3 -> v4:
- introduced new pci config helper functions.(clear set bit)
- various clean up and some bug fixes.
- dropped pci_shift_xxx().
- dropped function pointerin pcie_aer.h
- dropped pci_exp_cap(), pcie_aer_cap().
- file rename (pcie_{root, upstream, downsatrem} => ioh33420, x3130).

changes v2 -> v3:
- msi: improved commant and simplified shift/ffs dance
- pci w1c config register framework
- split pcie.[ch] into pcie_regs.h, pcie.[ch] and pcie_aer.[ch]
- pcie, aer: many changes by following reviews.

changes v1 -> v2:
- update msi
- dropped already pushed out patches.
- added msix patches.


Isaku Yamahata (15):
  pci: make pci_del_capability() update for w1cmask
  pci: introduce helper functions to clear/set bits in configuration
    space
  pci: use pci_clear_bit_word() in pci_device_reset()
  pci: record which is written into pci configuration space
  pci/bridge: fix pci_bridge_reset()
  msi: implements msi
  pcie: add pcie constants to pcie_regs.h
  pcie: helper functions for pcie capability and extended capability
  pcie/aer: helper functions for pcie aer capability
  pcie port: define struct PCIEPort/PCIESlot and helper functions
  ioh3420: pcie root port in X58 ioh
  x3130: pcie upstream port
  x3130: pcie downstream port
  pcie/hotplug: introduce pushing attention button command
  pcie/aer: glue aer error injection into qemu monitor

 Makefile.objs           |    4 +-
 hw/ioh3420.c            |  228 ++++++++++++
 hw/ioh3420.h            |   10 +
 hw/msi.c                |  352 +++++++++++++++++++
 hw/msi.h                |   41 +++
 hw/pci.c                |   16 +-
 hw/pci.h                |   92 +++++-
 hw/pci_bridge.c         |   15 +-
 hw/pcie.c               |  529 ++++++++++++++++++++++++++++
 hw/pcie.h               |  112 ++++++
 hw/pcie_aer.c           |  873 +++++++++++++++++++++++++++++++++++++++++++++++
 hw/pcie_aer.h           |  105 ++++++
 hw/pcie_port.c          |  197 +++++++++++
 hw/pcie_port.h          |   51 +++
 hw/pcie_regs.h          |  154 +++++++++
 hw/xio3130_downstream.c |  207 +++++++++++
 hw/xio3130_downstream.h |   11 +
 hw/xio3130_upstream.c   |  188 ++++++++++
 hw/xio3130_upstream.h   |   10 +
 qemu-common.h           |    6 +
 qemu-monitor.hx         |   36 ++
 sysemu.h                |    9 +
 22 files changed, 3233 insertions(+), 13 deletions(-)
 create mode 100644 hw/ioh3420.c
 create mode 100644 hw/ioh3420.h
 create mode 100644 hw/msi.c
 create mode 100644 hw/msi.h
 create mode 100644 hw/pcie.c
 create mode 100644 hw/pcie.h
 create mode 100644 hw/pcie_aer.c
 create mode 100644 hw/pcie_aer.h
 create mode 100644 hw/pcie_port.c
 create mode 100644 hw/pcie_port.h
 create mode 100644 hw/pcie_regs.h
 create mode 100644 hw/xio3130_downstream.c
 create mode 100644 hw/xio3130_downstream.h
 create mode 100644 hw/xio3130_upstream.c
 create mode 100644 hw/xio3130_upstream.h




reply via email to

[Prev in Thread] Current Thread [Next in Thread]