From: Marcel Apfelbaum <marcel@redhat.com>
To: Kevin O'Connor <kevin@koconnor.net>
Cc: seabios@seabios.org, lersek@redhat.com, qemu-devel@nongnu.org,
mst@redhat.com
Subject: Re: [Qemu-devel] [PATCH V2] pci: fixes to allow booting from extra root pci buses.
Date: Thu, 11 Jun 2015 17:12:33 +0300 [thread overview]
Message-ID: <55799751.1030904@redhat.com> (raw)
In-Reply-To: <20150611135841.GA7998@morn.localdomain>
On 06/11/2015 04:58 PM, Kevin O'Connor wrote:
> On Thu, Jun 11, 2015 at 04:37:08PM +0300, Marcel Apfelbaum wrote:
>> The fixes solves the following issue:
>> The PXB device exposes a new pci root bridge with the
>> fw path: /pci-root@4/..., in which 4 is the root bus number.
>> Before this patch the fw path was wrongly computed:
>> /pci-root@1/pci@i0cf8/...
>> Fix the above issues: Correct the bus number and remove the
>> extra host bridge description.
>
> Why is that wrong? The previous path looks correct to me.
The prev path includes both the extra root bridge and *then* the usual host bridge.
/pci-root@1/pci@i0cf8/ ...
^ new ^ regular ^ devices
Since the new pci root bridge (and bus) is on "paralel" with the regular one.
it is not correct to add it to the path.
The architecture is:
/<host bridge>/devices...
/extra root bridge/devices...
/extra root bridge/devices...
And not
/extra root bridge//<host bridge>/devices
Thanks,
Marcel
>
>> The IEEE Std 1275-1994:
>>
>> IEEE Standard for Boot (Initialization Configuration)
>> Firmware: Core Requirements and Practices
>> 3.2.1.1 Node names
>> Each node in the device tree is identified by a node name
>> using the following notation:
>> driver-name@unit-address:device-arguments
>>
>> The driver name field is a sequence of between one and 31
>> letters [...]. By convention, this name includes the name of
>> the device’s manufacturer and the device’s model name separated by
>> a “,”.
>>
>> The unit address field is the text representation of the
>> physical address of the device within the address space
>> defined by its parent node. The form of the text
>> representation is bus-dependent.
>
> Note the "physical address" part in the above. Your patch changes the
> "pci-root@" syntax to use a logical address instead of a physical
> address. That is, unless I've missed something, SeaBIOS today uses a
> physical address (the n'th root bus) and the patch would change it to
> use a logical address.
>
> One of the goals of using an "openfirmware" like address was so that
> they would be stable across boots (the same mechanism is also used
> with coreboot). Using a physical address is key for this, because
> simply adding or removing a PCI device could cause the logical PCI
> bridge enumeration to change - and that would mess up the bootorder
> list if it was based on logical addresses.
>
> -Kevin
>
next prev parent reply other threads:[~2015-06-11 14:12 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-11 13:37 [Qemu-devel] [PATCH V2] pci: fixes to allow booting from extra root pci buses Marcel Apfelbaum
2015-06-11 13:57 ` Laszlo Ersek
2015-06-11 13:58 ` Kevin O'Connor
2015-06-11 14:12 ` Marcel Apfelbaum [this message]
2015-06-11 14:24 ` Kevin O'Connor
2015-06-11 14:36 ` Marcel Apfelbaum
2015-06-11 15:00 ` Laszlo Ersek
2015-06-11 16:54 ` Kevin O'Connor
2015-06-11 17:46 ` Marcel Apfelbaum
2015-06-11 18:34 ` Laszlo Ersek
2015-06-11 19:24 ` Kevin O'Connor
2015-06-12 9:25 ` Laszlo Ersek
2015-06-12 13:03 ` Kevin O'Connor
2015-06-12 15:45 ` Laszlo Ersek
2015-06-12 18:40 ` Kevin O'Connor
2015-06-12 20:13 ` Laszlo Ersek
2015-06-14 12:05 ` Michael S. Tsirkin
2015-06-14 14:50 ` Kevin O'Connor
2015-06-14 18:06 ` Michael S. Tsirkin
2015-06-14 18:21 ` Kevin O'Connor
2015-06-14 21:39 ` Benjamin Herrenschmidt
2015-06-14 21:59 ` Kevin O'Connor
2015-06-15 2:50 ` Benjamin Herrenschmidt
2015-06-15 8:22 ` Michael S. Tsirkin
2015-06-11 19:10 ` Kevin O'Connor
2015-06-12 6:00 ` Gerd Hoffmann
2015-06-12 12:17 ` Marcel Apfelbaum
2015-06-12 13:23 ` Kevin O'Connor
2015-06-15 6:01 ` Gerd Hoffmann
2015-06-15 6:50 ` Gerd Hoffmann
2015-06-15 9:02 ` Marcel Apfelbaum
2015-06-15 9:43 ` Michael S. Tsirkin
2015-06-15 10:18 ` Gerd Hoffmann
2015-06-15 10:26 ` Michael S. Tsirkin
2015-06-11 14:35 ` Laszlo Ersek
2015-06-11 16:48 ` Kevin O'Connor
2015-06-11 18:38 ` [Qemu-devel] [SeaBIOS] " Laszlo Ersek
2015-06-14 12:10 ` [Qemu-devel] " Michael S. Tsirkin
2015-06-14 13:47 ` Kevin O'Connor
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=55799751.1030904@redhat.com \
--to=marcel@redhat.com \
--cc=kevin@koconnor.net \
--cc=lersek@redhat.com \
--cc=mst@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=seabios@seabios.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 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).