From: Gerd Hoffmann <kraxel@redhat.com>
To: Laszlo Ersek <lersek@redhat.com>
Cc: Marcel Apfelbaum <marcel@redhat.com>,
qemu-devel@nongnu.org, mst@redhat.com,
Peter Maydell <peter.maydell@linaro.org>,
Drew Jones <drjones@redhat.com>, Laine Stump <laine@redhat.com>,
Andrea Bolognani <abologna@redhat.com>,
Alex Williamson <alex.williamson@redhat.com>
Subject: Re: [Qemu-devel] [PATCH RFC] docs: add PCIe devices placement guidelines
Date: Tue, 06 Sep 2016 13:35:28 +0200 [thread overview]
Message-ID: <1473161728.31857.20.camel@redhat.com> (raw)
In-Reply-To: <6c9103e7-70ad-55c6-5533-d6d9bbaa39b4@redhat.com>
Hi,
> > +Plug only legacy PCI devices as Root Complex Integrated Devices
> > +even if the PCIe spec does not forbid PCIe devices.
>
> I suggest "even though the PCI Express spec does not forbid PCI Express
> devices as Integrated Devices". (Detail is good!)
While talking about integrated devices: There is docs/q35-chipset.cfg,
which documents how to mimic q35 with integrated devices as close and
complete as possible.
Usage:
qemu-system-x86_64 -M q35 -readconfig docs/q35-chipset.cfg $args
Side note for usb: In practice you don't want to use the tons of
uhci/ehci controllers present in the original q35 but plug xhci into one
of the pcie root ports instead (unless your guest doesn't support xhci).
> > +as required by PCI spec will reserve a 4K IO range for each.
> > +The firmware used by QEMU (SeaBIOS/OVMF) will further optimize
> > +it by allocation the IO space only if there is at least a device
> > +with IO BARs plugged into the bridge.
>
> This used to be true, but is no longer true, for OVMF. And I think it's
> actually correct: we *should* keep the 4K IO reservation per PCI-PCI bridge.
>
> (But, certainly no IO reservation for PCI Express root port, upstream
> port, or downstream port! And i'll need your help for telling these
> apart in OVMF.)
IIRC the same is true for seabios, it looks for the pcie capability and
skips io space allocation on pcie ports only.
Side note: the linux kernel allocates io space nevertheless, so
checking /proc/ioports after boot doesn't tell you what the firmware
did.
cheers,
Gerd
next prev parent reply other threads:[~2016-09-06 11:35 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-01 13:22 [Qemu-devel] [PATCH RFC] docs: add PCIe devices placement guidelines Marcel Apfelbaum
2016-09-01 13:27 ` Peter Maydell
2016-09-01 13:51 ` Marcel Apfelbaum
2016-09-01 17:14 ` Laszlo Ersek
2016-09-05 16:24 ` Laszlo Ersek
2016-09-05 20:02 ` Marcel Apfelbaum
2016-09-06 13:31 ` Laszlo Ersek
2016-09-06 14:46 ` Marcel Apfelbaum
2016-09-07 6:21 ` Gerd Hoffmann
2016-09-07 8:06 ` Laszlo Ersek
2016-09-07 8:23 ` Marcel Apfelbaum
2016-09-07 8:06 ` Marcel Apfelbaum
2016-09-07 16:08 ` Alex Williamson
2016-09-07 19:32 ` Marcel Apfelbaum
2016-09-07 17:55 ` Laine Stump
2016-09-07 19:39 ` Marcel Apfelbaum
2016-09-07 20:34 ` Laine Stump
2016-09-15 8:38 ` Andrew Jones
2016-09-15 14:20 ` Marcel Apfelbaum
2016-09-16 16:50 ` Andrea Bolognani
2016-09-08 7:33 ` Gerd Hoffmann
2016-09-06 11:35 ` Gerd Hoffmann [this message]
2016-09-06 13:58 ` Laine Stump
2016-09-07 7:04 ` Gerd Hoffmann
2016-09-07 18:20 ` Laine Stump
2016-09-08 7:26 ` Gerd Hoffmann
2016-09-06 14:47 ` Marcel Apfelbaum
2016-09-07 7:53 ` Laszlo Ersek
2016-09-07 7:57 ` Marcel Apfelbaum
2016-10-04 14:59 ` Daniel P. Berrange
2016-10-04 15:40 ` Laszlo Ersek
2016-10-04 16:10 ` Laine Stump
2016-10-04 16:43 ` Laszlo Ersek
2016-10-04 18:08 ` Laine Stump
2016-10-04 18:52 ` Alex Williamson
2016-10-10 12:02 ` Andrea Bolognani
2016-10-10 14:36 ` Marcel Apfelbaum
2016-10-11 15:37 ` Andrea Bolognani
2016-10-04 18:56 ` Laszlo Ersek
2016-10-04 17:54 ` Laine Stump
2016-10-05 9:17 ` Marcel Apfelbaum
2016-10-10 11:09 ` Andrea Bolognani
2016-10-10 14:15 ` Marcel Apfelbaum
2016-10-11 13:30 ` Andrea Bolognani
2016-10-04 15:45 ` Alex Williamson
2016-10-04 16:25 ` Laine Stump
2016-10-05 10:03 ` Marcel Apfelbaum
2016-09-06 15:38 ` Alex Williamson
2016-09-06 18:14 ` Marcel Apfelbaum
2016-09-06 18:32 ` Alex Williamson
2016-09-06 18:59 ` Marcel Apfelbaum
2016-09-07 7:44 ` Laszlo Ersek
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1473161728.31857.20.camel@redhat.com \
--to=kraxel@redhat.com \
--cc=abologna@redhat.com \
--cc=alex.williamson@redhat.com \
--cc=drjones@redhat.com \
--cc=laine@redhat.com \
--cc=lersek@redhat.com \
--cc=marcel@redhat.com \
--cc=mst@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.