From: Jon Masters <jcm@redhat.com>
To: Bjorn Helgaas <helgaas@kernel.org>,
Jayachandran C <jnair@caviumnetworks.com>
Cc: linux-pci@vger.kernel.org, iommu@lists.linux-foundation.org,
Robin Murphy <robin.murphy@arm.com>,
linux-arm-kernel@lists.infradead.org,
Joerg Roedel <joro@8bytes.org>
Subject: Re: [PATCH v5 2/2] PCI: quirks: Fix ThunderX2 dma alias handling
Date: Wed, 19 Apr 2017 20:25:54 -0400 [thread overview]
Message-ID: <832cb9b3-ceaf-6771-bfc9-7bae35494f6d@redhat.com> (raw)
In-Reply-To: <baed1ecf-7a57-0229-42b0-d87599a225b5@redhat.com>
One additional footnote. I spent a bunch of time recently on my personal
Xeon systems walking through the PCIe topology and aligning on how to
advise the ARM server community proceed going forward. If you look at
how Intel vs AMD handle their host bridges for example, you'll see two
very different approaches to the case of cross-socket PCIe. But my
operating assumption is that anything longer term which looks boring and
x86 enough is probably fine from an ARM server point of view.
On 04/19/2017 07:38 PM, Jon Masters wrote:
> Hi Bjorn, JC,
>
> On 04/13/2017 08:19 PM, Bjorn Helgaas wrote:
>
>> I tentatively applied both patches to pci/host-thunder for v4.12.
>
> Thanks for that :)
>
>> However, I am concerned about the topology here:
>
> Various feedback has been provided on this one over the past $time. In
> addition, I have requested that this serve as an example of why we need
> a more complete PCIe integration guide for ARMv8. It's on the list of
> things for my intended opus magnum on the topic ;)
>
>> On Thu, Apr 13, 2017 at 08:30:45PM +0000, Jayachandran C wrote:
>>> On Cavium ThunderX2 arm64 SoCs (called Broadcom Vulcan earlier), the
>>> PCI topology is slightly unusual. For a multi-node system, it looks
>>> like:
>>>
>>> 00:00.0 [PCI] bridge to [bus 01-1e]
>>> 01:0a.0 [PCI-PCIe bridge, type 8] bridge to [bus 02-04]
>>> 02:00.0 [PCIe root port, type 4] bridge to [bus 03-04] (XLATE_ROOT)
>>> 03:00.0 PCIe Endpoint
>>
>> A root port normally has a single PCIe link leading downstream.
>
> In integration terms, there's always a bus on the other side of the RC.
> It's just usually a processor local bus of some kind on a proprietary
> interconnect, but there's always something there. The issue is when you
> can see it as PCIe and it's not through a transparent glue bridge.
>
> I had originally hoped that the ECAM could be hacked up so that we would
> first walk the topology at the 02:00.0 as a root and not see what's
> above it BUT there are other device attachments up there for the on-SoC
> devices and I think we really intend to use those.
>
> Bottom line in my opinion is document this case, use it as a learning
> example, and move forward. This has been useful in justifying why we
> need better integration documentation from the server community. And in
> particular from the OS vendors, of which I guess we can allude to their
> being more than Linux interested in ARM server these days ;)
>
> Jon.
>
--
Computer Architect | Sent from my Fedora powered Ryzen
next prev parent reply other threads:[~2017-04-20 0:25 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-04-13 20:30 [PATCH v5 0/2] Handle Cavium ThunderX2 PCI topology quirk Jayachandran C
2017-04-13 20:30 ` [PATCH v5 1/2] PCI: Add device flag PCI_DEV_FLAGS_BRIDGE_XLATE_ROOT Jayachandran C
2017-04-13 20:30 ` [PATCH v5 2/2] PCI: quirks: Fix ThunderX2 dma alias handling Jayachandran C
2017-04-14 0:19 ` Bjorn Helgaas
2017-04-14 21:06 ` Jayachandran C
2017-04-15 2:00 ` Bjorn Helgaas
[not found] ` <CAErSpo731xSzrnKF+G+8SA_UUHy7ROA1V9oFkpwKi85GQf9VAg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-04-17 17:47 ` Jayachandran C
2017-04-17 19:51 ` Bjorn Helgaas via iommu
2017-04-21 15:48 ` Bjorn Helgaas via iommu
[not found] ` <CAErSpo6+do8GXon3EzZAUpqc2TFsA0BDwWBULqZCd1ayCJhD6w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-04-21 17:05 ` Jayachandran C
2017-04-21 17:57 ` Bjorn Helgaas
[not found] ` <20170421175705.GB17916-1RhO1Y9PlrlHTL0Zs8A6p5iNqAH0jzoTYJqu5kTmcBRl57MIdRCFDg@public.gmane.org>
2017-04-25 13:03 ` Jayachandran C
2017-04-25 13:37 ` Bjorn Helgaas
2017-04-19 23:38 ` Jon Masters
2017-04-20 0:25 ` Jon Masters [this message]
2017-04-20 13:20 ` Bjorn Helgaas
[not found] ` <CAErSpo4+sVEydsxi8quK=avN=mWyoHV=bUxDDKgOfGR7=15zgA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2017-04-20 15:12 ` Jon Masters
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=832cb9b3-ceaf-6771-bfc9-7bae35494f6d@redhat.com \
--to=jcm@redhat.com \
--cc=helgaas@kernel.org \
--cc=iommu@lists.linux-foundation.org \
--cc=jnair@caviumnetworks.com \
--cc=joro@8bytes.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-pci@vger.kernel.org \
--cc=robin.murphy@arm.com \
/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