From: Scott Wood <scottwood@freescale.com>
To: Jia Hongtao <B38951@freescale.com>
Cc: linuxppc-dev@lists.ozlabs.org, Bradley Hughes <bhughes@silicontkx.com>
Subject: Re: [PATCH V8] powerpc/fsl-pci: Unify pci/pcie initialization code
Date: Mon, 20 Aug 2012 17:04:05 -0500 [thread overview]
Message-ID: <5032B455.3080607@freescale.com> (raw)
In-Reply-To: <1345457161-4731-1-git-send-email-B38951@freescale.com>
On 08/20/2012 05:06 AM, Jia Hongtao wrote:
> We unified the Freescale pci/pcie initialization by changing the fsl_pci
> to a platform driver. In previous PCI code architecture the initialization
> routine is called at board_setup_arch stage. Now the initialization is done
> in probe function which is architectural better. Also It's convenient for
> adding PM support for PCI controller in later patch.
>
> Now we registered pci controllers as platform devices. So we combine two
> initialization code as one platform driver.
>
> Signed-off-by: Jia Hongtao <B38951@freescale.com>
> Signed-off-by: Li Yang <leoli@freescale.com>
> Signed-off-by: Chunhe Lan <Chunhe.Lan@freescale.com>
> ---
> Changes for V8:
> * Use previous primary determination. Based on the point that there are
> bugs on primary-less system.
> * Add exceptional support on ge_imp3a in which the primary bus is not the
> first pci bus detected.
The exceptional thing about ge_imp3a is that it has no isa node, but
we're not sure if it actually has isa or not. We should not be relying
on probe order in any case. Device tree nodes are not ordered.
Another interesting case is stxssa8555.dts, which has an i8259 node but
no ISA node (are there any other instances of this?). However, I can't
tell if stx_gp3.c is the platform file that goes with this device tree,
or if the platform code for stxssa8555 is out-of-tree (or some other
file that I'm not seeing).
> -void __devinit fsl_pci_init(void)
> +void fsl_pci_assign_primary(void)
> {
> - int ret;
> struct device_node *node;
> - struct pci_controller *hose;
> - dma_addr_t max = 0xffffffff;
>
> /* Callers can specify the primary bus using other means. */
> if (!fsl_pci_primary) {
Since the whole point of this function is now to find the primary, just
return if it's already set, instead of indenting the rest of the function.
> @@ -842,38 +839,60 @@ void __devinit fsl_pci_init(void)
> node = fsl_pci_primary;
>
> if (of_match_node(pci_ids, node))
> - break;
> + return;
> }
> - }
>
> - node = NULL;
> - for_each_node_by_type(node, "pci") {
> - if (of_match_node(pci_ids, node)) {
> + node = of_find_node_by_type(NULL, "pci");
> + if (of_match_node(pci_ids, node))
>
What if the node returned doesn't match? If you're checking for this,
handle the else-case (even if just with an error message).
-Scott
next prev parent reply other threads:[~2012-08-20 22:04 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-20 10:06 [PATCH V8] powerpc/fsl-pci: Unify pci/pcie initialization code Jia Hongtao
2012-08-20 22:04 ` Scott Wood [this message]
2012-08-21 0:56 ` Scott Wood
2012-08-21 3:27 ` Jia Hongtao-B38951
2012-08-21 3:26 ` Jia Hongtao-B38951
2012-08-21 6:49 ` Li Yang-R58472
2012-08-21 17:16 ` Scott Wood
2012-08-21 18:09 ` Li Yang-R58472
2012-08-21 18:24 ` Scott Wood
2012-08-21 18:33 ` Scott Wood
2012-08-22 7:41 ` Jia Hongtao-B38951
-- strict thread matches above, loose matches on Subject: below --
2012-08-20 9:55 Jia Hongtao
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=5032B455.3080607@freescale.com \
--to=scottwood@freescale.com \
--cc=B38951@freescale.com \
--cc=bhughes@silicontkx.com \
--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).