Skip to content

Commit

Permalink
[POWERPC] mpc5200: Add common mpc52xx_setup_pci() routine
Browse files Browse the repository at this point in the history
This patch moves a generic pci init code from lite5200
platform file to a common mpc52xx_setup_pci() routine
and adds additional compatibility property verification.

Signed-off-by: Marian Balakowicz <m8@semihalf.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
  • Loading branch information
Marian Balakowicz authored and Grant Likely committed Jan 18, 2008
1 parent a6f024b commit f584bc6
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 11 deletions.
12 changes: 1 addition & 11 deletions arch/powerpc/platforms/52xx/lite5200.c
Original file line number Diff line number Diff line change
Expand Up @@ -131,10 +131,6 @@ static void lite5200_resume_finish(void __iomem *mbar)

static void __init lite5200_setup_arch(void)
{
#ifdef CONFIG_PCI
struct device_node *np;
#endif

if (ppc_md.progress)
ppc_md.progress("lite5200_setup_arch()", 0);

Expand All @@ -154,13 +150,7 @@ static void __init lite5200_setup_arch(void)
lite5200_pm_init();
#endif

#ifdef CONFIG_PCI
np = of_find_node_by_type(NULL, "pci");
if (np) {
mpc52xx_add_bridge(np);
of_node_put(np);
}
#endif
mpc52xx_setup_pci();
}

/*
Expand Down
14 changes: 14 additions & 0 deletions arch/powerpc/platforms/52xx/mpc52xx_pci.c
Original file line number Diff line number Diff line change
Expand Up @@ -406,3 +406,17 @@ mpc52xx_add_bridge(struct device_node *node)

return 0;
}

void __init mpc52xx_setup_pci(void)
{
struct device_node *pci;

pci = of_find_compatible_node(NULL, NULL, "fsl,mpc5200-pci");
if (!pci)
pci = of_find_compatible_node(NULL, NULL, "mpc5200-pci");
if (!pci)
return;

mpc52xx_add_bridge(pci);
of_node_put(pci);
}
5 changes: 5 additions & 0 deletions include/asm-powerpc/mpc52xx.h
Original file line number Diff line number Diff line change
Expand Up @@ -257,7 +257,12 @@ extern void mpc52xx_declare_of_platform_devices(void);
extern void mpc52xx_init_irq(void);
extern unsigned int mpc52xx_get_irq(void);

#ifdef CONFIG_PCI
extern int __init mpc52xx_add_bridge(struct device_node *node);
extern void __init mpc52xx_setup_pci(void);
#else
static inline void mpc52xx_setup_pci(void) { }
#endif

extern void __init mpc52xx_map_wdt(void);
extern void mpc52xx_restart(char *cmd);
Expand Down

0 comments on commit f584bc6

Please sign in to comment.