]> Git Repo - u-boot.git/blobdiff - board/freescale/qemu-ppce500/qemu-ppce500.c
qemu-ppce500: Update get_phys_ccsrbar_addr_early()
[u-boot.git] / board / freescale / qemu-ppce500 / qemu-ppce500.c
index 230870d90e442d2d1ac7c6730218bfe725467116..0c65ec72d209602314380208143701514d851424 100644 (file)
@@ -50,13 +50,19 @@ uint64_t get_phys_ccsrbar_addr_early(void)
 {
        void *fdt = get_fdt_virt();
        uint64_t r;
 {
        void *fdt = get_fdt_virt();
        uint64_t r;
+       int size, node;
+       u32 naddr;
+       const fdt32_t *prop;
 
        /*
         * To be able to read the FDT we need to create a temporary TLB
         * map for it.
         */
        map_fdt_as(10);
 
        /*
         * To be able to read the FDT we need to create a temporary TLB
         * map for it.
         */
        map_fdt_as(10);
-       r = fdt_get_base_address(fdt, fdt_path_offset(fdt, "/soc"));
+       node = fdt_path_offset(fdt, "/soc");
+       naddr = fdt_address_cells(fdt, node);
+       prop = fdt_getprop(fdt, node, "ranges", &size);
+       r = fdt_translate_address(fdt, node, prop + naddr);
        disable_tlb(10);
 
        return r;
        disable_tlb(10);
 
        return r;
@@ -81,7 +87,7 @@ static int pci_map_region(void *fdt, int pci_node, int range_id,
        ulong map_addr;
        int r;
 
        ulong map_addr;
        int r;
 
-       r = fdt_read_range(fdt, pci_node, 0, NULL, &addr, &size);
+       r = fdt_read_range(fdt, pci_node, range_id, NULL, &addr, &size);
        if (r)
                return r;
 
        if (r)
                return r;
 
@@ -235,9 +241,11 @@ int board_eth_init(bd_t *bis)
 }
 
 #if defined(CONFIG_OF_BOARD_SETUP)
 }
 
 #if defined(CONFIG_OF_BOARD_SETUP)
-void ft_board_setup(void *blob, bd_t *bd)
+int ft_board_setup(void *blob, bd_t *bd)
 {
        FT_FSL_PCI_SETUP;
 {
        FT_FSL_PCI_SETUP;
+
+       return 0;
 }
 #endif
 
 }
 #endif
 
This page took 0.024906 seconds and 4 git commands to generate.