From: Arnd Bergmann <arnd@arndb.de>
To: Liviu Dudau <Liviu.Dudau@arm.com>
Cc: Rob Herring <robherring2@gmail.com>,
Bjorn Helgaas <bhelgaas@google.com>,
Russell King <linux@arm.linux.org.uk>,
"linus.walleij@linaro.org" <linus.walleij@linaro.org>,
"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>
Subject: Re: [PATCH 0/3] Versatile PCI DT support
Date: Fri, 28 Mar 2014 17:28:35 +0100 [thread overview]
Message-ID: <5650118.DZNeEh1F94@wuerfel> (raw)
In-Reply-To: <20140328162137.GA17163@e106497-lin.cambridge.arm.com>
On Friday 28 March 2014 16:21:38 Liviu Dudau wrote:
> On Fri, Mar 28, 2014 at 03:20:20PM +0000, Rob Herring wrote:
> > On Fri, Mar 28, 2014 at 9:57 AM, Liviu Dudau <Liviu.Dudau@arm.com> wrote:
> > > PCI core? It knows nothing of the Versatile registers. Versatile core code? Maybe.
> >
> > These are all standard config space registers based on the offsets and
> > documentation. The only thing that I think might make this Versatile
> > specific is a host bridge having its own config space at all is
> > optional.
>
> Sorry, got confused by your CSR_OFFSET macro into thinking it's Versatile specific (I
> still cannot get hold of the SP810 manual, sigh). Why don't you use PCI_COMMAND ?
While it's not uncommon to have PCI host controllers use a similar
layout for their own registers as the normal config space, I believe
this is not standardized anywhere. It may be better not to pretend
that this is a standard register.
> For PCIe the spec is a bit more forgiving is you use ECAM, although it doesn't
> explicitly allow writes to the config space of the host bridge. From PCI Express
> Base spec, rev 3.0:
>
> 7.2.2.1. Host Bridge Requirements
> For those systems that implement the ECAM, the PCI Express Host Bridge is
> required to translate the memory-mapped PCI Express Configuration Space
> accesses from the host processor to PCI Express configuration transactions.
> The use of Host Bridge PCI class code is Reserved for backwards compatibility;
> host Bridge Configuration Space is opaque to standard PCI Express software
> and may be implemented in an implementation specific manner that is compatible
> with PCI Host Bridge Type 0 Configuration Space. A PCI Express Host Bridge is
> not required to signal errors through a Root Complex Event Collector. This
> support is optional for PCI Express Host Bridges.
>
> So it looks like you need to do those in the host bridge probe function, rather than
> in a generic way.
Right. FWIW, the reason why these have a normal register layout seems to be
that the same hardware is used for host controller and endpoint devices.
Arnd
next prev parent reply other threads:[~2014-03-28 16:28 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-27 22:46 [PATCH 0/3] Versatile PCI DT support Rob Herring
2014-03-27 22:46 ` [PATCH 1/3] ARM: hackup pcibios support for commmon bridge code Rob Herring
2014-04-24 23:20 ` Bjorn Helgaas
2014-04-24 23:54 ` Rob Herring
2014-03-27 22:46 ` [PATCH 2/3] dt/bindings: add versatile PCI binding Rob Herring
2014-03-27 22:46 ` [PATCH 3/3] pci: add DT based ARM Versatile PCI host driver Rob Herring
2014-04-24 23:24 ` Bjorn Helgaas
2014-04-24 23:37 ` Rob Herring
2014-04-25 0:06 ` Bjorn Helgaas
2014-03-28 11:46 ` [PATCH 0/3] Versatile PCI DT support Liviu Dudau
2014-03-28 13:27 ` Rob Herring
2014-03-28 14:57 ` Liviu Dudau
2014-03-28 15:20 ` Rob Herring
2014-03-28 16:21 ` Liviu Dudau
2014-03-28 16:28 ` Arnd Bergmann [this message]
2014-04-24 23:10 ` Bjorn Helgaas
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=5650118.DZNeEh1F94@wuerfel \
--to=arnd@arndb.de \
--cc=Liviu.Dudau@arm.com \
--cc=bhelgaas@google.com \
--cc=linus.walleij@linaro.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=robherring2@gmail.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