public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Scott Wood <scottwood@freescale.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] powerpc: add support for the Freescale P1022DS reference board
Date: Wed, 26 May 2010 14:46:28 -0500	[thread overview]
Message-ID: <4BFD7A94.7070703@freescale.com> (raw)
In-Reply-To: <4BFD77BC.4060207@freescale.com>

On 05/26/2010 02:34 PM, Timur Tabi wrote:
> Scott Wood wrote:
>
>> Which is relevant, given that you're whipping out a big scary-looking
>> prototype as a reason to avoid refactoring. :-)
>
> So instead of this:
>
> configure_pci(PCIE1, "PCIE1", "Slot 1", pcie_ep, num, LAW_TRGT_IF_PCIE_1,
> CONFIG_SYS_PCIE1_MEM_PHYS, LAW_SIZE_512M, CONFIG_SYS_PCIE1_IO_PHYS,
> LAW_SIZE_64K,&pci_info[num],&pcie1_hose);
>
> You want this instead:
>
> struct {
> 	enum srds_prtcl pci;
> 	const char *name;
> 	const char *target;
> 	int endpoint;
> 	int first_free_busno;
> 	enum law_trgt_if law;
> 	phys_addr_t mem_addr;
> 	enum law_size mem_size;
> 	phys_addr_t io_addr;
> 	enum law_size io_size;
> 	struct fsl_pci_info *pci_info;
> 	struct pci_controller *hose;
> } x;
>
> x.pci = PCIE1;
> x.name = "PCIE1";
> x.target = "Slot 1";
> x.endpoint =- pcie_ep;
> x.first_free_busno = num;
> x.law = LAW_TRGT_IF_PCIE_1;
> x.mem_addr = CONFIG_SYS_PCIE1_MEM_PHYS;
> x.mem_size = LAW_SIZE_512M;
> x.io_addr = CONFIG_SYS_PCIE1_IO_PHYS;
> x.io_size = LAW_SIZE_64K;
> x.pci_info =&pci_info[num];
> x.hose =&pcie1_hose;
>
> configure_pci(&x);
>
> I don't see how this is an improvement.

Much of that struct could be defined statically, with the board or soc 
file providing an array of PCI info structs.  Look at how the 83xx PCI 
code does it -- you'll need more than just the generic u-boot pci_region 
struct, though you could have it as a member of the hw-specific struct.

A few of those things don't belong there -- I think first_free_busno 
should be a static variable inside the pci setup function, for example 
(does Linux still even need separate bus number spaces on different 
hoses?).  pcie_ep should just be a local variable.  The hose could maybe 
just be an uninitialized member of the struct instead of a pointer to an 
arbitrary other symbol.

-Scott

  reply	other threads:[~2010-05-26 19:46 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-20 22:01 [U-Boot] [PATCH] powerpc: add support for the Freescale P1022DS reference board Timur Tabi
2010-05-20 22:33 ` Wolfgang Denk
2010-05-20 23:13   ` Kumar Gala
2010-05-21  6:50     ` Wolfgang Denk
2010-05-20 23:23   ` Timur Tabi
2010-05-21  7:07     ` Wolfgang Denk
2010-05-21 13:45       ` Timur Tabi
2010-05-21 14:22         ` Wolfgang Denk
2010-05-21 14:33           ` Timur Tabi
2010-05-21 16:07           ` Timur Tabi
2010-05-26 18:12       ` Timur Tabi
2010-05-26 18:17         ` Scott Wood
2010-05-26 18:19           ` Timur Tabi
2010-05-26 19:04             ` Scott Wood
2010-05-26 19:34               ` Timur Tabi
2010-05-26 19:46                 ` Scott Wood [this message]
2010-05-26 21:59                   ` Timur Tabi
2010-05-25 18:30   ` Timur Tabi
2010-05-26 20:10     ` Wolfgang Denk
2010-05-26 20:18       ` Timur Tabi
2010-05-26 20:24       ` Timur Tabi
2010-05-27  7:02         ` Wolfgang Denk
2010-05-27 14:31           ` Timur Tabi
2010-05-27 18:11             ` Wolfgang Denk
2010-05-27 18:25               ` Timur Tabi
2010-05-27 19:03                 ` Scott Wood
2010-05-27 19:07                   ` Timur Tabi
2010-05-27 19:10                     ` Scott Wood
2010-05-27 19:54                       ` Wolfgang Denk
2010-05-27 19:53                     ` Wolfgang Denk
2010-05-27 20:11                       ` Timur Tabi
2010-05-27 21:10                         ` Wolfgang Denk
2010-05-27 19:53                   ` Wolfgang Denk
2010-05-27 20:03                     ` Timur Tabi
2010-05-27 20:59                       ` Wolfgang Denk
2010-05-27 20:05                     ` Scott Wood
2010-05-27 21:03                       ` Wolfgang Denk
2010-05-27 19:45                 ` Wolfgang Denk
2010-05-27 19:54                   ` Timur Tabi
2010-05-27 20:00                     ` Wolfgang Denk
2010-05-27 20:10                       ` Scott Wood
2010-05-21  0:26 ` [U-Boot] [PATCH] powerpc: add support for the FreescaleP1022DS " Liu Dave-R63238
2010-05-21 15:25   ` Timur Tabi
2010-05-21  9:46 ` [U-Boot] [PATCH] powerpc: add support for the Freescale P1022DS " Kumar Gala

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=4BFD7A94.7070703@freescale.com \
    --to=scottwood@freescale.com \
    --cc=u-boot@lists.denx.de \
    /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