diff options
author | Kim Phillips <kim.phillips@freescale.com> | 2006-11-01 06:10:40 (GMT) |
---|---|---|
committer | Kim Phillips <kim.phillips@freescale.com> | 2006-11-04 01:42:22 (GMT) |
commit | bf0b542d6773a5a1cbce77691f009b06d9aeb57d (patch) | |
tree | 9b17b6026eb428d50f38eda7401e400baec2999b /board/mpc8349itx | |
parent | 48041365b3420589ad464ebc7752e0053538b729 (diff) | |
download | u-boot-bf0b542d6773a5a1cbce77691f009b06d9aeb57d.tar.xz |
mpc83xx: add OF_FLAT_TREE bits to 83xx boards
add ft_pci_setup, OF_CPU, OF_SOC, OF_TBCLK, and
STDOUT_PATH configuration bits to mpc8349emds,
mpc8349itx, and mpc8360emds board code.
redo environment to use bootm with the fdtaddr
for booting ARCH=powerpc kernels by default,
and provide default fdtaddr values.
Diffstat (limited to 'board/mpc8349itx')
-rw-r--r-- | board/mpc8349itx/mpc8349itx.c | 23 | ||||
-rw-r--r-- | board/mpc8349itx/pci.c | 22 |
2 files changed, 45 insertions, 0 deletions
diff --git a/board/mpc8349itx/mpc8349itx.c b/board/mpc8349itx/mpc8349itx.c index 4662645..9fce973 100644 --- a/board/mpc8349itx/mpc8349itx.c +++ b/board/mpc8349itx/mpc8349itx.c @@ -37,6 +37,9 @@ #else #include <asm/mmu.h> #endif +#if defined(CONFIG_OF_FLAT_TREE) +#include <ft_build.h> +#endif #ifndef CONFIG_SPD_EEPROM /************************************************************************* @@ -459,3 +462,23 @@ int misc_init_r(void) return rc; } + +#if defined(CONFIG_OF_FLAT_TREE) && defined(CONFIG_OF_BOARD_SETUP) +void +ft_board_setup(void *blob, bd_t *bd) +{ + u32 *p; + int len; + +#ifdef CONFIG_PCI + ft_pci_setup(blob, bd); +#endif + ft_cpu_setup(blob, bd); + + p = ft_get_prop(blob, "/memory/reg", &len); + if (p != NULL) { + *p++ = cpu_to_be32(bd->bi_memstart); + *p = cpu_to_be32(bd->bi_memsize); + } +} +#endif diff --git a/board/mpc8349itx/pci.c b/board/mpc8349itx/pci.c index cf07020..b4637bc 100644 --- a/board/mpc8349itx/pci.c +++ b/board/mpc8349itx/pci.c @@ -330,3 +330,25 @@ void pci_init_board(void) } #endif /* CONFIG_PCI */ +#ifdef CONFIG_OF_FLAT_TREE +void +ft_pci_setup(void *blob, bd_t *bd) +{ + u32 *p; + int len; + + p = (u32 *)ft_get_prop(blob, "/" OF_SOC "/pci@8500/bus-range", &len); + if (p != NULL) { + p[0] = pci_hose[0].first_busno; + p[1] = pci_hose[0].last_busno; + } + +#ifdef CONFIG_MPC83XX_PCI2 + p = (u32 *)ft_get_prop(blob, "/" OF_SOC "/pci@8600/bus-range", &len); + if (p != NULL) { + p[0] = pci_hose[1].first_busno; + p[1] = pci_hose[1].last_busno; + } +#endif +} +#endif /* CONFIG_OF_FLAT_TREE */ |