qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH RFC 0/1] Extend s390 pci representation in qemu
@ 2015-02-26 11:59 Frank Blaschka
  2015-02-26 11:59 ` [Qemu-devel] [PATCH RFC 1/1] s390x/pci: Extend pci representation by new zpci device Frank Blaschka
  0 siblings, 1 reply; 16+ messages in thread
From: Frank Blaschka @ 2015-02-26 11:59 UTC (permalink / raw)
  To: qemu-devel, cornelia.huck, borntraeger, agraf; +Cc: Frank Blaschka

For a better understanding of the following patch here is
some general information about how PCI is implemented on the s390
platform. The physical structure of the pci system (bridge, bus, slot)
is not shown to the OS. Instead a firmware and I/O configuration
layer abstracts each PCI card to a bare PCI function.

In essence, the fw layer provides a simple enumeration of the
individual devices, which the s390 pci implementation in the Linux
kernel translates into individual pci domains.

HW layer      |       FW layer       |       Linux kernel
              |                      |
(opaque)      |       function 1     |       0001:00:00.0
              |       function 2     |       0002:00:00.0
              |       function 3     |       0003:00:00.0

In qemu we have following problems:

(1) We have to represent this s390 specific topology information,
    respectively the lack thereof
(2) We have/want to use common qemu PCI infrastructure

The initial implementation did not honor (1) much and tried to derive s390
specific configuration attributes from attributes of qemu pci devices. It
turns out that this is not flexible enough and is not sufficient to support
s390 specific configurations.

The following patch introduces a new zPCI device that kind of represents the
fw layer on real hardware and provides the s390 specific information needed
by guest operating systems. We keep the pci devices the same as in the
general case and just hook them up with the corresponding zPCI device.

Frank Blaschka (1):
  s390x/pci: Extend pci representation by new zpci device

 hw/s390x/s390-pci-bus.c    | 253 ++++++++++++++++++++++++++++++++-------------
 hw/s390x/s390-pci-bus.h    |  38 ++++++-
 hw/s390x/s390-pci-inst.c   |   2 +-
 hw/s390x/s390-virtio-ccw.c |   8 +-
 4 files changed, 227 insertions(+), 74 deletions(-)

-- 
2.1.4

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2015-03-06 10:50 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-26 11:59 [Qemu-devel] [PATCH RFC 0/1] Extend s390 pci representation in qemu Frank Blaschka
2015-02-26 11:59 ` [Qemu-devel] [PATCH RFC 1/1] s390x/pci: Extend pci representation by new zpci device Frank Blaschka
2015-02-26 14:39   ` Alexander Graf
2015-02-26 15:27     ` Frank Blaschka
2015-02-26 15:34       ` Alexander Graf
2015-03-03  8:06         ` Frank Blaschka
2015-03-03  9:33           ` Alexander Graf
2015-03-03 13:25             ` Frank Blaschka
2015-03-03 20:38               ` Alexander Graf
2015-03-04 13:44                 ` Frank Blaschka
2015-03-04 14:49                   ` Alexander Graf
2015-03-04 15:07                     ` Frank Blaschka
2015-03-04 15:25                       ` Alexander Graf
2015-03-04 15:58                         ` Frank Blaschka
2015-03-06 10:34                           ` Frank Blaschka
2015-03-06 10:49                             ` Alexander Graf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).