From: Scott Wood <scottwood@freescale.com>
To: Kumar Gala <galak@kernel.crashing.org>
Cc: "linuxppc-dev@lists.ozlabs.org" <linuxppc-dev@lists.ozlabs.org>
Subject: Re: pci node question
Date: Fri, 20 Apr 2012 14:04:21 -0500 [thread overview]
Message-ID: <4F91B335.4010501@freescale.com> (raw)
In-Reply-To: <D04C6167-5286-4675-A6D8-32BA63305424@kernel.crashing.org>
On 04/20/2012 01:53 PM, Kumar Gala wrote:
>
> On Apr 20, 2012, at 1:37 PM, Yoder Stuart-B08248 wrote:
>
>> There was refactoring change a while back that moved
>> the interrupt map down into the virtual pci bridge.
>>
>> example:
>> 42 /* controller at 0x200000 */
>> 43 &pci0 {
>> 44 compatible = "fsl,p2041-pcie", "fsl,qoriq-pcie-v2.2";
>> 45 device_type = "pci";
>> 46 #size-cells = <2>;
>> 47 #address-cells = <3>;
>> 48 bus-range = <0x0 0xff>;
>> 49 clock-frequency = <33333333>;
>> 50 interrupts = <16 2 1 15>;
>> 51 pcie@0 {
>> 52 reg = <0 0 0 0 0>;
>> 53 #interrupt-cells = <1>;
>> 54 #size-cells = <2>;
>> 55 #address-cells = <3>;
>> 56 device_type = "pci";
>> 57 interrupts = <16 2 1 15>;
>> 58 interrupt-map-mask = <0xf800 0 0 7>;
>> 59 interrupt-map = <
>> 60 /* IDSEL 0x0 */
>> 61 0000 0 0 1 &mpic 40 1 0 0
>> 62 0000 0 0 2 &mpic 1 1 0 0
>> 63 0000 0 0 3 &mpic 2 1 0 0
>> 64 0000 0 0 4 &mpic 3 1 0 0
>> 65 >;
>> 66 };
>> 67 };
>>
>> Why was the interrupt-map moved here?
>
> Its been a while, but I think i moved it down because of which node is used for interrupt handling in linux.
That's not supposed to be how device tree bindings are determined.
It's causing us problems with virtualization device assignment, because
if we just assign the parent bus we don't get the interrupt map, but if
we assign the child we need to deal with what it means to assign an
individual PCI device (e.g. on our internal KVM stuff we get an error on
that reg property).
What does this node represent in the first place? Is there really a
PCI-to-PCI bridge? Are all other PCI devices underneath it?
>> Do we really need the error interrupt specified twice?
>
> I put it twice because it has multiple purposes, one has to do with interrupts defined by the PCI spec vs ones defined via FSL controller.
There are PCI-defined error conditions that cause a host controller
interrupt. What does this have to do with the bridge node?
>> Why is there a zeroed out reg property: reg = <0 0 0 0 0> ??
>
> scratching my head, what happens if you remove it?
Sigh.
-Scott
next prev parent reply other threads:[~2012-04-20 19:04 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-04-20 18:37 pci node question Yoder Stuart-B08248
2012-04-20 18:53 ` Kumar Gala
2012-04-20 19:04 ` Scott Wood [this message]
2012-04-20 20:37 ` Kumar Gala
2012-04-20 20:53 ` Scott Wood
2012-04-20 21:24 ` Benjamin Herrenschmidt
2012-04-20 21:20 ` Benjamin Herrenschmidt
2012-04-20 21:19 ` Benjamin Herrenschmidt
2012-04-20 19:50 ` Yoder Stuart-B08248
2012-04-20 21:11 ` Benjamin Herrenschmidt
2012-04-23 15:48 ` Yoder Stuart-B08248
2012-04-23 20:21 ` Benjamin Herrenschmidt
2012-04-23 20:32 ` Yoder Stuart-B08248
2012-04-23 20:40 ` Benjamin Herrenschmidt
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=4F91B335.4010501@freescale.com \
--to=scottwood@freescale.com \
--cc=galak@kernel.crashing.org \
--cc=linuxppc-dev@lists.ozlabs.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).