]> git.ipfire.org Git - thirdparty/u-boot.git/commitdiff
treewide: move bi_dram[] from bd to gd
authorIlias Apalodimas <ilias.apalodimas@linaro.org>
Wed, 17 Jun 2026 07:48:19 +0000 (10:48 +0300)
committerTom Rini <trini@konsulko.com>
Thu, 25 Jun 2026 00:13:24 +0000 (18:13 -0600)
Currently, the bi_dram[] information is stored in the board info
structure (bd). Because bd is only valid after reserve_board(),
dram_init_banksize() must be called late in the initialization process.
This limitation is problematic, as it forces us to rely on a variety of
bespoke functions to determine board RAM, bank memory sizes, and other
early setup requirements.

By moving bi_dram[] into the global data (gd), we can run it earlier.
This is particularly convenient since boards define their own
dram_init_banksize() routines, which do not always rely on parsing
Device Tree (DT) memory nodes.

Additionally, U-Boot defaults to relocating to the top of the first memory
bank. While boards currently use custom functions to override this
behavior, having the DRAM bank information available earlier in gd makes
relocating to a different bank trivial and standardizes the process.

Reviewed-by: Anshul Dalal <anshuld@ti.com>
Tested-by: Michal Simek <michal.simek@amd.com> # Versal Gen 2 Vek385
Tested-by: Anshul Dalal <anshuld@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Tested-by: Christophe Leroy (CS GROUP) <chleroy@kernel.org>
167 files changed:
api/api_platform.c
arch/arm/cpu/armv8/cache_v8.c
arch/arm/cpu/armv8/fsl-layerscape/cpu.c
arch/arm/lib/bootm-fdt.c
arch/arm/lib/bootm.c
arch/arm/lib/cache-cp15.c
arch/arm/lib/image.c
arch/arm/mach-airoha/an7581/init.c
arch/arm/mach-apple/board.c
arch/arm/mach-davinci/misc.c
arch/arm/mach-imx/ele_ahab.c
arch/arm/mach-imx/imx8/ahab.c
arch/arm/mach-imx/imx8/cpu.c
arch/arm/mach-imx/imx8m/soc.c
arch/arm/mach-imx/imx8ulp/soc.c
arch/arm/mach-imx/imx9/scmi/soc.c
arch/arm/mach-imx/imx9/soc.c
arch/arm/mach-imx/mx5/mx53_dram.c
arch/arm/mach-imx/spl.c
arch/arm/mach-k3/k3-ddr.c
arch/arm/mach-mvebu/alleycat5/cpu.c
arch/arm/mach-mvebu/armada3700/cpu.c
arch/arm/mach-mvebu/armada8k/dram.c
arch/arm/mach-mvebu/dram.c
arch/arm/mach-omap2/am33xx/board.c
arch/arm/mach-omap2/omap-cache.c
arch/arm/mach-omap2/omap3/emif4.c
arch/arm/mach-omap2/omap3/sdrc.c
arch/arm/mach-owl/soc.c
arch/arm/mach-renesas/memmap-gen3.c
arch/arm/mach-renesas/memmap-rzg2l.c
arch/arm/mach-rockchip/rk3588/rk3588.c
arch/arm/mach-rockchip/sdram.c
arch/arm/mach-snapdragon/board.c
arch/arm/mach-socfpga/board.c
arch/arm/mach-socfpga/misc_arria10.c
arch/arm/mach-stm32mp/cmd_stm32prog/stm32prog.c
arch/arm/mach-stm32mp/stm32mp1/cpu.c
arch/arm/mach-tegra/board2.c
arch/arm/mach-tegra/cboot.c
arch/arm/mach-uniphier/dram_init.c
arch/arm/mach-uniphier/fdt-fixup.c
arch/arm/mach-versal-net/cpu.c
arch/arm/mach-versal/cpu.c
arch/arm/mach-versal2/cpu.c
arch/arm/mach-zynqmp/cpu.c
arch/mips/mach-octeon/dram.c
arch/riscv/cpu/k1/dram.c
arch/sandbox/cpu/spl.c
arch/x86/cpu/coreboot/sdram.c
arch/x86/cpu/efi/payload.c
arch/x86/cpu/efi/sdram.c
arch/x86/cpu/intel_common/mrc.c
arch/x86/cpu/ivybridge/sdram_nop.c
arch/x86/cpu/qemu/dram.c
arch/x86/cpu/quark/dram.c
arch/x86/cpu/slimbootloader/sdram.c
arch/x86/cpu/tangier/sdram.c
arch/x86/lib/bootm.c
arch/x86/lib/fsp/fsp_dram.c
board/CZ.NIC/turris_1x/turris_1x.c
board/armltd/corstone1000/corstone1000.c
board/armltd/integrator/integrator.c
board/armltd/total_compute/total_compute.c
board/armltd/vexpress/vexpress_common.c
board/atmel/common/video_display.c
board/atmel/sam9x60_curiosity/sam9x60_curiosity.c
board/atmel/sam9x75_curiosity/sam9x75_curiosity.c
board/atmel/sama5d27_som1_ek/sama5d27_som1_ek.c
board/atmel/sama5d27_wlsom1_ek/sama5d27_wlsom1_ek.c
board/atmel/sama5d29_curiosity/sama5d29_curiosity.c
board/atmel/sama5d2_xplained/sama5d2_xplained.c
board/atmel/sama7d65_curiosity/sama7d65_curiosity.c
board/atmel/sama7g54_curiosity/sama7g54_curiosity.c
board/axiado/scm3005/scm3005.c
board/broadcom/bcmns3/ns3.c
board/compulab/cm_fx6/cm_fx6.c
board/elgin/elgin_rv1108/elgin_rv1108.c
board/esd/meesc/meesc.c
board/friendlyarm/nanopi2/board.c
board/ge/mx53ppd/mx53ppd.c
board/hisilicon/hikey/hikey.c
board/hisilicon/hikey960/hikey960.c
board/hisilicon/poplar/poplar.c
board/k+p/kp_imx53/kp_imx53.c
board/keymile/pg-wcom-ls102xa/ddr.c
board/kontron/sl28/sl28.c
board/kontron/sl28/spl_atf.c
board/liebherr/btt/btt.c
board/menlo/m53menlo/m53menlo.c
board/nuvoton/arbel_evb/arbel_evb.c
board/nxp/imxrt1020-evk/imxrt1020-evk.c
board/nxp/imxrt1050-evk/imxrt1050-evk.c
board/nxp/imxrt1170-evk/imxrt1170-evk.c
board/nxp/ls1021aqds/ddr.c
board/nxp/ls1028a/ls1028a.c
board/nxp/ls1043aqds/ls1043aqds.c
board/nxp/ls1043ardb/ls1043ardb.c
board/nxp/ls1046afrwy/ls1046afrwy.c
board/nxp/ls1046aqds/ls1046aqds.c
board/nxp/ls1046ardb/ls1046ardb.c
board/nxp/ls1088a/ls1088a.c
board/nxp/ls2080aqds/ls2080aqds.c
board/nxp/ls2080ardb/ls2080ardb.c
board/nxp/lx2160a/lx2160a.c
board/phytec/phycore_am62x/phycore-am62x.c
board/phytec/phycore_am64x/phycore-am64x.c
board/phytium/durian/durian.c
board/phytium/pe2201/pe2201.c
board/raspberrypi/rpi/rpi.c
board/renesas/common/rcar64-common.c
board/renesas/genmai/genmai.c
board/renesas/sparrowhawk/sparrowhawk.c
board/ronetix/pm9261/pm9261.c
board/ronetix/pm9263/pm9263.c
board/ronetix/pm9g45/pm9g45.c
board/samsung/arndale/arndale.c
board/samsung/common/board.c
board/samsung/exynos-mobile/exynos-mobile.c
board/samsung/goni/goni.c
board/samsung/smdkc100/smdkc100.c
board/samsung/smdkv310/smdkv310.c
board/siemens/iot2050/board.c
board/socionext/developerbox/developerbox.c
board/st/stih410-b2260/board.c
board/ste/stemmy/stemmy.c
board/ti/dra7xx/evm.c
board/ti/ks2_evm/board.c
board/toradex/colibri_imx7/colibri_imx7.c
board/toradex/verdin-am62/verdin-am62.c
board/toradex/verdin-am62p/verdin-am62p.c
board/traverse/ten64/ten64.c
board/xilinx/zynq/cmds.c
board/xilinx/zynqmp/zynqmp.c
boot/image-board.c
boot/image-fdt.c
cmd/bdinfo.c
cmd/ti/ddr4.c
cmd/ufetch.c
common/board_f.c
common/init/handoff.c
drivers/bootcount/bootcount_ram.c
drivers/ddr/altera/sdram_agilex.c
drivers/ddr/altera/sdram_agilex5.c
drivers/ddr/altera/sdram_agilex7m.c
drivers/ddr/altera/sdram_arria10.c
drivers/ddr/altera/sdram_n5x.c
drivers/ddr/altera/sdram_s10.c
drivers/ddr/altera/sdram_soc64.c
drivers/mmc/mvebu_mmc.c
drivers/net/mvgbe.c
drivers/pci/pci-uclass.c
drivers/usb/host/ehci-marvell.c
drivers/video/meson/meson_vpu.c
drivers/video/sunxi/sunxi_de2.c
drivers/video/sunxi/sunxi_display.c
include/asm-generic/global_data.h
include/asm-generic/u-boot.h
include/configs/m53menlo.h
include/configs/mx53cx9020.h
include/configs/mx53loco.h
include/configs/mx53ppd.h
include/fdtdec.h
include/init.h
lib/fdtdec.c
lib/lmb.c
test/cmd/bdinfo.c

index d5cbcd6e20102eeb754812983656c90870accfd6..d4edf3a20fe9adb23ec4b6ded76589b7a93afe6f 100644 (file)
@@ -21,8 +21,8 @@ int platform_sys_info(struct sys_info *si)
        si->clk_cpu = gd->cpu_clk;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++)
-               platform_set_mr(si, gd->bd->bi_dram[i].start,
-                               gd->bd->bi_dram[i].size, MR_ATTR_DRAM);
+               platform_set_mr(si, gd->dram[i].start,
+                               gd->dram[i].size, MR_ATTR_DRAM);
 
        platform_set_mr(si, gd->ram_base, gd->ram_size, MR_ATTR_DRAM);
        platform_set_mr(si, gd->bd->bi_flashstart, gd->bd->bi_flashsize, MR_ATTR_FLASH);
index 6c85022556ad441ee54fc1783ab3be662dbad3ad..e59528e576ee7257803c44a03a11bc55e6b5888f 100644 (file)
@@ -69,9 +69,9 @@ int mem_map_from_dram_banks(unsigned int index, unsigned int len, u64 attrs)
        }
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               mem_map[index].virt = gd->bd->bi_dram[i].start;
-               mem_map[index].phys = gd->bd->bi_dram[i].start;
-               mem_map[index].size = gd->bd->bi_dram[i].size;
+               mem_map[index].virt = gd->dram[i].start;
+               mem_map[index].phys = gd->dram[i].start;
+               mem_map[index].size = gd->dram[i].size;
                mem_map[index].attrs = attrs;
                index++;
        }
index cbeac6d438331331482aa890bfaf1dd69e2d0f9d..88adcf35432e4eea4ac45fbf65c031dcc80979f2 100644 (file)
@@ -538,16 +538,16 @@ static inline void final_mmu_setup(void)
                 */
                switch (final_map[index].virt) {
                case CFG_SYS_FSL_DRAM_BASE1:
-                       final_map[index].virt = gd->bd->bi_dram[0].start;
-                       final_map[index].phys = gd->bd->bi_dram[0].start;
-                       final_map[index].size = gd->bd->bi_dram[0].size;
+                       final_map[index].virt = gd->dram[0].start;
+                       final_map[index].phys = gd->dram[0].start;
+                       final_map[index].size = gd->dram[0].size;
                        break;
 #ifdef CFG_SYS_FSL_DRAM_BASE2
                case CFG_SYS_FSL_DRAM_BASE2:
 #if (CONFIG_NR_DRAM_BANKS >= 2)
-                       final_map[index].virt = gd->bd->bi_dram[1].start;
-                       final_map[index].phys = gd->bd->bi_dram[1].start;
-                       final_map[index].size = gd->bd->bi_dram[1].size;
+                       final_map[index].virt = gd->dram[1].start;
+                       final_map[index].phys = gd->dram[1].start;
+                       final_map[index].size = gd->dram[1].size;
 #else
                        final_map[index].size = 0;
 #endif
@@ -556,9 +556,9 @@ static inline void final_mmu_setup(void)
 #ifdef CFG_SYS_FSL_DRAM_BASE3
                case CFG_SYS_FSL_DRAM_BASE3:
 #if (CONFIG_NR_DRAM_BANKS >= 3)
-                       final_map[index].virt = gd->bd->bi_dram[2].start;
-                       final_map[index].phys = gd->bd->bi_dram[2].start;
-                       final_map[index].size = gd->bd->bi_dram[2].size;
+                       final_map[index].virt = gd->dram[2].start;
+                       final_map[index].phys = gd->dram[2].start;
+                       final_map[index].size = gd->dram[2].size;
 #else
                        final_map[index].size = 0;
 #endif
@@ -1396,10 +1396,10 @@ static int tfa_dram_init_banksize(void)
                }
 
                debug("bank[%d]: start %lx, size %lx\n", i, res.a1, res.a2);
-               gd->bd->bi_dram[i].start = res.a1;
-               gd->bd->bi_dram[i].size = res.a2;
+               gd->dram[i].start = res.a1;
+               gd->dram[i].size = res.a2;
 
-               dram_size -= gd->bd->bi_dram[i].size;
+               dram_size -= gd->dram[i].size;
 
                i++;
        } while (dram_size);
@@ -1410,24 +1410,24 @@ static int tfa_dram_init_banksize(void)
 #if defined(CONFIG_RESV_RAM) && !defined(CONFIG_XPL_BUILD)
        /* Assign memory for MC */
 #ifdef CONFIG_SYS_DDR_BLOCK3_BASE
-       if (gd->bd->bi_dram[2].size >=
-           board_reserve_ram_top(gd->bd->bi_dram[2].size)) {
-               gd->arch.resv_ram = gd->bd->bi_dram[2].start +
-                           gd->bd->bi_dram[2].size -
-                           board_reserve_ram_top(gd->bd->bi_dram[2].size);
+       if (gd->dram[2].size >=
+           board_reserve_ram_top(gd->dram[2].size)) {
+               gd->arch.resv_ram = gd->dram[2].start +
+                           gd->dram[2].size -
+                           board_reserve_ram_top(gd->dram[2].size);
        } else
 #endif
        {
-               if (gd->bd->bi_dram[1].size >=
-                   board_reserve_ram_top(gd->bd->bi_dram[1].size)) {
-                       gd->arch.resv_ram = gd->bd->bi_dram[1].start +
-                               gd->bd->bi_dram[1].size -
-                               board_reserve_ram_top(gd->bd->bi_dram[1].size);
-               } else if (gd->bd->bi_dram[0].size >
-                          board_reserve_ram_top(gd->bd->bi_dram[0].size)) {
-                       gd->arch.resv_ram = gd->bd->bi_dram[0].start +
-                               gd->bd->bi_dram[0].size -
-                               board_reserve_ram_top(gd->bd->bi_dram[0].size);
+               if (gd->dram[1].size >=
+                   board_reserve_ram_top(gd->dram[1].size)) {
+                       gd->arch.resv_ram = gd->dram[1].start +
+                               gd->dram[1].size -
+                               board_reserve_ram_top(gd->dram[1].size);
+               } else if (gd->dram[0].size >
+                          board_reserve_ram_top(gd->dram[0].size)) {
+                       gd->arch.resv_ram = gd->dram[0].start +
+                               gd->dram[0].size -
+                               board_reserve_ram_top(gd->dram[0].size);
                }
        }
 #endif /* CONFIG_RESV_RAM */
@@ -1464,30 +1464,30 @@ int dram_init_banksize(void)
        }
 #endif
 
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
        if (gd->ram_size > CFG_SYS_DDR_BLOCK1_SIZE) {
-               gd->bd->bi_dram[0].size = CFG_SYS_DDR_BLOCK1_SIZE;
-               gd->bd->bi_dram[1].start = CFG_SYS_DDR_BLOCK2_BASE;
-               gd->bd->bi_dram[1].size = gd->ram_size -
+               gd->dram[0].size = CFG_SYS_DDR_BLOCK1_SIZE;
+               gd->dram[1].start = CFG_SYS_DDR_BLOCK2_BASE;
+               gd->dram[1].size = gd->ram_size -
                                          CFG_SYS_DDR_BLOCK1_SIZE;
 #ifdef CONFIG_SYS_DDR_BLOCK3_BASE
-               if (gd->bi_dram[1].size > CONFIG_SYS_DDR_BLOCK2_SIZE) {
-                       gd->bd->bi_dram[2].start = CONFIG_SYS_DDR_BLOCK3_BASE;
-                       gd->bd->bi_dram[2].size = gd->bd->bi_dram[1].size -
+               if (gd->dram[1].size > CONFIG_SYS_DDR_BLOCK2_SIZE) {
+                       gd->dram[2].start = CONFIG_SYS_DDR_BLOCK3_BASE;
+                       gd->dram[2].size = gd->dram[1].size -
                                                  CONFIG_SYS_DDR_BLOCK2_SIZE;
-                       gd->bd->bi_dram[1].size = CONFIG_SYS_DDR_BLOCK2_SIZE;
+                       gd->dram[1].size = CONFIG_SYS_DDR_BLOCK2_SIZE;
                }
 #endif
        } else {
-               gd->bd->bi_dram[0].size = gd->ram_size;
+               gd->dram[0].size = gd->ram_size;
        }
 #ifdef CFG_SYS_MEM_RESERVE_SECURE
-       if (gd->bd->bi_dram[0].size >
+       if (gd->dram[0].size >
                                CFG_SYS_MEM_RESERVE_SECURE) {
-               gd->bd->bi_dram[0].size -=
+               gd->dram[0].size -=
                                CFG_SYS_MEM_RESERVE_SECURE;
-               gd->arch.secure_ram = gd->bd->bi_dram[0].start +
-                                     gd->bd->bi_dram[0].size;
+               gd->arch.secure_ram = gd->dram[0].start +
+                                     gd->dram[0].size;
                gd->arch.secure_ram |= MEM_RESERVE_SECURE_MAINTAINED;
                gd->ram_size -= CFG_SYS_MEM_RESERVE_SECURE;
        }
@@ -1496,24 +1496,24 @@ int dram_init_banksize(void)
 #if defined(CONFIG_RESV_RAM) && !defined(CONFIG_XPL_BUILD)
        /* Assign memory for MC */
 #ifdef CONFIG_SYS_DDR_BLOCK3_BASE
-       if (gd->bd->bi_dram[2].size >=
-           board_reserve_ram_top(gd->bd->bi_dram[2].size)) {
-               gd->arch.resv_ram = gd->bd->bi_dram[2].start +
-                           gd->bd->bi_dram[2].size -
-                           board_reserve_ram_top(gd->bd->bi_dram[2].size);
+       if (gd->dram[2].size >=
+           board_reserve_ram_top(gd->dram[2].size)) {
+               gd->arch.resv_ram = gd->dram[2].start +
+                           gd->dram[2].size -
+                           board_reserve_ram_top(gd->dram[2].size);
        } else
 #endif
        {
-               if (gd->bd->bi_dram[1].size >=
-                   board_reserve_ram_top(gd->bd->bi_dram[1].size)) {
-                       gd->arch.resv_ram = gd->bd->bi_dram[1].start +
-                               gd->bd->bi_dram[1].size -
-                               board_reserve_ram_top(gd->bd->bi_dram[1].size);
-               } else if (gd->bd->bi_dram[0].size >
-                          board_reserve_ram_top(gd->bd->bi_dram[0].size)) {
-                       gd->arch.resv_ram = gd->bd->bi_dram[0].start +
-                               gd->bd->bi_dram[0].size -
-                               board_reserve_ram_top(gd->bd->bi_dram[0].size);
+               if (gd->dram[1].size >=
+                   board_reserve_ram_top(gd->dram[1].size)) {
+                       gd->arch.resv_ram = gd->dram[1].start +
+                               gd->dram[1].size -
+                               board_reserve_ram_top(gd->dram[1].size);
+               } else if (gd->dram[0].size >
+                          board_reserve_ram_top(gd->dram[0].size)) {
+                       gd->arch.resv_ram = gd->dram[0].start +
+                               gd->dram[0].size -
+                               board_reserve_ram_top(gd->dram[0].size);
                }
        }
 #endif /* CONFIG_RESV_RAM */
@@ -1535,8 +1535,8 @@ int dram_init_banksize(void)
                                          CONFIG_DP_DDR_DIMM_SLOTS_PER_CTLR,
                                          NULL, NULL, NULL);
                if (dp_ddr_size) {
-                       gd->bd->bi_dram[2].start = CONFIG_SYS_DP_DDR_BASE;
-                       gd->bd->bi_dram[2].size = dp_ddr_size;
+                       gd->dram[2].start = CONFIG_SYS_DP_DDR_BASE;
+                       gd->dram[2].size = dp_ddr_size;
                } else {
                        puts("Not detected");
                }
@@ -1567,8 +1567,8 @@ void lmb_arch_add_memory(void)
                if (i == 2)
                        continue;       /* skip DP-DDR */
 #endif
-               ram_start = gd->bd->bi_dram[i].start;
-               ram_size = gd->bd->bi_dram[i].size;
+               ram_start = gd->dram[i].start;
+               ram_size = gd->dram[i].size;
 #ifdef CONFIG_RESV_RAM
                if (gd->arch.resv_ram >= ram_start &&
                    gd->arch.resv_ram < ram_start + ram_size)
index 2671f9a0ebf5e71ac95214f374955c370497590a..a82ceeaf22ff64ed4f9c8ad7a676205b7b08684d 100644 (file)
@@ -35,14 +35,13 @@ int arch_fixup_fdt(void *blob)
 {
        __maybe_unused int ret = 0;
 #if defined(CONFIG_ARMV7_NONSEC) || defined(CONFIG_OF_LIBFDT)
-       struct bd_info *bd = gd->bd;
        int bank;
        u64 start[CONFIG_NR_DRAM_BANKS];
        u64 size[CONFIG_NR_DRAM_BANKS];
 
        for (bank = 0; bank < CONFIG_NR_DRAM_BANKS; bank++) {
-               start[bank] = bd->bi_dram[bank].start;
-               size[bank] = bd->bi_dram[bank].size;
+               start[bank] = gd->dram[bank].start;
+               size[bank] = gd->dram[bank].size;
 #ifdef CONFIG_ARMV7_NONSEC
                ret = armv7_apply_memory_carveout(&start[bank], &size[bank]);
                if (ret)
index 1cde655bc80c9d3bcb2c19add6662aeed83a3a1c..9a115cc60784bf0f07db27b20ae1b78191ad5b46 100644 (file)
@@ -64,8 +64,8 @@ static void setup_memory_tags(struct bd_info *bd)
                params->hdr.tag = ATAG_MEM;
                params->hdr.size = tag_size (tag_mem32);
 
-               params->u.mem.start = bd->bi_dram[i].start;
-               params->u.mem.size = bd->bi_dram[i].size;
+               params->u.mem.start = gd->dram[i].start;
+               params->u.mem.size = gd->dram[i].size;
 
                params = tag_next (params);
        }
index 947012f29963d0663b02b77c348a17098df6fd77..28bb6fd36c8cea9ffbd14df023c630fbc3a8f96c 100644 (file)
@@ -94,17 +94,16 @@ void mmu_set_region_dcache_behaviour_phys(phys_addr_t start, phys_addr_t phys,
 
 __weak void dram_bank_mmu_setup(int bank)
 {
-       struct bd_info *bd = gd->bd;
        int     i;
 
-       /* bd->bi_dram is available only after relocation */
+       /* gd->dram is available only after relocation */
        if ((gd->flags & GD_FLG_RELOC) == 0)
                return;
 
        debug("%s: bank: %d\n", __func__, bank);
-       for (i = bd->bi_dram[bank].start >> MMU_SECTION_SHIFT;
-            i < (bd->bi_dram[bank].start >> MMU_SECTION_SHIFT) +
-                (bd->bi_dram[bank].size >> MMU_SECTION_SHIFT);
+       for (i = gd->dram[bank].start >> MMU_SECTION_SHIFT;
+            i < (gd->dram[bank].start >> MMU_SECTION_SHIFT) +
+                (gd->dram[bank].size >> MMU_SECTION_SHIFT);
             i++)
                set_section_dcache(i, DCACHE_DEFAULT_OPTION);
 }
index 1f672eee2c86769417692d890a7dd8e4699555f2..2268661de93a55adfa88579abbe6f031c14f221d 100644 (file)
@@ -69,7 +69,7 @@ int booti_setup(ulong image, ulong *relocated_addr, ulong *size,
        if (!force_reloc && (le64_to_cpu(ih->flags) & BIT(3)))
                dst = image - text_offset;
        else
-               dst = gd->bd->bi_dram[0].start;
+               dst = gd->dram[0].start;
 
        *relocated_addr = ALIGN(dst, SZ_2M) + text_offset;
 
index ab32706a79d0c51bb67c9648165e56ae59686923..f33527ca129a89a9167bcbb3c58371705f855f2e 100644 (file)
@@ -23,12 +23,12 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = gd->ram_base;
-       gd->bd->bi_dram[0].size = get_effective_memsize();
+       gd->dram[0].start = gd->ram_base;
+       gd->dram[0].size = get_effective_memsize();
 
        if (gd->ram_size > SZ_2G) {
-               gd->bd->bi_dram[1].start = gd->ram_base + SZ_2G;
-               gd->bd->bi_dram[1].size = gd->ram_size - SZ_2G;
+               gd->dram[1].start = gd->ram_base + SZ_2G;
+               gd->dram[1].size = gd->ram_size - SZ_2G;
        }
 
        return 0;
index 20054f540890157460b7ebec7efcadd09d216fbf..e74a5a76919a3d9a251b721cc28e006d9b97857e 100644 (file)
@@ -807,8 +807,8 @@ void build_mem_map(void)
                ;
 
        /* Align RAM mapping to page boundaries */
-       base = gd->bd->bi_dram[0].start;
-       size = gd->bd->bi_dram[0].size;
+       base = gd->dram[0].start;
+       size = gd->dram[0].size;
        size += (base - ALIGN_DOWN(base, SZ_4K));
        base = ALIGN_DOWN(base, SZ_4K);
        size = ALIGN(size, SZ_4K);
index 07125eac7cd34b9f762ced41e7e0c8dde2506dbd..2281686d6338ba2f4fe99d689f53cc709be5cf2c 100644 (file)
@@ -33,8 +33,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-       gd->bd->bi_dram[0].size = gd->ram_size;
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].size = gd->ram_size;
 
        return 0;
 }
index 86b11bdf2acc315224933b05b3bb50d0cbc8ed15..e1284833ac57a7dcadbea124f9a7882a680da569 100644 (file)
@@ -311,12 +311,11 @@ int ahab_verify_cntr_image(struct boot_img_t *img, int image_index)
 static inline bool check_in_dram(ulong addr)
 {
        int i;
-       struct bd_info *bd = gd->bd;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; ++i) {
-               if (bd->bi_dram[i].size) {
-                       if (addr >= bd->bi_dram[i].start &&
-                           addr < (bd->bi_dram[i].start + bd->bi_dram[i].size))
+               if (gd->dram[i].size) {
+                       if (addr >= gd->dram[i].start &&
+                           addr < (gd->dram[i].start + gd->dram[i].size))
                                return true;
                }
        }
index 71a3b3419137115eb47823e842213cf5bda20329..34712747fa3564449d783a20da797ac5da6247f9 100644 (file)
@@ -111,12 +111,11 @@ int ahab_verify_cntr_image(struct boot_img_t *img, int image_index)
 static inline bool check_in_dram(ulong addr)
 {
        int i;
-       struct bd_info *bd = gd->bd;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; ++i) {
-               if (bd->bi_dram[i].size) {
-                       if (addr >= bd->bi_dram[i].start &&
-                           addr < (bd->bi_dram[i].start + bd->bi_dram[i].size))
+               if (gd->dram[i].size) {
+                       if (addr >= gd->dram[i].start &&
+                           addr < (gd->dram[i].start + gd->dram[i].size))
                                return true;
                }
        }
index f4738e3fda8b185fbe4c59a62fae19b64217d9d9..b52675d8aba652e525d9217c49b36de546fb5872 100644 (file)
@@ -604,18 +604,18 @@ static void dram_bank_sort(int current_bank)
        phys_size_t size;
 
        while (current_bank > 0) {
-               if (gd->bd->bi_dram[current_bank - 1].start >
-                   gd->bd->bi_dram[current_bank].start) {
-                       start = gd->bd->bi_dram[current_bank - 1].start;
-                       size = gd->bd->bi_dram[current_bank - 1].size;
-
-                       gd->bd->bi_dram[current_bank - 1].start =
-                               gd->bd->bi_dram[current_bank].start;
-                       gd->bd->bi_dram[current_bank - 1].size =
-                               gd->bd->bi_dram[current_bank].size;
-
-                       gd->bd->bi_dram[current_bank].start = start;
-                       gd->bd->bi_dram[current_bank].size = size;
+               if (gd->dram[current_bank - 1].start >
+                   gd->dram[current_bank].start) {
+                       start = gd->dram[current_bank - 1].start;
+                       size = gd->dram[current_bank - 1].size;
+
+                       gd->dram[current_bank - 1].start =
+                               gd->dram[current_bank].start;
+                       gd->dram[current_bank - 1].size =
+                               gd->dram[current_bank].size;
+
+                       gd->dram[current_bank].start = start;
+                       gd->dram[current_bank].size = size;
                }
                current_bank--;
        }
@@ -643,24 +643,24 @@ int dram_init_banksize(void)
                                continue;
 
                        if (start >= phys_sdram_1_start && start <= end1) {
-                               gd->bd->bi_dram[i].start = start;
+                               gd->dram[i].start = start;
 
                                if ((end + 1) <= end1)
-                                       gd->bd->bi_dram[i].size =
+                                       gd->dram[i].size =
                                                end - start + 1;
                                else
-                                       gd->bd->bi_dram[i].size = end1 - start;
+                                       gd->dram[i].size = end1 - start;
 
                                dram_bank_sort(i);
                                i++;
                        } else if (start >= phys_sdram_2_start && start <= end2) {
-                               gd->bd->bi_dram[i].start = start;
+                               gd->dram[i].start = start;
 
                                if ((end + 1) <= end2)
-                                       gd->bd->bi_dram[i].size =
+                                       gd->dram[i].size =
                                                end - start + 1;
                                else
-                                       gd->bd->bi_dram[i].size = end2 - start;
+                                       gd->dram[i].size = end2 - start;
 
                                dram_bank_sort(i);
                                i++;
@@ -670,10 +670,10 @@ int dram_init_banksize(void)
 
        /* If error, set to the default value */
        if (!i) {
-               gd->bd->bi_dram[0].start = phys_sdram_1_start;
-               gd->bd->bi_dram[0].size = phys_sdram_1_size;
-               gd->bd->bi_dram[1].start = phys_sdram_2_start;
-               gd->bd->bi_dram[1].size = phys_sdram_2_size;
+               gd->dram[0].start = phys_sdram_1_start;
+               gd->dram[0].size = phys_sdram_1_size;
+               gd->dram[1].start = phys_sdram_2_start;
+               gd->dram[1].size = phys_sdram_2_size;
        }
 
        return 0;
index 498bbe6704fc1a1ee518751986a461d0ff0e0f74..e600fd6b33ec97a775e04fa89381df8d2f8fc28f 100644 (file)
@@ -224,11 +224,11 @@ void enable_caches(void)
 
        while (i < CONFIG_NR_DRAM_BANKS &&
               entry < ARRAY_SIZE(imx8m_mem_map)) {
-               if (gd->bd->bi_dram[i].start == 0)
+               if (gd->dram[i].start == 0)
                        break;
-               imx8m_mem_map[entry].phys = gd->bd->bi_dram[i].start;
-               imx8m_mem_map[entry].virt = gd->bd->bi_dram[i].start;
-               imx8m_mem_map[entry].size = gd->bd->bi_dram[i].size;
+               imx8m_mem_map[entry].phys = gd->dram[i].start;
+               imx8m_mem_map[entry].virt = gd->dram[i].start;
+               imx8m_mem_map[entry].size = gd->dram[i].size;
                imx8m_mem_map[entry].attrs = attrs;
                debug("Added memory mapping (%d): %llx %llx\n", entry,
                      imx8m_mem_map[entry].phys, imx8m_mem_map[entry].size);
@@ -290,24 +290,24 @@ int dram_init_banksize(void)
                sdram_b2_size = 0;
        }
 
-       gd->bd->bi_dram[bank].start = PHYS_SDRAM;
+       gd->dram[bank].start = PHYS_SDRAM;
        if (!IS_ENABLED(CONFIG_ARMV8_PSCI) && !IS_ENABLED(CONFIG_XPL_BUILD) && rom_pointer[1]) {
                phys_addr_t optee_start = (phys_addr_t)rom_pointer[0];
                phys_size_t optee_size = (size_t)rom_pointer[1];
 
-               gd->bd->bi_dram[bank].size = optee_start - gd->bd->bi_dram[bank].start;
+               gd->dram[bank].size = optee_start - gd->dram[bank].start;
                if ((optee_start + optee_size) < (PHYS_SDRAM + sdram_b1_size)) {
                        if (++bank >= CONFIG_NR_DRAM_BANKS) {
                                puts("CONFIG_NR_DRAM_BANKS is not enough\n");
                                return -1;
                        }
 
-                       gd->bd->bi_dram[bank].start = optee_start + optee_size;
-                       gd->bd->bi_dram[bank].size = PHYS_SDRAM +
-                               sdram_b1_size - gd->bd->bi_dram[bank].start;
+                       gd->dram[bank].start = optee_start + optee_size;
+                       gd->dram[bank].size = PHYS_SDRAM +
+                               sdram_b1_size - gd->dram[bank].start;
                }
        } else {
-               gd->bd->bi_dram[bank].size = sdram_b1_size;
+               gd->dram[bank].size = sdram_b1_size;
        }
 
        if (sdram_b2_size) {
@@ -315,8 +315,8 @@ int dram_init_banksize(void)
                        puts("CONFIG_NR_DRAM_BANKS is not enough for SDRAM_2\n");
                        return -1;
                }
-               gd->bd->bi_dram[bank].start = 0x100000000UL;
-               gd->bd->bi_dram[bank].size = sdram_b2_size;
+               gd->dram[bank].start = 0x100000000UL;
+               gd->dram[bank].size = sdram_b2_size;
        }
 
        return 0;
index ccdb949a9da8255c0ec6be22f362e9f4940cc6c5..6d6f3b81aca1733f3c118fc81185f576e209a4fa 100644 (file)
@@ -512,11 +512,11 @@ void enable_caches(void)
 
                while (i < CONFIG_NR_DRAM_BANKS &&
                       entry < ARRAY_SIZE(imx8ulp_arm64_mem_map)) {
-                       if (gd->bd->bi_dram[i].start == 0)
+                       if (gd->dram[i].start == 0)
                                break;
-                       imx8ulp_arm64_mem_map[entry].phys = gd->bd->bi_dram[i].start;
-                       imx8ulp_arm64_mem_map[entry].virt = gd->bd->bi_dram[i].start;
-                       imx8ulp_arm64_mem_map[entry].size = gd->bd->bi_dram[i].size;
+                       imx8ulp_arm64_mem_map[entry].phys = gd->dram[i].start;
+                       imx8ulp_arm64_mem_map[entry].virt = gd->dram[i].start;
+                       imx8ulp_arm64_mem_map[entry].size = gd->dram[i].size;
                        imx8ulp_arm64_mem_map[entry].attrs = attrs;
                        debug("Added memory mapping (%d): %llx %llx\n", entry,
                              imx8ulp_arm64_mem_map[entry].phys, imx8ulp_arm64_mem_map[entry].size);
@@ -568,24 +568,24 @@ int dram_init_banksize(void)
        if (ret)
                return ret;
 
-       gd->bd->bi_dram[bank].start = PHYS_SDRAM;
+       gd->dram[bank].start = PHYS_SDRAM;
        if (rom_pointer[1]) {
                phys_addr_t optee_start = (phys_addr_t)rom_pointer[0];
                phys_size_t optee_size = (size_t)rom_pointer[1];
 
-               gd->bd->bi_dram[bank].size = optee_start - gd->bd->bi_dram[bank].start;
+               gd->dram[bank].size = optee_start - gd->dram[bank].start;
                if ((optee_start + optee_size) < (PHYS_SDRAM + sdram_size)) {
                        if (++bank >= CONFIG_NR_DRAM_BANKS) {
                                puts("CONFIG_NR_DRAM_BANKS is not enough\n");
                                return -1;
                        }
 
-                       gd->bd->bi_dram[bank].start = optee_start + optee_size;
-                       gd->bd->bi_dram[bank].size = PHYS_SDRAM +
-                               sdram_size - gd->bd->bi_dram[bank].start;
+                       gd->dram[bank].start = optee_start + optee_size;
+                       gd->dram[bank].size = PHYS_SDRAM +
+                               sdram_size - gd->dram[bank].start;
                }
        } else {
-               gd->bd->bi_dram[bank].size = sdram_size;
+               gd->dram[bank].size = sdram_size;
        }
 
        return 0;
index 123c1d51a4dc9dbab862a4462397300346103709..82b3cdffeea6de99da886528d7a1a04c764bda14 100644 (file)
@@ -356,11 +356,11 @@ void enable_caches(void)
 
        while (i < CONFIG_NR_DRAM_BANKS &&
               entry < ARRAY_SIZE(imx9_mem_map)) {
-               if (gd->bd->bi_dram[i].start == 0)
+               if (gd->dram[i].start == 0)
                        break;
-               imx9_mem_map[entry].phys = gd->bd->bi_dram[i].start;
-               imx9_mem_map[entry].virt = gd->bd->bi_dram[i].start;
-               imx9_mem_map[entry].size = gd->bd->bi_dram[i].size;
+               imx9_mem_map[entry].phys = gd->dram[i].start;
+               imx9_mem_map[entry].virt = gd->dram[i].start;
+               imx9_mem_map[entry].size = gd->dram[i].size;
                imx9_mem_map[entry].attrs = attrs;
                debug("Added memory mapping (%d): %llx %llx\n", entry,
                      imx9_mem_map[entry].phys, imx9_mem_map[entry].size);
@@ -453,24 +453,24 @@ int dram_init_banksize(void)
                sdram_b2_size = 0;
        }
 
-       gd->bd->bi_dram[bank].start = PHYS_SDRAM;
+       gd->dram[bank].start = PHYS_SDRAM;
        if (rom_pointer[1] && PHYS_SDRAM < (phys_addr_t)rom_pointer[0]) {
                phys_addr_t optee_start = (phys_addr_t)rom_pointer[0];
                phys_size_t optee_size = (size_t)rom_pointer[1];
 
-               gd->bd->bi_dram[bank].size = optee_start - gd->bd->bi_dram[bank].start;
+               gd->dram[bank].size = optee_start - gd->dram[bank].start;
                if ((optee_start + optee_size) < (PHYS_SDRAM + sdram_b1_size)) {
                        if (++bank >= CONFIG_NR_DRAM_BANKS) {
                                puts("CONFIG_NR_DRAM_BANKS is not enough\n");
                                return -1;
                        }
 
-                       gd->bd->bi_dram[bank].start = optee_start + optee_size;
-                       gd->bd->bi_dram[bank].size = PHYS_SDRAM +
-                               sdram_b1_size - gd->bd->bi_dram[bank].start;
+                       gd->dram[bank].start = optee_start + optee_size;
+                       gd->dram[bank].size = PHYS_SDRAM +
+                               sdram_b1_size - gd->dram[bank].start;
                }
        } else {
-               gd->bd->bi_dram[bank].size = sdram_b1_size;
+               gd->dram[bank].size = sdram_b1_size;
        }
 
        if (sdram_b2_size) {
@@ -478,8 +478,8 @@ int dram_init_banksize(void)
                        puts("CONFIG_NR_DRAM_BANKS is not enough for SDRAM_2\n");
                        return -1;
                }
-               gd->bd->bi_dram[bank].start = 0x100000000UL;
-               gd->bd->bi_dram[bank].size = sdram_b2_size;
+               gd->dram[bank].start = 0x100000000UL;
+               gd->dram[bank].size = sdram_b2_size;
        }
 
        return 0;
index 6576ecefd5f95103a0ada91bc1319f18fcb83137..0c731e7632975a97ae89d08351b2625572d59158 100644 (file)
@@ -367,11 +367,11 @@ void enable_caches(void)
 
        while (i < CONFIG_NR_DRAM_BANKS &&
               entry < ARRAY_SIZE(imx93_mem_map)) {
-               if (gd->bd->bi_dram[i].start == 0)
+               if (gd->dram[i].start == 0)
                        break;
-               imx93_mem_map[entry].phys = gd->bd->bi_dram[i].start;
-               imx93_mem_map[entry].virt = gd->bd->bi_dram[i].start;
-               imx93_mem_map[entry].size = gd->bd->bi_dram[i].size;
+               imx93_mem_map[entry].phys = gd->dram[i].start;
+               imx93_mem_map[entry].virt = gd->dram[i].start;
+               imx93_mem_map[entry].size = gd->dram[i].size;
                imx93_mem_map[entry].attrs = attrs;
                debug("Added memory mapping (%d): %llx %llx\n", entry,
                      imx93_mem_map[entry].phys, imx93_mem_map[entry].size);
@@ -445,24 +445,24 @@ int dram_init_banksize(void)
                sdram_b2_size = 0;
        }
 
-       gd->bd->bi_dram[bank].start = PHYS_SDRAM;
+       gd->dram[bank].start = PHYS_SDRAM;
        if (!IS_ENABLED(CONFIG_XPL_BUILD) && rom_pointer[1]) {
                phys_addr_t optee_start = (phys_addr_t)rom_pointer[0];
                phys_size_t optee_size = (size_t)rom_pointer[1];
 
-               gd->bd->bi_dram[bank].size = optee_start - gd->bd->bi_dram[bank].start;
+               gd->dram[bank].size = optee_start - gd->dram[bank].start;
                if ((optee_start + optee_size) < (PHYS_SDRAM + sdram_b1_size)) {
                        if (++bank >= CONFIG_NR_DRAM_BANKS) {
                                puts("CONFIG_NR_DRAM_BANKS is not enough\n");
                                return -1;
                        }
 
-                       gd->bd->bi_dram[bank].start = optee_start + optee_size;
-                       gd->bd->bi_dram[bank].size = PHYS_SDRAM +
-                               sdram_b1_size - gd->bd->bi_dram[bank].start;
+                       gd->dram[bank].start = optee_start + optee_size;
+                       gd->dram[bank].size = PHYS_SDRAM +
+                               sdram_b1_size - gd->dram[bank].start;
                }
        } else {
-               gd->bd->bi_dram[bank].size = sdram_b1_size;
+               gd->dram[bank].size = sdram_b1_size;
        }
 
        if (sdram_b2_size) {
@@ -470,8 +470,8 @@ int dram_init_banksize(void)
                        puts("CONFIG_NR_DRAM_BANKS is not enough for SDRAM_2\n");
                        return -1;
                }
-               gd->bd->bi_dram[bank].start = 0x100000000UL;
-               gd->bd->bi_dram[bank].size = sdram_b2_size;
+               gd->dram[bank].start = 0x100000000UL;
+               gd->dram[bank].size = sdram_b2_size;
        }
 
        return 0;
index 180a745d435156ebb37295ae9b9c047547b2ba89..5f7709e00b0f3f3651066dd8f861644810c52a55 100644 (file)
@@ -35,11 +35,11 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size = get_ram_size((void *)PHYS_SDRAM_1, 1 << 30);
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size = get_ram_size((void *)PHYS_SDRAM_1, 1 << 30);
 
-       gd->bd->bi_dram[1].start = PHYS_SDRAM_2;
-       gd->bd->bi_dram[1].size = get_ram_size((void *)PHYS_SDRAM_2, 1 << 30);
+       gd->dram[1].start = PHYS_SDRAM_2;
+       gd->dram[1].size = get_ram_size((void *)PHYS_SDRAM_2, 1 << 30);
 
        return 0;
 }
index 57ae81c7834ecfa771bc323b8624bec0eae24876..1029c1e4e856087f4d8c04a6e19e20a14f59aef4 100644 (file)
@@ -375,8 +375,8 @@ void *spl_load_simple_fit_fix_load(const void *fit)
 #if defined(CONFIG_MX6) && defined(CONFIG_SPL_OS_BOOT)
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-       gd->bd->bi_dram[0].size = imx_ddr_size();
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].size = imx_ddr_size();
 
        return 0;
 }
index 6e3e60cdc8659026576b61379498b62e4f81c9c2..35c30b1a16f3b7f0c77fcabe0348039b2d05a62c 100644 (file)
@@ -59,8 +59,8 @@ void fixup_memory_node(struct spl_image_info *spl_image)
        dram_init_banksize();
 
        for (bank = 0; bank < CONFIG_NR_DRAM_BANKS; bank++) {
-               start[bank] = gd->bd->bi_dram[bank].start;
-               size[bank] = gd->bd->bi_dram[bank].size;
+               start[bank] = gd->dram[bank].start;
+               size[bank] = gd->dram[bank].size;
        }
 
        ret = fdt_fixup_memory_banks(spl_image->fdt_addr, start, size,
index be2d9a25bf902e17490816e7d55ce5a39e718029..3ebb4294bddc37e6b7f25b4c996041c198c0ccb7 100644 (file)
@@ -138,8 +138,8 @@ int alleycat5_dram_init_banksize(void)
        /*
         * Config single DRAM bank
         */
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-       gd->bd->bi_dram[0].size = gd->ram_size;
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].size = gd->ram_size;
 
        return 0;
 }
index 17525691e6828b7e5a8e940e15f8a1d5c7085f96..38d9b40f482ea917c91be6edc0e3f7d5ec1e38e1 100644 (file)
@@ -256,7 +256,7 @@ int a3700_dram_init_banksize(void)
                 * build_mem_map.
                 */
                if (last_end == dram_wins[win].base) {
-                       gd->bd->bi_dram[bank - 1].size += size;
+                       gd->dram[bank - 1].size += size;
                        last_end += size;
                } else {
                        if (bank == CONFIG_NR_DRAM_BANKS) {
@@ -264,8 +264,8 @@ int a3700_dram_init_banksize(void)
                                return -ENOBUFS;
                        }
 
-                       gd->bd->bi_dram[bank].start = dram_wins[win].base;
-                       gd->bd->bi_dram[bank].size = size;
+                       gd->dram[bank].start = dram_wins[win].base;
+                       gd->dram[bank].size = size;
                        last_end = dram_wins[win].base + size;
                        ++bank;
                }
@@ -276,8 +276,8 @@ int a3700_dram_init_banksize(void)
         * the rest with zeros.
         */
        for (; bank < CONFIG_NR_DRAM_BANKS; ++bank) {
-               gd->bd->bi_dram[bank].start = 0;
-               gd->bd->bi_dram[bank].size = 0;
+               gd->dram[bank].start = 0;
+               gd->dram[bank].size = 0;
        }
 
        return 0;
index fd58551d0e32b2e15c5d86e4a79e086d8878b7be..af37dfa22523ee46f6e185671813cd74f246d645 100644 (file)
@@ -38,16 +38,16 @@ int a8k_dram_init_banksize(void)
         */
        phys_size_t max_bank0_size = SZ_4G - SZ_1G;
 
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
        if (gd->ram_size <= max_bank0_size) {
-               gd->bd->bi_dram[0].size = gd->ram_size;
+               gd->dram[0].size = gd->ram_size;
                return 0;
        }
 
-       gd->bd->bi_dram[0].size = max_bank0_size;
+       gd->dram[0].size = max_bank0_size;
        if (CONFIG_NR_DRAM_BANKS > 1) {
-               gd->bd->bi_dram[1].start = SZ_4G;
-               gd->bd->bi_dram[1].size = gd->ram_size - max_bank0_size;
+               gd->dram[1].start = SZ_4G;
+               gd->dram[1].size = gd->ram_size - max_bank0_size;
        }
 
        return 0;
index c00c6b9b3fc2c3bf60462d76d198a5d6c49d0fe6..41eaaa24bd0fca9ed17ad30992eb1d01c5c5857b 100644 (file)
@@ -294,11 +294,11 @@ int dram_init_banksize(void)
        int i;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               gd->bd->bi_dram[i].start = mvebu_sdram_bar(i);
-               gd->bd->bi_dram[i].size = mvebu_sdram_bs(i);
+               gd->dram[i].start = mvebu_sdram_bar(i);
+               gd->dram[i].size = mvebu_sdram_bs(i);
 
                /* Clip the banksize to 1GiB if it exceeds the max size */
-               size += gd->bd->bi_dram[i].size;
+               size += gd->dram[i].size;
                if (size > MVEBU_SDRAM_SIZE_MAX)
                        mvebu_sdram_bs_set(i, 0x40000000);
        }
index 8699cf46b673dc662ffeb444e25b35c776b4a367..729533d02d46797d37fe3e5ca5a13732c6b0ecb5 100644 (file)
@@ -80,8 +80,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-       gd->bd->bi_dram[0].size = gd->ram_size;
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].size = gd->ram_size;
 
        return 0;
 }
index 200a08fa5c83e8a749ecbefe0a3c5b82d002d4e3..f08a9b263f64f53124bc043615e4ecc608a7b065 100644 (file)
@@ -53,11 +53,10 @@ void enable_caches(void)
 
 void dram_bank_mmu_setup(int bank)
 {
-       struct bd_info *bd = gd->bd;
        int     i;
 
-       u32 start = bd->bi_dram[bank].start >> MMU_SECTION_SHIFT;
-       u32 size = bd->bi_dram[bank].size >> MMU_SECTION_SHIFT;
+       u32 start = gd->dram[bank].start >> MMU_SECTION_SHIFT;
+       u32 size = gd->dram[bank].size >> MMU_SECTION_SHIFT;
        u32 end = start + size;
 
        debug("%s: bank: %d\n", __func__, bank);
index 049eedfeb65b7919ec0b899fb26bd5ca249670ec..67e14d70e9212a55395ad2d72ac7c88b49ee4415 100644 (file)
@@ -150,10 +150,10 @@ int dram_init_banksize(void)
        size0 = get_sdr_cs_size(CS0);
        size1 = get_sdr_cs_size(CS1);
 
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size = size0;
-       gd->bd->bi_dram[1].start = PHYS_SDRAM_1 + get_sdr_cs_offset(CS1);
-       gd->bd->bi_dram[1].size = size1;
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size = size0;
+       gd->dram[1].start = PHYS_SDRAM_1 + get_sdr_cs_offset(CS1);
+       gd->dram[1].size = size1;
 
        return 0;
 }
index 24fae4843698379ce03425a965e1c3354ada5240..c4187369c29332a1aa348eca5555311d33728910 100644 (file)
@@ -222,10 +222,10 @@ int dram_init_banksize(void)
        size0 = get_sdr_cs_size(CS0);
        size1 = get_sdr_cs_size(CS1);
 
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size = size0;
-       gd->bd->bi_dram[1].start = PHYS_SDRAM_1 + get_sdr_cs_offset(CS1);
-       gd->bd->bi_dram[1].size = size1;
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size = size0;
+       gd->dram[1].start = PHYS_SDRAM_1 + get_sdr_cs_offset(CS1);
+       gd->dram[1].size = size1;
 
        return 0;
 }
index 0130cad7678258e9d6e2969122583facdf2a9df7..e316c2cc40e1c1be1c6d95a3e273c7317a6e5771 100644 (file)
@@ -50,8 +50,8 @@ int dram_init(void)
 /* This is called after dram_init() so use get_ram_size result */
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-       gd->bd->bi_dram[0].size = gd->ram_size;
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].size = gd->ram_size;
 
        return 0;
 }
index d24419f5daa521f799caba887e25f504a13ddaf2..f7dc2be6ccaabfe56f499de8c7ce65a5b2183abf 100644 (file)
@@ -70,8 +70,8 @@ void enable_caches(void)
 
        /* Generate entires for DRAM in 32bit address space */
        for (bank = 0; bank < CONFIG_NR_DRAM_BANKS; bank++) {
-               start = gd->bd->bi_dram[bank].start;
-               size = gd->bd->bi_dram[bank].size;
+               start = gd->dram[bank].start;
+               size = gd->dram[bank].size;
 
                /* Skip empty DRAM banks */
                if (!size)
@@ -114,8 +114,8 @@ void enable_caches(void)
 
        /* Generate entires for DRAM in 64bit address space */
        for (bank = 0; bank < CONFIG_NR_DRAM_BANKS; bank++) {
-               start = gd->bd->bi_dram[bank].start;
-               size = gd->bd->bi_dram[bank].size;
+               start = gd->dram[bank].start;
+               size = gd->dram[bank].size;
 
                /* Skip empty DRAM banks */
                if (!size)
index 3b3c6f7cde9a0422d8cfbc84702ab815cf0e0cde..5981b3c9c4d2d87b7053dfbac3dae7102098b478 100644 (file)
@@ -67,8 +67,8 @@ void enable_caches(void)
 
        /* Generate entries for DRAM in 32bit address space */
        for (bank = 0; bank < CONFIG_NR_DRAM_BANKS; bank++) {
-               start = gd->bd->bi_dram[bank].start;
-               size = gd->bd->bi_dram[bank].size;
+               start = gd->dram[bank].start;
+               size = gd->dram[bank].size;
 
                /* Skip empty DRAM banks */
                if (!size)
index eedce7b9b084f8578ec7f112b0bf0a5f10334173..c8de1a21024987bf7089f9417e3a74d299cd1fa0 100644 (file)
@@ -243,14 +243,14 @@ int arch_cpu_init(void)
 
 int rockchip_dram_init_banksize_fixup(struct bd_info *bd)
 {
-       size_t ram_top = bd->bi_dram[1].start + bd->bi_dram[1].size;
+       size_t ram_top = gd->dram[1].start + gd->dram[1].size;
 
        if (ram_top > DRAM_GAP_START) {
-               bd->bi_dram[1].size = DRAM_GAP_START - bd->bi_dram[1].start;
+               gd->dram[1].size = DRAM_GAP_START - gd->dram[1].start;
 
                if (ram_top > DRAM_GAP_END && CONFIG_NR_DRAM_BANKS > 2) {
-                       bd->bi_dram[2].start = DRAM_GAP_END;
-                       bd->bi_dram[2].size = ram_top - bd->bi_dram[2].start;
+                       gd->dram[2].start = DRAM_GAP_END;
+                       gd->dram[2].size = ram_top - gd->dram[2].start;
                }
        }
 
index ea0e3621af72471b5922b7b819326b6da4adfe2b..f0923186fa612c91dfc94050f087921cc6a402d5 100644 (file)
@@ -171,7 +171,7 @@ static int rockchip_dram_init_banksize(void)
 
        /*
         * Rockchip guaranteed DDR_MEM is ordered so no need to worry about
-        * bi_dram order.
+        * dram order.
         */
        for (i = 0, j = 0; i < ddr_info->count; i++, j++) {
                phys_size_t size = ddr_info->bank[(i + ddr_info->count)];
@@ -261,8 +261,8 @@ static int rockchip_dram_init_banksize(void)
                                 * split the region in two, one for before the
                                 * reserved memory area and one for after.
                                 */
-                               gd->bd->bi_dram[j].start = start_addr;
-                               gd->bd->bi_dram[j].size = rsrv_start - start_addr;
+                               gd->dram[j].start = start_addr;
+                               gd->dram[j].size = rsrv_start - start_addr;
 
                                j++;
 
@@ -281,8 +281,8 @@ static int rockchip_dram_init_banksize(void)
                        return -ENOMEM;
                }
 
-               gd->bd->bi_dram[j].start = start_addr;
-               gd->bd->bi_dram[j].size = size;
+               gd->dram[j].start = start_addr;
+               gd->dram[j].size = size;
        }
 
        return 0;
@@ -309,15 +309,15 @@ int dram_init_banksize(void)
              ret);
 
        /* Reserve 2M for ATF bl31 */
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE + SZ_2M;
-       gd->bd->bi_dram[0].size = top - gd->bd->bi_dram[0].start;
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE + SZ_2M;
+       gd->dram[0].size = top - gd->dram[0].start;
 
        /* Add usable memory beyond the blob of space for peripheral near 4GB */
        if (ram_top > SZ_4G && top < SZ_4G) {
-               gd->bd->bi_dram[1].start = SZ_4G;
-               gd->bd->bi_dram[1].size = ram_top - gd->bd->bi_dram[1].start;
+               gd->dram[1].start = SZ_4G;
+               gd->dram[1].size = ram_top - gd->dram[1].start;
        } else if (ram_top > SZ_4G && top == SZ_4G) {
-               gd->bd->bi_dram[0].size = ram_top - gd->bd->bi_dram[0].start;
+               gd->dram[0].size = ram_top - gd->dram[0].start;
        }
 #else
 #ifdef CONFIG_SPL_OPTEE_IMAGE
@@ -327,23 +327,23 @@ int dram_init_banksize(void)
                        TRUST_PARAMETER_OFFSET);
 
        if (tos_parameter->tee_mem.flags == 1) {
-               gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-               gd->bd->bi_dram[0].size = tos_parameter->tee_mem.phy_addr
+               gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+               gd->dram[0].size = tos_parameter->tee_mem.phy_addr
                                        - CFG_SYS_SDRAM_BASE;
-               gd->bd->bi_dram[1].start = tos_parameter->tee_mem.phy_addr +
+               gd->dram[1].start = tos_parameter->tee_mem.phy_addr +
                                        tos_parameter->tee_mem.size;
-               gd->bd->bi_dram[1].size = top - gd->bd->bi_dram[1].start;
+               gd->dram[1].size = top - gd->dram[1].start;
        } else {
-               gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-               gd->bd->bi_dram[0].size = 0x8400000;
+               gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+               gd->dram[0].size = 0x8400000;
                /* Reserve 32M for OPTEE with TA */
-               gd->bd->bi_dram[1].start = CFG_SYS_SDRAM_BASE
-                                       + gd->bd->bi_dram[0].size + 0x2000000;
-               gd->bd->bi_dram[1].size = top - gd->bd->bi_dram[1].start;
+               gd->dram[1].start = CFG_SYS_SDRAM_BASE
+                                       + gd->dram[0].size + 0x2000000;
+               gd->dram[1].size = top - gd->dram[1].start;
        }
 #else
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-       gd->bd->bi_dram[0].size = top - gd->bd->bi_dram[0].start;
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].size = top - gd->dram[0].start;
 #endif
 #endif
 
index 829a0109ac7807d692e127178f76d8822d5da5e2..35735f1551cbd5e7736d71f707bdc679692fdf49 100644 (file)
@@ -73,19 +73,19 @@ static int ddr_bank_cmp(const void *v1, const void *v2)
 }
 
 /* This has to be done post-relocation since gd->bd isn't preserved */
-static void qcom_configure_bi_dram(void)
+static void qcom_configure_dram(void)
 {
        int i;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               gd->bd->bi_dram[i].start = prevbl_ddr_banks[i].start;
-               gd->bd->bi_dram[i].size = prevbl_ddr_banks[i].size;
+               gd->dram[i].start = prevbl_ddr_banks[i].start;
+               gd->dram[i].size = prevbl_ddr_banks[i].size;
        }
 }
 
 int dram_init_banksize(void)
 {
-       qcom_configure_bi_dram();
+       qcom_configure_dram();
 
        return 0;
 }
@@ -594,15 +594,15 @@ static void build_mem_map(void)
         */
        mem_map[0].phys = 0x1000;
        mem_map[0].virt = mem_map[0].phys;
-       mem_map[0].size = gd->bd->bi_dram[0].start - mem_map[0].phys;
+       mem_map[0].size = gd->dram[0].start - mem_map[0].phys;
        mem_map[0].attrs = PTE_BLOCK_MEMTYPE(MT_DEVICE_NGNRNE) |
                         PTE_BLOCK_NON_SHARE |
                         PTE_BLOCK_PXN | PTE_BLOCK_UXN;
 
-       for (i = 1, j = 0; i < ARRAY_SIZE(rbx_mem_map) - 1 && gd->bd->bi_dram[j].size; i++, j++) {
-               mem_map[i].phys = gd->bd->bi_dram[j].start;
+       for (i = 1, j = 0; i < ARRAY_SIZE(rbx_mem_map) - 1 && gd->dram[j].size; i++, j++) {
+               mem_map[i].phys = gd->dram[j].start;
                mem_map[i].virt = mem_map[i].phys;
-               mem_map[i].size = gd->bd->bi_dram[j].size;
+               mem_map[i].size = gd->dram[j].size;
                mem_map[i].attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) | \
                                   PTE_BLOCK_INNER_SHARE;
        }
index 4d7f0b9a79cb539c29a0e7f246a856edba2d0e7d..b202ca258bc43c51235f19856611303a3f94d54b 100644 (file)
@@ -202,11 +202,10 @@ void board_prep_linux(struct bootm_headers *images)
 void lmb_arch_add_memory(void)
 {
        int i;
-       struct bd_info *bd = gd->bd;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               if (bd->bi_dram[i].size)
-                       lmb_add(bd->bi_dram[i].start, bd->bi_dram[i].size);
+               if (gd->dram[i].size)
+                       lmb_add(gd->dram[i].start, gd->dram[i].size);
        }
 }
 #endif
index 7e0f3875b7cb25dc6a2353c1a3678db51ecc8693..338f73d6e7380a09f510683f1a5812cb7fbcdbf9 100644 (file)
@@ -246,7 +246,6 @@ int qspi_flash_software_reset(void)
 
 void dram_bank_mmu_setup(int bank)
 {
-       struct bd_info *bd = gd->bd;
        u32 start, size;
        int i;
 
@@ -261,11 +260,11 @@ void dram_bank_mmu_setup(int bank)
         * The default implementation of this function allows the DRAM dcache
         * to be enabled only after relocation. However, to speed up ECC
         * initialization, we want to be able to enable DRAM dcache before
-        * relocation, so we don't check GD_FLG_RELOC (this assumes bd->bi_dram
+        * relocation, so we don't check GD_FLG_RELOC (this assumes gd->dram
         * is set first).
         */
-       start = bd->bi_dram[bank].start >> MMU_SECTION_SHIFT;
-       size = bd->bi_dram[bank].size >> MMU_SECTION_SHIFT;
+       start = gd->dram[bank].start >> MMU_SECTION_SHIFT;
+       size = gd->dram[bank].size >> MMU_SECTION_SHIFT;
        for (i = start; i < start + size; i++)
                set_section_dcache(i, DCACHE_DEFAULT_OPTION);
 }
index 835eaf48dfa5e7aaed5dfe8932fe571ae0f1cc7d..76c324b55aeb688d31a309a2856ac8307c549ed1 100644 (file)
@@ -825,8 +825,8 @@ static int init_device(struct stm32prog_data *data,
                dev->mtd = mtd;
                break;
        case STM32PROG_RAM:
-               first_addr = gd->bd->bi_dram[0].start;
-               last_addr = first_addr + gd->bd->bi_dram[0].size;
+               first_addr = gd->dram[0].start;
+               last_addr = first_addr + gd->dram[0].size;
                dev->erase_size = 1;
                break;
        default:
index 252aef1852eaf30c1c259816884c015def500186..4d81c70b2300b2b0909af047a35d3128b2d9b86a 100644 (file)
@@ -52,7 +52,6 @@ u32 get_bootauth(void)
  */
 void dram_bank_mmu_setup(int bank)
 {
-       struct bd_info *bd = gd->bd;
        int     i;
        phys_addr_t start;
        phys_addr_t addr;
@@ -67,9 +66,9 @@ void dram_bank_mmu_setup(int bank)
                size = ALIGN(STM32_SYSRAM_SIZE, MMU_SECTION_SIZE);
 #endif
        } else if (gd->flags & GD_FLG_RELOC) {
-               /* bd->bi_dram is available only after relocation */
-               start = bd->bi_dram[bank].start;
-               size =  bd->bi_dram[bank].size;
+               /* gd->dram is available only after relocation */
+               start = gd->dram[bank].start;
+               size =  gd->dram[bank].size;
                use_lmb = true;
        } else {
                /* mark cacheable and executable the beggining of the DDR */
index 396851c5bd84e4ff58a09df4b2a57df8b1722828..1763f95ace44754c7787d117c09af3bf943d25ca 100644 (file)
@@ -393,18 +393,18 @@ int dram_init_banksize(void)
 
        /* fall back to default DRAM bank size computation */
 
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-       gd->bd->bi_dram[0].size = usable_ram_size_below_4g();
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].size = usable_ram_size_below_4g();
 
 #ifdef CONFIG_PHYS_64BIT
        if (gd->ram_size > SZ_2G) {
-               gd->bd->bi_dram[1].start = 0x100000000;
-               gd->bd->bi_dram[1].size = gd->ram_size - SZ_2G;
+               gd->dram[1].start = 0x100000000;
+               gd->dram[1].size = gd->ram_size - SZ_2G;
        } else
 #endif
        {
-               gd->bd->bi_dram[1].start = 0;
-               gd->bd->bi_dram[1].size = 0;
+               gd->dram[1].start = 0;
+               gd->dram[1].size = 0;
        }
 
        return 0;
@@ -418,7 +418,7 @@ int dram_init_banksize(void)
  * carve-out, as mentioned above.
  *
  * This function is called before dram_init_banksize(), so we can't simply
- * return gd->bd->bi_dram[1].start + gd->bd->bi_dram[1].size.
+ * return gd->dram[1].start + gd->dram[1].size.
  */
 phys_addr_t board_get_usable_ram_top(phys_size_t total_size)
 {
index e2342b2aece70c39268fb9831e7ff4924af56b89..ff15fa28eb50cee0beaec094746e5d959668e05c 100644 (file)
@@ -185,8 +185,8 @@ int cboot_dram_init_banksize(void)
        }
 
        for (i = 0; i < ram_bank_count; i++) {
-               gd->bd->bi_dram[i].start = tegra_mem_map[1 + i].virt;
-               gd->bd->bi_dram[i].size = tegra_mem_map[1 + i].size;
+               gd->dram[i].start = tegra_mem_map[1 + i].virt;
+               gd->dram[i].size = tegra_mem_map[1 + i].size;
        }
 
        return 0;
index 0e1164a2680ff116bb2496c2c080de826c0ac6b0..ae495808dec928502cec4d6630579e76f03503a3 100644 (file)
@@ -280,9 +280,9 @@ int dram_init_banksize(void)
                return ret;
 
        for (i = 0; i < ARRAY_SIZE(dram_map); i++) {
-               if (i < ARRAY_SIZE(gd->bd->bi_dram)) {
-                       gd->bd->bi_dram[i].start = dram_map[i].base;
-                       gd->bd->bi_dram[i].size = dram_map[i].size;
+               if (i < ARRAY_SIZE(gd->dram)) {
+                       gd->dram[i].start = dram_map[i].base;
+                       gd->dram[i].size = dram_map[i].size;
                }
 
                if (!dram_map[i].size)
index dfa32fdd48b3c49d73277ab23d35fec65cc242c7..4e1de15cd98f5214833891cd397572c7f62a4e36 100644 (file)
@@ -4,6 +4,7 @@
  *   Author: Masahiro Yamada <yamada.masahiro@socionext.com>
  */
 
+#include <asm/global_data.h>
 #include <fdt_support.h>
 #include <fdtdec.h>
 #include <jffs2/load_kernel.h>
@@ -20,6 +21,7 @@
  */
 static int uniphier_ld20_fdt_mem_rsv(void *fdt, struct bd_info *bd)
 {
+       DECLARE_GLOBAL_DATA_PTR;
        unsigned long rsv_addr;
        const unsigned long rsv_size = 64;
        int i, ret;
@@ -28,11 +30,11 @@ static int uniphier_ld20_fdt_mem_rsv(void *fdt, struct bd_info *bd)
            uniphier_get_soc_id() != UNIPHIER_LD20_ID)
                return 0;
 
-       for (i = 0; i < ARRAY_SIZE(bd->bi_dram); i++) {
-               if (!bd->bi_dram[i].size)
+       for (i = 0; i < ARRAY_SIZE(gd->dram); i++) {
+               if (!gd->dram[i].size)
                        continue;
 
-               rsv_addr = bd->bi_dram[i].start + bd->bi_dram[i].size;
+               rsv_addr = gd->dram[i].start + gd->dram[i].size;
                rsv_addr -= rsv_size;
 
                ret = fdt_add_mem_rsv(fdt, rsv_addr, rsv_size);
index d088e440f638f7d9859cb2a48ba832745db71927..78ead1f45f69555d9e1bd9c1552de01164cbbce1 100644 (file)
@@ -69,12 +69,12 @@ void mem_map_fill(void)
 
        for (int i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
                /* Zero size means no more DDR that's this is end */
-               if (!gd->bd->bi_dram[i].size)
+               if (!gd->dram[i].size)
                        break;
 
-               versal_mem_map[banks].virt = gd->bd->bi_dram[i].start;
-               versal_mem_map[banks].phys = gd->bd->bi_dram[i].start;
-               versal_mem_map[banks].size = gd->bd->bi_dram[i].size;
+               versal_mem_map[banks].virt = gd->dram[i].start;
+               versal_mem_map[banks].phys = gd->dram[i].start;
+               versal_mem_map[banks].size = gd->dram[i].size;
                versal_mem_map[banks].attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
                                              PTE_BLOCK_INNER_SHARE;
                banks = banks + 1;
index 363ce3007fd1ce10ab2f12aaf3f9063141c975e8..0dd5cc153c47708d0fa4a44bd5d73c073a6c3b8d 100644 (file)
@@ -82,21 +82,21 @@ void mem_map_fill(void)
 
        for (int i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
                /* Zero size means no more DDR that's this is end */
-               if (!gd->bd->bi_dram[i].size)
+               if (!gd->dram[i].size)
                        break;
 
 #if defined(CONFIG_VERSAL_NO_DDR)
-               if (gd->bd->bi_dram[i].start < 0x80000000UL ||
-                   gd->bd->bi_dram[i].start > 0x100000000UL) {
+               if (gd->dram[i].start < 0x80000000UL ||
+                   gd->dram[i].start > 0x100000000UL) {
                        printf("Ignore caches over %llx/%llx\n",
-                              gd->bd->bi_dram[i].start,
-                              gd->bd->bi_dram[i].size);
+                              gd->dram[i].start,
+                              gd->dram[i].size);
                        continue;
                }
 #endif
-               versal_mem_map[banks].virt = gd->bd->bi_dram[i].start;
-               versal_mem_map[banks].phys = gd->bd->bi_dram[i].start;
-               versal_mem_map[banks].size = gd->bd->bi_dram[i].size;
+               versal_mem_map[banks].virt = gd->dram[i].start;
+               versal_mem_map[banks].phys = gd->dram[i].start;
+               versal_mem_map[banks].size = gd->dram[i].size;
                versal_mem_map[banks].attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
                                              PTE_BLOCK_INNER_SHARE;
                banks = banks + 1;
index a81609cdec7f5e3273642058bb6bccf8a80041eb..f65c231bdab70cd5c858c31c09098682b95b0f39 100644 (file)
@@ -109,7 +109,7 @@ void mem_map_fill(struct mm_region *bank_info, u32 num_banks)
  * fill_bd_mem_info() - Copy DRAM banks from mem_map to bd_info
  *
  * Transfers DRAM bank information from the global versal2_mem_map[]
- * array to bd->bi_dram[] for passing memory configuration to the
+ * array to gd->dram[] for passing memory configuration to the
  * Linux kernel via boot parameters (ATAGS/FDT). Each bank's physical
  * address and size are copied.
  *
@@ -119,15 +119,14 @@ void mem_map_fill(struct mm_region *bank_info, u32 num_banks)
  */
 void fill_bd_mem_info(void)
 {
-       struct bd_info *bd = gd->bd;
        int banks = VERSAL2_MEM_MAP_USED;
 
        for (int i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
                if (!versal2_mem_map[banks].size)
                        break;
 
-               bd->bi_dram[i].start = versal2_mem_map[banks].phys;
-               bd->bi_dram[i].size = versal2_mem_map[banks].size;
+               gd->dram[i].start = versal2_mem_map[banks].phys;
+               gd->dram[i].size = versal2_mem_map[banks].size;
                banks++;
        }
 }
index 5f194aaff9a42adbead3a0e355e8128e8477f9ab..3dc47e5d48e47e62adf781962114c00b385ce2a6 100644 (file)
@@ -92,12 +92,12 @@ void mem_map_fill(void)
 #if !defined(CONFIG_ZYNQMP_NO_DDR)
        for (int i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
                /* Zero size means no more DDR that's this is end */
-               if (!gd->bd->bi_dram[i].size)
+               if (!gd->dram[i].size)
                        break;
 
-               zynqmp_mem_map[banks].virt = gd->bd->bi_dram[i].start;
-               zynqmp_mem_map[banks].phys = gd->bd->bi_dram[i].start;
-               zynqmp_mem_map[banks].size = gd->bd->bi_dram[i].size;
+               zynqmp_mem_map[banks].virt = gd->dram[i].start;
+               zynqmp_mem_map[banks].phys = gd->dram[i].start;
+               zynqmp_mem_map[banks].size = gd->dram[i].size;
                zynqmp_mem_map[banks].attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
                                              PTE_BLOCK_INNER_SHARE;
                banks = banks + 1;
index 5b1311d8b5b9b92ebe2a34b41a795af5327da607..817728aa56980e9f74e316427d072792665d67a7 100644 (file)
@@ -41,8 +41,8 @@ int dram_init(void)
                 * No DDR init yet -> run in L2 cache
                 */
                gd->ram_size = (4 << 20);
-               gd->bd->bi_dram[0].size = gd->ram_size;
-               gd->bd->bi_dram[1].size = 0;
+               gd->dram[0].size = gd->ram_size;
+               gd->dram[1].size = 0;
        }
 
        return 0;
index cc1e903c9dd6ed79796730c25b2d365ba102ad75..2893bc6b99a4a5c03fdd0a08d3ea1e6a44a7ca32 100644 (file)
@@ -56,12 +56,12 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-       gd->bd->bi_dram[0].size = min_t(phys_size_t, gd->ram_size, SZ_2G);
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].size = min_t(phys_size_t, gd->ram_size, SZ_2G);
 
        if (gd->ram_size > SZ_2G && CONFIG_NR_DRAM_BANKS > 1) {
-               gd->bd->bi_dram[1].start = 0x100000000;
-               gd->bd->bi_dram[1].size = gd->ram_size - SZ_2G;
+               gd->dram[1].start = 0x100000000;
+               gd->dram[1].size = gd->ram_size - SZ_2G;
        }
 
        return 0;
@@ -82,8 +82,8 @@ int ft_board_setup(void *blob, struct bd_info *bd)
        int i;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               start[i] = gd->bd->bi_dram[i].start;
-               size[i] = gd->bd->bi_dram[i].size;
+               start[i] = gd->dram[i].start;
+               size[i] = gd->dram[i].size;
        }
 
        return fdt_fixup_memory_banks(blob, start, size, CONFIG_NR_DRAM_BANKS);
index 1668b58d3fbb37686fc176ca7ef4fbf04fac5056..460013f933b9f9b325cd5015b43a3705433671e0 100644 (file)
@@ -131,8 +131,8 @@ SPL_LOAD_IMAGE_METHOD("sandbox_image", 7, BOOT_DEVICE_BOARD, load_from_image);
 int dram_init_banksize(void)
 {
        /* These are necessary so TFTP can use LMBs to check its load address */
-       gd->bd->bi_dram[0].start = gd->ram_base;
-       gd->bd->bi_dram[0].size = get_effective_memsize();
+       gd->dram[0].start = gd->ram_base;
+       gd->dram[0].size = get_effective_memsize();
 
        return 0;
 }
index cc1edd7badd8771c9217d3567b3380f8b627954d..81604ee12fbc2cef48b44d9d9413a4b845c065df 100644 (file)
@@ -91,8 +91,8 @@ int dram_init_banksize(void)
                        struct memrange *memrange = &lib_sysinfo.memrange[i];
 
                        if (memrange->type == CB_MEM_RAM) {
-                               gd->bd->bi_dram[j].start = memrange->base;
-                               gd->bd->bi_dram[j].size = memrange->size;
+                               gd->dram[j].start = memrange->base;
+                               gd->dram[j].size = memrange->size;
                                j++;
                                if (j >= CONFIG_NR_DRAM_BANKS)
                                        break;
index 6845ce72ff940685a65b338bc2139338c1de678f..b86d50b2cab74666b9529476deb54345c284ee7b 100644 (file)
@@ -123,8 +123,8 @@ int dram_init_banksize(void)
                if (desc->type != EFI_CONVENTIONAL_MEMORY ||
                    (desc->num_pages << EFI_PAGE_SHIFT) < 1 << 20)
                        continue;
-               gd->bd->bi_dram[num_banks].start = desc->physical_start;
-               gd->bd->bi_dram[num_banks].size = desc->num_pages <<
+               gd->dram[num_banks].start = desc->physical_start;
+               gd->dram[num_banks].size = desc->num_pages <<
                        EFI_PAGE_SHIFT;
                num_banks++;
        }
index 6fe400711402d375b7e74ecb4f5f11695944b8c9..e09fce8bb1b8794add9fd01c29edd9d0d94672fe 100644 (file)
@@ -24,8 +24,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = efi_get_ram_base();
-       gd->bd->bi_dram[0].size = CONFIG_EFI_RAM_SIZE;
+       gd->dram[0].start = efi_get_ram_base();
+       gd->dram[0].size = CONFIG_EFI_RAM_SIZE;
 
        return 0;
 }
index baa1f0e32d6bc96ddd4350be48026cc2d1ae3715..11ce97b51435fab9aab239cb2b3e624168015afd 100644 (file)
@@ -67,8 +67,8 @@ void mrc_common_dram_init_banksize(void)
 
                if (area->start >= 1ULL << 32)
                        continue;
-               gd->bd->bi_dram[num_banks].start = area->start;
-               gd->bd->bi_dram[num_banks].size = area->size;
+               gd->dram[num_banks].start = area->start;
+               gd->dram[num_banks].size = area->size;
                num_banks++;
        }
 }
index d20c9a2a379f11c8aacc8288c9eddab95f830cd5..a5e81dfada5ffb6bcbcd1d6b5db554dc19ca3279 100644 (file)
@@ -11,8 +11,8 @@ DECLARE_GLOBAL_DATA_PTR;
 int dram_init(void)
 {
        gd->ram_size = 1ULL << 31;
-       gd->bd->bi_dram[0].start = 0;
-       gd->bd->bi_dram[0].size = gd->ram_size;
+       gd->dram[0].start = 0;
+       gd->dram[0].size = gd->ram_size;
 
        return 0;
 }
index ba3638e6acc64ae8c8446b441edf0f6bd25b2719..3cba04f2c3e03cadfade2c57127828ce1df97f29 100644 (file)
@@ -69,13 +69,13 @@ int dram_init_banksize(void)
 {
        u64 high_mem_size;
 
-       gd->bd->bi_dram[0].start = 0;
-       gd->bd->bi_dram[0].size = qemu_get_low_memory_size();
+       gd->dram[0].start = 0;
+       gd->dram[0].size = qemu_get_low_memory_size();
 
        high_mem_size = qemu_get_high_memory_size();
        if (high_mem_size) {
-               gd->bd->bi_dram[1].start = SZ_4G;
-               gd->bd->bi_dram[1].size = high_mem_size;
+               gd->dram[1].start = SZ_4G;
+               gd->dram[1].size = high_mem_size;
        }
 
        return 0;
index 34e576940d4fa1dcb179e9a2dd38828613833376..34fdb7e026a577570e40c7fb728d6e476e3b4530 100644 (file)
@@ -169,8 +169,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = 0;
-       gd->bd->bi_dram[0].size = gd->ram_size;
+       gd->dram[0].start = 0;
+       gd->dram[0].size = gd->ram_size;
 
        return 0;
 }
index 75ca5273625cd8fab5ebd3dfd165e08b475f0b7d..5aa4f6d3e0707f6411c25afe4b5264890d4ddc6a 100644 (file)
@@ -129,8 +129,8 @@ int dram_init_banksize(void)
                return 0;
 
        /* simply use a single bank to have whole size for now */
-       gd->bd->bi_dram[0].start = 0;
-       gd->bd->bi_dram[0].size = gd->ram_size;
+       gd->dram[0].start = 0;
+       gd->dram[0].size = gd->ram_size;
        return 0;
 }
 
index 6192f2296b80b646bbcc4cfe6c49636e315b72e7..6ce96b0569b3f94e4acfba704ab2d819e8be9f31 100644 (file)
@@ -160,8 +160,8 @@ static int sfi_get_bank_size(void)
                if (mentry->type != SFI_MEM_CONV)
                        continue;
 
-               gd->bd->bi_dram[bank].start = mentry->phys_start;
-               gd->bd->bi_dram[bank].size = mentry->pages << 12;
+               gd->dram[bank].start = mentry->phys_start;
+               gd->dram[bank].size = mentry->pages << 12;
                bank++;
        }
 
index cde4fbf35574a267b856a668659ece7e0a36367f..e054f42fa863468e1c4d8d1c8d37e1426adb3683 100644 (file)
@@ -43,14 +43,13 @@ void bootm_announce_and_cleanup(void)
 #if defined(CONFIG_OF_LIBFDT) && !defined(CONFIG_OF_NO_KERNEL)
 int arch_fixup_memory_node(void *blob)
 {
-       struct bd_info  *bd = gd->bd;
        int bank;
        u64 start[CONFIG_NR_DRAM_BANKS];
        u64 size[CONFIG_NR_DRAM_BANKS];
 
        for (bank = 0; bank < CONFIG_NR_DRAM_BANKS; bank++) {
-               start[bank] = bd->bi_dram[bank].start;
-               size[bank] = bd->bi_dram[bank].size;
+               start[bank] = gd->dram[bank].start;
+               size[bank] = gd->dram[bank].size;
        }
 
        return fdt_fixup_memory_banks(blob, start, size, CONFIG_NR_DRAM_BANKS);
index 730721dc17685df882bef73c733793e97005da44..a45e4060ef2511af6097f1038c50286506f220cc 100644 (file)
@@ -64,8 +64,8 @@ int dram_init_banksize(void)
        update_mtrr = CONFIG_IS_ENABLED(FSP_VERSION2);
 
        if (!ll_boot_init()) {
-               gd->bd->bi_dram[0].start = 0;
-               gd->bd->bi_dram[0].size = gd->ram_size;
+               gd->dram[0].start = 0;
+               gd->dram[0].size = gd->ram_size;
 
                if (update_mtrr)
                        mtrr_add_request(MTRR_TYPE_WRBACK, 0, gd->ram_size);
@@ -89,21 +89,21 @@ int dram_init_banksize(void)
                        mtrr_top = max(mtrr_top,
                                       res_desc->phys_start + res_desc->len);
                } else {
-                       gd->bd->bi_dram[bank].start = res_desc->phys_start;
-                       gd->bd->bi_dram[bank].size = res_desc->len;
+                       gd->dram[bank].start = res_desc->phys_start;
+                       gd->dram[bank].size = res_desc->len;
                        if (update_mtrr)
                                mtrr_add_request(MTRR_TYPE_WRBACK,
                                                 res_desc->phys_start,
                                                 res_desc->len);
                        log_debug("ram %llx %llx\n",
-                                 gd->bd->bi_dram[bank].start,
-                                 gd->bd->bi_dram[bank].size);
+                                 gd->dram[bank].start,
+                                 gd->dram[bank].size);
                }
        }
 
        /* Add the memory below 4GB */
-       gd->bd->bi_dram[0].start = 0;
-       gd->bd->bi_dram[0].size = low_end;
+       gd->dram[0].start = 0;
+       gd->dram[0].size = low_end;
 
        /*
         * Set up an MTRR to the top of low, reserved memory. This is necessary
@@ -184,7 +184,7 @@ unsigned int install_e820_map(unsigned int max_entries,
 #if CONFIG_IS_ENABLED(HANDOFF) && IS_ENABLED(CONFIG_USE_HOB)
 int handoff_arch_save(struct spl_handoff *ho)
 {
-       ho->arch.usable_ram_top = gd->bd->bi_dram[0].size;
+       ho->arch.usable_ram_top = gd->dram[0].size;
        ho->arch.hob_list = gd->arch.hob_list;
 
        return 0;
index 2f9557a4170ff613e6cf2175c9d02e8ffc3ca590..32535ed6ee0ee4d96dad304d2a2db9a6977a80cc 100644 (file)
@@ -42,9 +42,9 @@ int dram_init_banksize(void)
 
        static_assert(CONFIG_NR_DRAM_BANKS >= 3);
 
-       gd->bd->bi_dram[0].start = gd->ram_base;
-       gd->bd->bi_dram[0].size = get_effective_memsize();
-       size -= gd->bd->bi_dram[0].size;
+       gd->dram[0].start = gd->ram_base;
+       gd->dram[0].size = get_effective_memsize();
+       size -= gd->dram[0].size;
 
        /* Note: This address space is not mapped via TLB entries in U-Boot */
 
@@ -68,16 +68,16 @@ int dram_init_banksize(void)
 
        if (size > 0) {
                /* Free space between PCIe bus 3 MEM and NOR */
-               gd->bd->bi_dram[1].start = 0xc0200000;
-               gd->bd->bi_dram[1].size = min(size, 0xef000000 - gd->bd->bi_dram[1].start);
-               size -= gd->bd->bi_dram[1].size;
+               gd->dram[1].start = 0xc0200000;
+               gd->dram[1].size = min(size, 0xef000000 - gd->dram[1].start);
+               size -= gd->dram[1].size;
        }
 
        if (size > 0) {
                /* Free space between NOR and NAND */
-               gd->bd->bi_dram[2].start = 0xf0000000;
-               gd->bd->bi_dram[2].size = min(size, 0xff800000 - gd->bd->bi_dram[2].start);
-               size -= gd->bd->bi_dram[2].size;
+               gd->dram[2].start = 0xf0000000;
+               gd->dram[2].size = min(size, 0xff800000 - gd->dram[2].start);
+               size -= gd->dram[2].size;
        }
 #else
        puts("\n\n!!! TODO: fix sdcard >2GB RAM\n\n\n");
@@ -231,8 +231,8 @@ void ft_memory_setup(void *blob, struct bd_info *bd)
 
        if (!env_get("bootm_low") && !env_get("bootm_size")) {
                for (count = 0; count < CONFIG_NR_DRAM_BANKS; count++) {
-                       start[count] = gd->bd->bi_dram[count].start;
-                       size[count] = gd->bd->bi_dram[count].size;
+                       start[count] = gd->dram[count].start;
+                       size[count] = gd->dram[count].size;
                        if (!size[count])
                                break;
                }
@@ -452,13 +452,13 @@ static void recalculate_used_pcie_mem(void)
        size = gd->ram_size;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++)
-               size -= gd->bd->bi_dram[i].size;
+               size -= gd->dram[i].size;
 
        if (size == 0)
                return;
 
        e = find_law_by_addr_id(CFG_SYS_PCIE3_MEM_PHYS, LAW_TRGT_IF_PCIE_3);
-       if (e.index < 0 && gd->bd->bi_dram[1].size > 0) {
+       if (e.index < 0 && gd->dram[1].size > 0) {
                /*
                 * If there is no LAW for PCIe 3 MEM then 3rd PCIe controller
                 * is inactive, which is the case for Turris 1.0 boards. So
@@ -471,8 +471,8 @@ static void recalculate_used_pcie_mem(void)
                printf("Reserving unused ");
                print_size(bank_size, "");
                printf(" of PCIe 3 MEM for DDR RAM\n");
-               gd->bd->bi_dram[1].start -= bank_size;
-               gd->bd->bi_dram[1].size += bank_size;
+               gd->dram[1].start -= bank_size;
+               gd->dram[1].size += bank_size;
                size -= bank_size;
                if (size == 0)
                        return;
@@ -534,9 +534,9 @@ static void recalculate_used_pcie_mem(void)
                printf("Reserving unused ");
                print_size(free_size2, "");
                printf(" of PCIe 2 MEM for DDR RAM\n");
-               gd->bd->bi_dram[i].start = free_start2;
-               gd->bd->bi_dram[i].size = min(size, free_size2);
-               size -= gd->bd->bi_dram[i].start;
+               gd->dram[i].start = free_start2;
+               gd->dram[i].size = min(size, free_size2);
+               size -= gd->dram[i].start;
                i++;
                if (size == 0)
                        return;
@@ -548,9 +548,9 @@ static void recalculate_used_pcie_mem(void)
                printf("Reserving unused ");
                print_size(free_size1, "");
                printf(" of PCIe 1 MEM for DDR RAM\n");
-               gd->bd->bi_dram[i].start = free_start1;
-               gd->bd->bi_dram[i].size = min(size, free_size1);
-               size -= gd->bd->bi_dram[i].size;
+               gd->dram[i].start = free_start1;
+               gd->dram[i].size = min(size, free_size1);
+               size -= gd->dram[i].size;
                i++;
                if (size == 0)
                        return;
index 16d0e679c3e266677d8193c3a1de6009e27d8eeb..eb0f9c0684910c4c3bf970228136753462d0f630 100644 (file)
@@ -86,8 +86,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size = PHYS_SDRAM_1_SIZE;
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size = PHYS_SDRAM_1_SIZE;
 
        return 0;
 }
index eaf87e3bfe304ba8a18b3225c997079cb1f057bf..6cd24bf25fbc5c0363fc08c646fe2a6438486756 100644 (file)
@@ -137,7 +137,7 @@ int misc_init_r (void)
 
 int dram_init (void)
 {
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
 #ifdef CONFIG_CM_SPD_DETECT
        {
 extern void dram_query(void);
@@ -170,7 +170,7 @@ extern void dram_query(void);
                                    PHYS_SDRAM_1_SIZE);
 #endif /* CM_SPD_DETECT */
        /* We only have one bank of RAM, set it to whatever was detected */
-       gd->bd->bi_dram[0].size  = gd->ram_size;
+       gd->dram[0].size         = gd->ram_size;
 
        return 0;
 }
index 12bb6defab25fe06b4a7af3c9d079b60db2436c1..057e916ab1b73bfd4954a9d40015650d01fc635b 100644 (file)
@@ -89,9 +89,9 @@ void build_mem_map(void)
                 * The first node is for I/O device, start from node 1 for
                 * updating DRAM info.
                 */
-               mem_map[i + 1].virt = gd->bd->bi_dram[i].start;
-               mem_map[i + 1].phys = gd->bd->bi_dram[i].start;
-               mem_map[i + 1].size = gd->bd->bi_dram[i].size;
+               mem_map[i + 1].virt = gd->dram[i].start;
+               mem_map[i + 1].phys = gd->dram[i].start;
+               mem_map[i + 1].size = gd->dram[i].size;
                mem_map[i + 1].attrs = PTE_BLOCK_MEMTYPE(MT_NORMAL) |
                                       PTE_BLOCK_INNER_SHARE;
        }
index 3833af59b09af4a3604470dfc909125e7ed3321a..87e53f64e0643499c36babf4e3e5d928da778056 100644 (file)
@@ -79,11 +79,11 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size =
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size =
                        get_ram_size((long *)PHYS_SDRAM_1, PHYS_SDRAM_1_SIZE);
-       gd->bd->bi_dram[1].start = PHYS_SDRAM_2;
-       gd->bd->bi_dram[1].size =
+       gd->dram[1].start = PHYS_SDRAM_2;
+       gd->dram[1].size =
                        get_ram_size((long *)PHYS_SDRAM_2, PHYS_SDRAM_2_SIZE);
 
        return 0;
index 771888205814d8e9019338d1fe10b148b8134ce4..7cb492b2da6886e95ceba72c16252ff1c448482f 100644 (file)
@@ -40,7 +40,7 @@ int at91_video_show_board_info(void)
 
        dram_size = 0;
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++)
-               dram_size += gd->bd->bi_dram[i].size;
+               dram_size += gd->dram[i].size;
 
        nand_size = 0;
 #ifdef CONFIG_NAND_ATMEL
index 43797d625e93da5eecd2a9644645d5b375a38f6f..b19ae3b4b03efee5c186e0b5af2af506c0bd801c 100644 (file)
@@ -66,7 +66,7 @@ int misc_init_r(void)
 int board_init(void)
 {
        /* address of boot parameters */
-       gd->bd->bi_boot_params = gd->bd->bi_dram[0].start + 0x100;
+       gd->bd->bi_boot_params = gd->dram[0].start + 0x100;
 
        board_leds_init();
 
index 364b6a3e24bcda41959db1710ba8f6f724121529..5c35239a90a6c08f157690f9ecb681fd5e45b776 100644 (file)
@@ -45,7 +45,7 @@ void board_debug_uart_init(void)
 int board_init(void)
 {
        /* address of boot parameters */
-       gd->bd->bi_boot_params = gd->bd->bi_dram[0].start + 0x100;
+       gd->bd->bi_boot_params = gd->dram[0].start + 0x100;
 
        return 0;
 }
index 858061bf9f930cb3e774245cc3d2cab9487cb852..33ae6a76bf71f96955486c0c0a9f488582934d7a 100644 (file)
@@ -64,7 +64,7 @@ void board_debug_uart_init(void)
 int board_init(void)
 {
        /* address of boot parameters */
-       gd->bd->bi_boot_params = gd->bd->bi_dram[0].start + 0x100;
+       gd->bd->bi_boot_params = gd->dram[0].start + 0x100;
 
        rgb_leds_init();
 
index 19341d325bde597ba6a78758b4337bacce750fd1..0e2d559275319dba341d05f49ce65e6b57a380f0 100644 (file)
@@ -58,7 +58,7 @@ void board_debug_uart_init(void)
 int board_init(void)
 {
        /* address of boot parameters */
-       gd->bd->bi_boot_params = gd->bd->bi_dram[0].start + 0x100;
+       gd->bd->bi_boot_params = gd->dram[0].start + 0x100;
 
        rgb_leds_init();
 
index 8759ff6f01acc4953a6648711d81f41a67074515..1a17db1bd5bb17da4062b574a7aff6330f20d036 100644 (file)
@@ -65,7 +65,7 @@ int board_early_init_f(void)
 int board_init(void)
 {
        /* address of boot parameters */
-       gd->bd->bi_boot_params = gd->bd->bi_dram[0].start + 0x100;
+       gd->bd->bi_boot_params = gd->dram[0].start + 0x100;
 
        rgb_leds_init();
 
index c0862f586061f9f99213a3595f6d1dc0a10a1dba..b48e8fe769779516f04e02f30660597eb4430754 100644 (file)
@@ -63,7 +63,7 @@ void board_debug_uart_init(void)
 int board_init(void)
 {
        /* address of boot parameters */
-       gd->bd->bi_boot_params = gd->bd->bi_dram[0].start + 0x100;
+       gd->bd->bi_boot_params = gd->dram[0].start + 0x100;
 
        rgb_leds_init();
 
index 764c8f035c9e65fb8b5532d9bb60202f7f3105b5..cdf2793b64367b7833ac6303577e8736877798cb 100644 (file)
@@ -52,7 +52,7 @@ void board_debug_uart_init(void)
 int board_init(void)
 {
        /* address of boot parameters */
-       gd->bd->bi_boot_params = gd->bd->bi_dram[0].start + 0x100;
+       gd->bd->bi_boot_params = gd->dram[0].start + 0x100;
 
        board_leds_init();
 
index b05c9754c96421e2a010e080a108c2910facd5c4..02543d8e99fd69236fb2742e8318a179adb1a444 100644 (file)
@@ -19,7 +19,7 @@ DECLARE_GLOBAL_DATA_PTR;
 int board_init(void)
 {
        // Address of boot parameters
-       gd->bd->bi_boot_params = gd->bd->bi_dram[0].start + 0x100;
+       gd->bd->bi_boot_params = gd->dram[0].start + 0x100;
 
        return 0;
 }
index 4643ba4a55c195d4ee464609c2992f09b3aee5a7..b2df6d89cd81f71a8f5c8331961c5687f28afff8 100644 (file)
@@ -96,8 +96,8 @@ int dram_init(void)
  */
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-       gd->bd->bi_dram[0].size = CFG_SYS_SDRAM_SIZE;
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].size = CFG_SYS_SDRAM_SIZE;
        return 0;
 }
 
index bb2f1e4f62adffe9ba0b990fc07a5f88023a0f3a..2683f46f41c616dfe1af53c3e422f169321a9c0e 100644 (file)
@@ -176,8 +176,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = (BCM_NS3_MEM_END - SZ_16M);
-       gd->bd->bi_dram[0].size = SZ_16M;
+       gd->dram[0].start = (BCM_NS3_MEM_END - SZ_16M);
+       gd->dram[0].size = SZ_16M;
 
        return 0;
 }
index e20350dc5d55aabaf77681e9e66f828068db94fc..5bc4d3248bd95acd5bff3a929dfeab4a32cda83d 100644 (file)
@@ -666,34 +666,34 @@ int misc_init_r(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[1].start = PHYS_SDRAM_2;
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[1].start = PHYS_SDRAM_2;
 
        switch (gd->ram_size) {
        case 0x10000000: /* DDR_16BIT_256MB */
-               gd->bd->bi_dram[0].size = 0x10000000;
-               gd->bd->bi_dram[1].size = 0;
+               gd->dram[0].size = 0x10000000;
+               gd->dram[1].size = 0;
                break;
        case 0x20000000: /* DDR_32BIT_512MB */
-               gd->bd->bi_dram[0].size = 0x20000000;
-               gd->bd->bi_dram[1].size = 0;
+               gd->dram[0].size = 0x20000000;
+               gd->dram[1].size = 0;
                break;
        case 0x40000000:
                if (is_cpu_type(MXC_CPU_MX6SOLO)) { /* DDR_32BIT_1GB */
-                       gd->bd->bi_dram[0].size = 0x20000000;
-                       gd->bd->bi_dram[1].size = 0x20000000;
+                       gd->dram[0].size = 0x20000000;
+                       gd->dram[1].size = 0x20000000;
                } else { /* DDR_64BIT_1GB */
-                       gd->bd->bi_dram[0].size = 0x40000000;
-                       gd->bd->bi_dram[1].size = 0;
+                       gd->dram[0].size = 0x40000000;
+                       gd->dram[1].size = 0;
                }
                break;
        case 0x80000000: /* DDR_64BIT_2GB */
-               gd->bd->bi_dram[0].size = 0x40000000;
-               gd->bd->bi_dram[1].size = 0x40000000;
+               gd->dram[0].size = 0x40000000;
+               gd->dram[1].size = 0x40000000;
                break;
        case 0xEFF00000: /* DDR_64BIT_4GB */
-               gd->bd->bi_dram[0].size = 0x70000000;
-               gd->bd->bi_dram[1].size = 0x7FF00000;
+               gd->dram[0].size = 0x70000000;
+               gd->dram[1].size = 0x7FF00000;
                break;
        }
 
index 9fea4f86d5aa47d5b4d158dd111dcd9d276dac25..33f7ec6d048e66afd996a7db234e246eaccdb874 100644 (file)
@@ -66,8 +66,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = 0x60000000;
-       gd->bd->bi_dram[0].size = 0x8000000;
+       gd->dram[0].start = 0x60000000;
+       gd->dram[0].size = 0x8000000;
 
        return 0;
 }
index dce69abdfd1d4f2d615997f59cad475ba8df5fa7..3d76c93607329426a1faa99685febd6460820a48 100644 (file)
@@ -141,8 +141,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM;
-       gd->bd->bi_dram[0].size = PHYS_SDRAM_SIZE;
+       gd->dram[0].start = PHYS_SDRAM;
+       gd->dram[0].size = PHYS_SDRAM_SIZE;
 
        return 0;
 }
index eb10cd5143d1fefa8b35c1f655d73187161052ca..5e560a7f9275004fb569f96efbc537e63f34f4b5 100644 (file)
@@ -532,17 +532,17 @@ int dram_init_banksize(void)
        /* set global data memory */
        gd->bd->bi_boot_params = CFG_SYS_SDRAM_BASE + 0x00000100;
 
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-       gd->bd->bi_dram[0].size  = CFG_SYS_SDRAM_SIZE;
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].size  = CFG_SYS_SDRAM_SIZE;
 
        /* Number of Row: 14 bits */
        if ((reg_val >> 28) == 14)
-               gd->bd->bi_dram[0].size -= 0x20000000;
+               gd->dram[0].size -= 0x20000000;
 
        /* Number of Memory Chips */
        if ((reg_val & 0x3) > 1) {
-               gd->bd->bi_dram[1].start = 0x80000000;
-               gd->bd->bi_dram[1].size  = 0x40000000;
+               gd->dram[1].start = 0x80000000;
+               gd->dram[1].size  = 0x40000000;
        }
        return 0;
 }
index cb9b88a1a58ed47d631201f108b1d19d620ca4db..d3a385bf6b7c9c1354115e86795935943f63f3f9 100644 (file)
@@ -71,11 +71,11 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size = mx53_dram_size[0];
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size = mx53_dram_size[0];
 
-       gd->bd->bi_dram[1].start = PHYS_SDRAM_2;
-       gd->bd->bi_dram[1].size = mx53_dram_size[1];
+       gd->dram[1].start = PHYS_SDRAM_2;
+       gd->dram[1].size = mx53_dram_size[1];
 
        return 0;
 }
index 5e60ab9d7b71d6179102f85383f0069b7a6c2b5a..ba0465cf96f6f4bfa3907fcb4921080574cd057d 100644 (file)
@@ -456,23 +456,23 @@ int dram_init_banksize(void)
         *  0x3e00,0000 - 0x3fff,ffff: OP-TEE
        */
 
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size = 0x05e00000;
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size = 0x05e00000;
 
-       gd->bd->bi_dram[1].start = 0x05f00000;
-       gd->bd->bi_dram[1].size = 0x00001000;
+       gd->dram[1].start = 0x05f00000;
+       gd->dram[1].size = 0x00001000;
 
-       gd->bd->bi_dram[2].start = 0x05f02000;
-       gd->bd->bi_dram[2].size = 0x00efd000;
+       gd->dram[2].start = 0x05f02000;
+       gd->dram[2].size = 0x00efd000;
 
-       gd->bd->bi_dram[3].start = 0x06e00000;
-       gd->bd->bi_dram[3].size = 0x0060f000;
+       gd->dram[3].start = 0x06e00000;
+       gd->dram[3].size = 0x0060f000;
 
-       gd->bd->bi_dram[4].start = 0x07410000;
-       gd->bd->bi_dram[4].size = 0x1aaf0000;
+       gd->dram[4].start = 0x07410000;
+       gd->dram[4].size = 0x1aaf0000;
 
-       gd->bd->bi_dram[5].start = 0x22000000;
-       gd->bd->bi_dram[5].size = 0x1c000000;
+       gd->dram[5].start = 0x22000000;
+       gd->dram[5].size = 0x1c000000;
 
        return 0;
 }
index fb56762fff689f3cd344086da787135fe72877ab..e7908d4c04809da6ec03d94dcb8f29e45a07421e 100644 (file)
@@ -74,8 +74,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size = gd->ram_size;
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size = gd->ram_size;
 
        return 0;
 }
index c3ea080ff75a71c97e92fb5627740ecff8d8f8d2..dbab67d6f6516137d297902cfd300502604a63ae 100644 (file)
@@ -87,8 +87,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = KERNEL_TEXT_OFFSET;
-       gd->bd->bi_dram[0].size = gd->ram_size - gd->bd->bi_dram[0].start;
+       gd->dram[0].start = KERNEL_TEXT_OFFSET;
+       gd->dram[0].size = gd->ram_size - gd->dram[0].start;
 
        return 0;
 }
index efb7b49cbe081d43987fab6b7db30bedf1510b3b..07668bae7a9d0f3b8ad4d56d3a439adeabf07556 100644 (file)
@@ -39,8 +39,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size = PHYS_SDRAM_1_SIZE;
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size = PHYS_SDRAM_1_SIZE;
 
        return 0;
 }
index 51938a1b4d8875fc2dd23686e17d89ef02801b51..e37d4e767dbf60bda17d2a5fc818c369ac6e9172 100644 (file)
@@ -84,8 +84,8 @@ int fsl_initdram(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-       gd->bd->bi_dram[0].size = gd->ram_size;
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].size = gd->ram_size;
 
        return 0;
 }
index 8a9502037fb6c2d7deefd3a6fbe0f4f5bebd2952..ce778bc0849ad25e2109c6a9ac2ab76eeaf201bc 100644 (file)
@@ -175,8 +175,8 @@ int ft_board_setup(void *blob, struct bd_info *bd)
 
        /* fixup DT for the two GPP DDR banks */
        for (i = 0; i < nbanks; i++) {
-               base[i] = gd->bd->bi_dram[i].start;
-               size[i] = gd->bd->bi_dram[i].size;
+               base[i] = gd->dram[i].start;
+               size[i] = gd->dram[i].size;
        }
 
        fdt_fixup_memory_banks(blob, base, size, nbanks);
index 0710316a48bc2c2a9b954bb6fba081783f59287e..cc741dea504856a7148304862930afc8ff335b39 100644 (file)
@@ -36,9 +36,9 @@ struct bl_params *bl2_plat_get_bl31_params_v2(uintptr_t bl32_entry,
 
        dram_regions_info.num_dram_regions = CONFIG_NR_DRAM_BANKS;
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               dram_regions_info.region[i].addr = gd->bd->bi_dram[i].start;
-               dram_regions_info.region[i].size = gd->bd->bi_dram[i].size;
-               dram_regions_info.total_dram_size += gd->bd->bi_dram[i].size;
+               dram_regions_info.region[i].addr = gd->dram[i].start;
+               dram_regions_info.region[i].size = gd->dram[i].size;
+               dram_regions_info.total_dram_size += gd->dram[i].size;
        }
 
        bl_params = bl2_plat_get_bl31_params_v2_default(bl32_entry, bl33_entry,
index e1ff041c54f56d4a61e2275ec26dcc17509092ae..ba922b43064fc38b5617b999d3f37f4ef29e8891 100644 (file)
@@ -239,7 +239,7 @@ int spl_start_uboot(void)
 
 static const char *get_board_name(void)
 {
-       if (gd->bd->bi_dram[0].size == SZ_128M)
+       if (gd->dram[0].size == SZ_128M)
                return STR_BTTC;
 
        return STR_BTT3;
index fc76d5765fa77d5e996ade181aadfc8411850394..5e76942783f3f22b2b702658441bc72a0a47169b 100644 (file)
@@ -69,11 +69,11 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size = mx53_dram_size[0];
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size = mx53_dram_size[0];
 
-       gd->bd->bi_dram[1].start = PHYS_SDRAM_2;
-       gd->bd->bi_dram[1].size = mx53_dram_size[1];
+       gd->dram[1].start = PHYS_SDRAM_2;
+       gd->dram[1].size = mx53_dram_size[1];
 
        return 0;
 }
index 05c4dd187fe35a018d8bd6624dcc1c43f1fe760e..68d516c7db8662dd361bfb6748d9353bcaee725c 100644 (file)
@@ -57,7 +57,7 @@ int dram_init_banksize(void)
 {
        phys_size_t ram_size = gd->ram_size;
 
-       gd->bd->bi_dram[0].start = 0;
+       gd->dram[0].start = 0;
 
        #if defined(CONFIG_SYS_MEM_TOP_HIDE)
                ram_size += CONFIG_SYS_MEM_TOP_HIDE;
@@ -69,25 +69,25 @@ int dram_init_banksize(void)
        case DRAM_1GB_SIZE:
        case DRAM_2GB_ECC_SIZE:
        case DRAM_2GB_SIZE:
-               gd->bd->bi_dram[0].size = ram_size;
-               gd->bd->bi_dram[1].start = 0;
-               gd->bd->bi_dram[1].size = 0;
+               gd->dram[0].size = ram_size;
+               gd->dram[1].start = 0;
+               gd->dram[1].size = 0;
                break;
        case DRAM_4GB_ECC_SIZE:
-               gd->bd->bi_dram[0].size = DRAM_2GB_SIZE;
-               gd->bd->bi_dram[1].start = DRAM_4GB_SIZE;
-               gd->bd->bi_dram[1].size = DRAM_2GB_SIZE -
+               gd->dram[0].size = DRAM_2GB_SIZE;
+               gd->dram[1].start = DRAM_4GB_SIZE;
+               gd->dram[1].size = DRAM_2GB_SIZE -
                        (DRAM_4GB_SIZE - DRAM_4GB_ECC_SIZE);
                break;
        case DRAM_4GB_SIZE:
-               gd->bd->bi_dram[0].size = DRAM_2GB_SIZE;
-               gd->bd->bi_dram[1].start = DRAM_4GB_SIZE;
-               gd->bd->bi_dram[1].size = DRAM_2GB_SIZE;
+               gd->dram[0].size = DRAM_2GB_SIZE;
+               gd->dram[1].start = DRAM_4GB_SIZE;
+               gd->dram[1].size = DRAM_2GB_SIZE;
                break;
        default:
-               gd->bd->bi_dram[0].size = DRAM_1GB_SIZE;
-               gd->bd->bi_dram[1].start = 0;
-               gd->bd->bi_dram[1].size = 0;
+               gd->dram[0].size = DRAM_1GB_SIZE;
+               gd->dram[1].start = 0;
+               gd->dram[1].size = 0;
                break;
        }
 
index 11dbef8468815b2955d6072222dcdea5bd4d1593..6843b33679d09fcd38a728336939ecf5a7237e05 100644 (file)
@@ -73,7 +73,7 @@ u32 spl_boot_device(void)
 
 int board_init(void)
 {
-       gd->bd->bi_boot_params = gd->bd->bi_dram[0].start + 0x100;
+       gd->bd->bi_boot_params = gd->dram[0].start + 0x100;
 
        return 0;
 }
index 056489932ac726ba5aec1e15f47f664e704230c1..19d068fc6268875a55ea11b236d9150d6e715d65 100644 (file)
@@ -78,7 +78,7 @@ u32 spl_boot_device(void)
 
 int board_init(void)
 {
-       gd->bd->bi_boot_params = gd->bd->bi_dram[0].start + 0x100;
+       gd->bd->bi_boot_params = gd->dram[0].start + 0x100;
 
        return 0;
 }
index 047aea8181ae9d68771e161996bdc70e03e7d710..3afd5ae2136d6bc49dfb021debc3f7fbc9b3f475 100644 (file)
@@ -73,7 +73,7 @@ u32 spl_boot_device(void)
 
 int board_init(void)
 {
-       gd->bd->bi_boot_params = gd->bd->bi_dram[0].start + 0x100;
+       gd->bd->bi_boot_params = gd->dram[0].start + 0x100;
 
        return 0;
 }
index fd897e832c829af8ab88ae22479d46677bf38cf6..8d07f6110ce673c17bf4ba01a23af4089508a76f 100644 (file)
@@ -192,8 +192,8 @@ int fsl_initdram(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-       gd->bd->bi_dram[0].size = gd->ram_size;
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].size = gd->ram_size;
 
        return 0;
 }
index 196e25931f3849cd752e1d516fb2d62d8417db5d..e1e83137f4d479c0dca5c0eedca3f72814d002ee 100644 (file)
@@ -149,7 +149,7 @@ int board_early_init_f(void)
 void detail_board_ddr_info(void)
 {
        puts("\nDDR    ");
-       print_size(gd->bd->bi_dram[0].size + gd->bd->bi_dram[1].size, "");
+       print_size(gd->dram[0].size + gd->dram[1].size, "");
        print_ddr_info(0);
 }
 
@@ -202,10 +202,10 @@ int ft_board_setup(void *blob, struct bd_info *bd)
        ft_cpu_setup(blob, bd);
 
        /* fixup DT for the two GPP DDR banks */
-       base[0] = gd->bd->bi_dram[0].start;
-       size[0] = gd->bd->bi_dram[0].size;
-       base[1] = gd->bd->bi_dram[1].start;
-       size[1] = gd->bd->bi_dram[1].size;
+       base[0] = gd->dram[0].start;
+       size[0] = gd->dram[0].size;
+       base[1] = gd->dram[1].start;
+       size[1] = gd->dram[1].size;
 
 #ifdef CONFIG_RESV_RAM
        /* reduce size if reserved memory is within this bank */
index 0f115c16232406981e2054580f1477fac3365757..dba93add6981a7a7fe23fb65ae8f7845e8fd0d8a 100644 (file)
@@ -542,10 +542,10 @@ int ft_board_setup(void *blob, struct bd_info *bd)
        u8 reg;
 
        /* fixup DT for the two DDR banks */
-       base[0] = gd->bd->bi_dram[0].start;
-       size[0] = gd->bd->bi_dram[0].size;
-       base[1] = gd->bd->bi_dram[1].start;
-       size[1] = gd->bd->bi_dram[1].size;
+       base[0] = gd->dram[0].start;
+       size[0] = gd->dram[0].size;
+       base[1] = gd->dram[1].start;
+       size[1] = gd->dram[1].size;
 
        fdt_fixup_memory_banks(blob, base, size, 2);
        ft_cpu_setup(blob, bd);
index bba041065b5cefa82b95af95688d95c90416d7dc..678c529cf5522fa52c4b319804786f9ecd6c031a 100644 (file)
@@ -305,10 +305,10 @@ int ft_board_setup(void *blob, struct bd_info *bd)
        u64 size[CONFIG_NR_DRAM_BANKS];
 
        /* fixup DT for the two DDR banks */
-       base[0] = gd->bd->bi_dram[0].start;
-       size[0] = gd->bd->bi_dram[0].size;
-       base[1] = gd->bd->bi_dram[1].start;
-       size[1] = gd->bd->bi_dram[1].size;
+       base[0] = gd->dram[0].start;
+       size[0] = gd->dram[0].size;
+       base[1] = gd->dram[1].start;
+       size[1] = gd->dram[1].size;
 
        fdt_fixup_memory_banks(blob, base, size, 2);
        ft_cpu_setup(blob, bd);
index 8889c24f1f0cce6192d2d46c981051906fe5fe25..6c35c0a4347d909d1f476d5ce40af26ba9a93ccd 100644 (file)
@@ -198,10 +198,10 @@ int ft_board_setup(void *blob, struct bd_info *bd)
        u64 size[CONFIG_NR_DRAM_BANKS];
 
        /* fixup DT for the two DDR banks */
-       base[0] = gd->bd->bi_dram[0].start;
-       size[0] = gd->bd->bi_dram[0].size;
-       base[1] = gd->bd->bi_dram[1].start;
-       size[1] = gd->bd->bi_dram[1].size;
+       base[0] = gd->dram[0].start;
+       size[0] = gd->dram[0].size;
+       base[1] = gd->dram[1].start;
+       size[1] = gd->dram[1].size;
 
        fdt_fixup_memory_banks(blob, base, size, 2);
        ft_cpu_setup(blob, bd);
index 679b0b2235f728ce1ded20de5100f939436fe423..ddd9993986f355658c69202fa4a39c11defa69a8 100644 (file)
@@ -426,10 +426,10 @@ int ft_board_setup(void *blob, struct bd_info *bd)
        u8 reg;
 
        /* fixup DT for the two DDR banks */
-       base[0] = gd->bd->bi_dram[0].start;
-       size[0] = gd->bd->bi_dram[0].size;
-       base[1] = gd->bd->bi_dram[1].start;
-       size[1] = gd->bd->bi_dram[1].size;
+       base[0] = gd->dram[0].start;
+       size[0] = gd->dram[0].size;
+       base[1] = gd->dram[1].start;
+       size[1] = gd->dram[1].size;
 
        fdt_fixup_memory_banks(blob, base, size, 2);
        ft_cpu_setup(blob, bd);
index 83b280f7646a3fc8cdc45ca922d9a68c9d03b595..6677e271029d1bb0349b56c3239d3c551013c1f8 100644 (file)
@@ -171,10 +171,10 @@ int ft_board_setup(void *blob, struct bd_info *bd)
        u64 size[CONFIG_NR_DRAM_BANKS];
 
        /* fixup DT for the two DDR banks */
-       base[0] = gd->bd->bi_dram[0].start;
-       size[0] = gd->bd->bi_dram[0].size;
-       base[1] = gd->bd->bi_dram[1].start;
-       size[1] = gd->bd->bi_dram[1].size;
+       base[0] = gd->dram[0].start;
+       size[0] = gd->dram[0].size;
+       base[1] = gd->dram[1].start;
+       size[1] = gd->dram[1].size;
 
        fdt_fixup_memory_banks(blob, base, size, 2);
        ft_cpu_setup(blob, bd);
index 5783dd8a4039e9661d88618407c55f6fac650aff..1b477e83676d98d64d1801508822a39ec1226766 100644 (file)
@@ -830,7 +830,7 @@ int board_init(void)
 void detail_board_ddr_info(void)
 {
        puts("\nDDR    ");
-       print_size(gd->bd->bi_dram[0].size + gd->bd->bi_dram[1].size, "");
+       print_size(gd->dram[0].size + gd->dram[1].size, "");
        print_ddr_info(0);
 }
 
@@ -959,8 +959,8 @@ int ft_board_setup(void *blob, struct bd_info *bd)
 
        /* fixup DT for the two GPP DDR banks */
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               base[i] = gd->bd->bi_dram[i].start;
-               size[i] = gd->bd->bi_dram[i].size;
+               base[i] = gd->dram[i].start;
+               size[i] = gd->dram[i].size;
        }
 
 #ifdef CONFIG_RESV_RAM
index aba0560181af302e55d5789899a4e1f2e521c991..325dc817aaf6fbb51bf012658ba26fe22b3ac3d0 100644 (file)
@@ -253,12 +253,12 @@ int misc_init_r(void)
 void detail_board_ddr_info(void)
 {
        puts("\nDDR    ");
-       print_size(gd->bd->bi_dram[0].size + gd->bd->bi_dram[1].size, "");
+       print_size(gd->dram[0].size + gd->dram[1].size, "");
        print_ddr_info(0);
 #ifdef CONFIG_SYS_FSL_HAS_DP_DDR
-       if (soc_has_dp_ddr() && gd->bd->bi_dram[2].size) {
+       if (soc_has_dp_ddr() && gd->dram[2].size) {
                puts("\nDP-DDR ");
-               print_size(gd->bd->bi_dram[2].size, "");
+               print_size(gd->dram[2].size, "");
                print_ddr_info(CONFIG_DP_DDR_CTRL);
        }
 #endif
@@ -302,10 +302,10 @@ int ft_board_setup(void *blob, struct bd_info *bd)
        ft_cpu_setup(blob, bd);
 
        /* fixup DT for the two GPP DDR banks */
-       base[0] = gd->bd->bi_dram[0].start;
-       size[0] = gd->bd->bi_dram[0].size;
-       base[1] = gd->bd->bi_dram[1].start;
-       size[1] = gd->bd->bi_dram[1].size;
+       base[0] = gd->dram[0].start;
+       size[0] = gd->dram[0].size;
+       base[1] = gd->dram[1].start;
+       size[1] = gd->dram[1].size;
 
 #ifdef CONFIG_RESV_RAM
        /* reduce size if reserved memory is within this bank */
index d08598d1c62da539139dc9b0c44cb223b72a8751..9dec818280b0f5c8ae172c688b46942ac3c9dded 100644 (file)
@@ -359,12 +359,12 @@ int misc_init_r(void)
 void detail_board_ddr_info(void)
 {
        puts("\nDDR    ");
-       print_size(gd->bd->bi_dram[0].size + gd->bd->bi_dram[1].size, "");
+       print_size(gd->dram[0].size + gd->dram[1].size, "");
        print_ddr_info(0);
 #ifdef CONFIG_SYS_FSL_HAS_DP_DDR
-       if (soc_has_dp_ddr() && gd->bd->bi_dram[2].size) {
+       if (soc_has_dp_ddr() && gd->dram[2].size) {
                puts("\nDP-DDR ");
-               print_size(gd->bd->bi_dram[2].size, "");
+               print_size(gd->dram[2].size, "");
                print_ddr_info(CONFIG_DP_DDR_CTRL);
        }
 #endif
@@ -487,10 +487,10 @@ int ft_board_setup(void *blob, struct bd_info *bd)
        size = calloc(total_memory_banks, sizeof(u64));
 
        /* fixup DT for the two GPP DDR banks */
-       base[0] = gd->bd->bi_dram[0].start;
-       size[0] = gd->bd->bi_dram[0].size;
-       base[1] = gd->bd->bi_dram[1].start;
-       size[1] = gd->bd->bi_dram[1].size;
+       base[0] = gd->dram[0].start;
+       size[0] = gd->dram[0].size;
+       base[1] = gd->dram[1].start;
+       size[1] = gd->dram[1].size;
 
 #ifdef CONFIG_RESV_RAM
        /* reduce size if reserved memory is within this bank */
index b7a6ccf46aa7dd4a7dbd472d96f444b29e51ca37..10729dfaf249b6056e3ddfb20c838b5533732d46 100644 (file)
@@ -573,7 +573,7 @@ void detail_board_ddr_info(void)
 
        puts("\nDDR    ");
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++)
-               ddr_size += gd->bd->bi_dram[i].size;
+               ddr_size += gd->dram[i].size;
        print_size(ddr_size, "");
        print_ddr_info(0);
 }
@@ -808,8 +808,8 @@ int ft_board_setup(void *blob, struct bd_info *bd)
 
        /* fixup DT for the three GPP DDR banks */
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               base[i] = gd->bd->bi_dram[i].start;
-               size[i] = gd->bd->bi_dram[i].size;
+               base[i] = gd->dram[i].start;
+               size[i] = gd->dram[i].size;
        }
 
 #ifdef CONFIG_RESV_RAM
index 3cdcbf2ecc973ffe11768fde4857a957d316f68f..6df521d789f5c59a3c6154f138e43b5d438574e7 100644 (file)
@@ -93,7 +93,7 @@ int dram_init_banksize(void)
 {
        u8 ram_size;
 
-       memset(gd->bd->bi_dram, 0, sizeof(gd->bd->bi_dram[0]) * CONFIG_NR_DRAM_BANKS);
+       memset(gd->dram, 0, sizeof(gd->dram[0]) * CONFIG_NR_DRAM_BANKS);
 
        if (!IS_ENABLED(CONFIG_CPU_V7R))
                return fdtdec_setup_memory_banksize();
@@ -101,34 +101,34 @@ int dram_init_banksize(void)
        ram_size = phytec_get_am62_ddr_size_default();
        switch (ram_size) {
        case EEPROM_RAM_SIZE_1GB:
-               gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-               gd->bd->bi_dram[0].size = 0x40000000;
+               gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+               gd->dram[0].size = 0x40000000;
                gd->ram_size = 0x40000000;
                break;
 
        case EEPROM_RAM_SIZE_2GB:
-               gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-               gd->bd->bi_dram[0].size = 0x80000000;
+               gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+               gd->dram[0].size = 0x80000000;
                gd->ram_size = 0x80000000;
                break;
 
        case EEPROM_RAM_SIZE_4GB:
                /* Bank 0 declares the memory available in the DDR low region */
-               gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-               gd->bd->bi_dram[0].size = 0x80000000;
+               gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+               gd->dram[0].size = 0x80000000;
                gd->ram_size = 0x80000000;
 
 #ifdef CONFIG_PHYS_64BIT
                /* Bank 1 declares the memory available in the DDR upper region */
-               gd->bd->bi_dram[1].start = 0x880000000;
-               gd->bd->bi_dram[1].size = 0x80000000;
+               gd->dram[1].start = 0x880000000;
+               gd->dram[1].size = 0x80000000;
                gd->ram_size = 0x100000000;
 #endif
                break;
        default:
                /* Continue with default 2GB setup */
-               gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-               gd->bd->bi_dram[0].size = 0x80000000;
+               gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+               gd->dram[0].size = 0x80000000;
                gd->ram_size = 0x80000000;
                printf("DDR size %d is not supported\n", ram_size);
        }
@@ -186,8 +186,8 @@ int do_board_detect(void)
        dram_init_banksize();
 
        for (bank = 0; bank < CONFIG_NR_DRAM_BANKS; bank++) {
-               start[bank] = gd->bd->bi_dram[bank].start;
-               size[bank] = gd->bd->bi_dram[bank].size;
+               start[bank] = gd->dram[bank].start;
+               size[bank] = gd->dram[bank].size;
        }
 
        ret = fdt_fixup_memory_banks(fdt, start, size, CONFIG_NR_DRAM_BANKS);
index 114aa2170235fc44b2e6f0bd3cc71f6c9e143ea4..5e077872152fc852117c05dae9a27982a61bd9ce 100644 (file)
@@ -66,7 +66,7 @@ int dram_init_banksize(void)
 {
        u8 ram_size;
 
-       memset(gd->bd->bi_dram, 0, sizeof(gd->bd->bi_dram[0]) * CONFIG_NR_DRAM_BANKS);
+       memset(gd->dram, 0, sizeof(gd->dram[0]) * CONFIG_NR_DRAM_BANKS);
 
        if (!IS_ENABLED(CONFIG_CPU_V7R))
                return fdtdec_setup_memory_banksize();
@@ -74,21 +74,21 @@ int dram_init_banksize(void)
        ram_size = phytec_get_am64_ddr_size_default();
        switch (ram_size) {
        case EEPROM_RAM_SIZE_1GB:
-               gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-               gd->bd->bi_dram[0].size = 0x40000000;
+               gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+               gd->dram[0].size = 0x40000000;
                gd->ram_size = 0x40000000;
                break;
 
        case EEPROM_RAM_SIZE_2GB:
-               gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-               gd->bd->bi_dram[0].size = 0x80000000;
+               gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+               gd->dram[0].size = 0x80000000;
                gd->ram_size = 0x80000000;
                break;
 
        default:
                /* Continue with default 2GB setup */
-               gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-               gd->bd->bi_dram[0].size = 0x80000000;
+               gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+               gd->dram[0].size = 0x80000000;
                gd->ram_size = 0x80000000;
                printf("DDR size %d is not supported\n", ram_size);
        }
@@ -109,8 +109,8 @@ int do_board_detect(void)
        dram_init_banksize();
 
        for (bank = 0; bank < CONFIG_NR_DRAM_BANKS; bank++) {
-               start[bank] = gd->bd->bi_dram[bank].start;
-               size[bank] = gd->bd->bi_dram[bank].size;
+               start[bank] = gd->dram[bank].start;
+               size[bank] = gd->dram[bank].size;
        }
 
        return fdt_fixup_memory_banks(fdt, start, size, CONFIG_NR_DRAM_BANKS);
index 9fc63febdac9ae5dc2f2b21406475e44c5383179..a738e3542e2db9a0663253678e53b5501d544681 100644 (file)
@@ -31,8 +31,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size =  PHYS_SDRAM_1_SIZE;
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size =  PHYS_SDRAM_1_SIZE;
 
        return 0;
 }
index 6824454cdf4f589dfe063377f2017fd17c49571d..421e193e730df5c1761f2940ee3227b5aa279651 100644 (file)
@@ -44,8 +44,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size = PHYS_SDRAM_1_SIZE;
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size = PHYS_SDRAM_1_SIZE;
 
        return 0;
 }
index b0a1484c0fa432833970569ce6af653f8d8590ad..885c660a289b6161c4bd9b95e4eecaa9f0914530 100644 (file)
@@ -356,9 +356,9 @@ int dram_init_banksize(void)
 
        /* Update gd->ram_size to reflect total RAM across all banks */
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               if (gd->bd->bi_dram[i].size == 0)
+               if (gd->dram[i].size == 0)
                        break;
-               total_size += gd->bd->bi_dram[i].size;
+               total_size += gd->dram[i].size;
        }
        gd->ram_size = total_size;
 
index 3d537be4d02f576935df3e51984af35fbde0ae71..09667d46d996ff469ab2f71de544d41e5b567330 100644 (file)
@@ -49,15 +49,15 @@ int dram_init_banksize(void)
                return 0;
 
        for (bank = 0; bank < CONFIG_NR_DRAM_BANKS; bank++) {
-               if (gd->bd->bi_dram[bank].start != 0x48000000)
+               if (gd->dram[bank].start != 0x48000000)
                        continue;
 
                /*
                 * If this U-Boot runs in EL3, make the bottom 128 MiB
                 * available for loading of follow up firmware blobs.
                 */
-               gd->bd->bi_dram[bank].start -= 0x8000000;
-               gd->bd->bi_dram[bank].size += 0x8000000;
+               gd->dram[bank].start -= 0x8000000;
+               gd->dram[bank].size += 0x8000000;
                break;
        }
 
index 8153aed15e3db5545f6b977294cc8c19fcd5d18e..9245bf348f8cca59409a606257f2f97e71fac913 100644 (file)
@@ -43,7 +43,7 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = gd->ram_base;
-       gd->bd->bi_dram[0].size = gd->ram_size;
+       gd->dram[0].start = gd->ram_base;
+       gd->dram[0].size = gd->ram_size;
        return 0;
 }
index a229542ba7e2ee14df146e7c649c3499be5d72b3..1503de675d59e32596fa891c2a2f5d57089b7f14 100644 (file)
@@ -261,10 +261,10 @@ void renesas_dram_init_banksize(void)
 
        /* 16 GiB device, adjust memory map. */
        for (bank = 0; bank < CONFIG_NR_DRAM_BANKS; bank++) {
-               if (gd->bd->bi_dram[bank].start == 0x480000000ULL)
-                       gd->bd->bi_dram[bank].size = 0x180000000ULL;
-               else if (gd->bd->bi_dram[bank].start == 0x600000000ULL)
-                       gd->bd->bi_dram[bank].size = 0x200000000ULL;
+               if (gd->dram[bank].start == 0x480000000ULL)
+                       gd->dram[bank].size = 0x180000000ULL;
+               else if (gd->dram[bank].start == 0x600000000ULL)
+                       gd->dram[bank].size = 0x200000000ULL;
        }
 }
 
index 1f78654b685a43761524fa8f1412d5442d5f2c7c..7a0a93c1afeed884da7595e7a58db57b192d52db 100644 (file)
@@ -103,8 +103,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM;
-       gd->bd->bi_dram[0].size = PHYS_SDRAM_SIZE;
+       gd->dram[0].start = PHYS_SDRAM;
+       gd->dram[0].size = PHYS_SDRAM_SIZE;
 
        return 0;
 }
index cc58e0f3a386df7f9e2c05bdbca93ea4a1ff426a..0ff49dceb9ec8b9897b19db41802e6f6d0a97a5b 100644 (file)
@@ -97,8 +97,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM;
-       gd->bd->bi_dram[0].size = PHYS_SDRAM_SIZE;
+       gd->dram[0].start = PHYS_SDRAM;
+       gd->dram[0].size = PHYS_SDRAM_SIZE;
 
        return 0;
 }
index 5d5edd9f25307687f328ed8c3eb65cbb12437311..b5664296a81a07ff79507b3fca459b2ef793082d 100644 (file)
@@ -150,8 +150,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-       gd->bd->bi_dram[0].size = CFG_SYS_SDRAM_SIZE;
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].size = CFG_SYS_SDRAM_SIZE;
 
        return 0;
 }
index e70b4a82687c9711b22d1999a8fe5c91b0d44f21..130136e859669dc4620e636d78a27fb98dd60888 100644 (file)
@@ -67,8 +67,8 @@ int dram_init_banksize(void)
                addr = CFG_SYS_SDRAM_BASE + (i * SDRAM_BANK_SIZE);
                size = get_ram_size((long *)addr, SDRAM_BANK_SIZE);
 
-               gd->bd->bi_dram[i].start = addr;
-               gd->bd->bi_dram[i].size = size;
+               gd->dram[i].start = addr;
+               gd->dram[i].size = size;
        }
 
        return 0;
index eed1c2450fa68902db3032fc9b5a70f6965c5640..da3510023c4de22767125a4dd4fbea327965dbb2 100644 (file)
@@ -115,7 +115,7 @@ int board_init(void)
        ulong size = CONFIG_SYS_MEM_TOP_HIDE;
 
        gd->ram_size -= size;
-       gd->bd->bi_dram[CONFIG_NR_DRAM_BANKS - 1].size -= size;
+       gd->dram[CONFIG_NR_DRAM_BANKS - 1].size -= size;
 #endif
        exynos_init();
 
@@ -143,8 +143,8 @@ int dram_init_banksize(void)
                addr = CFG_SYS_SDRAM_BASE + (i * SDRAM_BANK_SIZE);
                size = get_ram_size((long *)addr, SDRAM_BANK_SIZE);
 
-               gd->bd->bi_dram[i].start = addr;
-               gd->bd->bi_dram[i].size = size;
+               gd->dram[i].start = addr;
+               gd->dram[i].size = size;
        }
 
        return 0;
index 6b2b1523663683df30b663e74d302944675c9637..d91e2e7d3f244d4b007a82ec58415254d80e8b89 100644 (file)
@@ -346,8 +346,8 @@ int dram_init_banksize(void)
        unsigned int i;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               gd->bd->bi_dram[i].start = mem_map[i + 1].phys;
-               gd->bd->bi_dram[i].size = mem_map[i + 1].size;
+               gd->dram[i].start = mem_map[i + 1].phys;
+               gd->dram[i].size = mem_map[i + 1].size;
        }
 
        return 0;
index a1047f3fd2a27aeec75db14134f2dadfb7ee7830..96a411233d1d0b2561beef51fe8281c9badb9b35 100644 (file)
@@ -43,12 +43,12 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size = PHYS_SDRAM_1_SIZE;
-       gd->bd->bi_dram[1].start = PHYS_SDRAM_2;
-       gd->bd->bi_dram[1].size = PHYS_SDRAM_2_SIZE;
-       gd->bd->bi_dram[2].start = PHYS_SDRAM_3;
-       gd->bd->bi_dram[2].size = PHYS_SDRAM_3_SIZE;
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size = PHYS_SDRAM_1_SIZE;
+       gd->dram[1].start = PHYS_SDRAM_2;
+       gd->dram[1].size = PHYS_SDRAM_2_SIZE;
+       gd->dram[2].start = PHYS_SDRAM_3;
+       gd->dram[2].size = PHYS_SDRAM_3_SIZE;
 
        return 0;
 }
index 7d0b0fcb0ae1e6e4cd0dfd9bb4bc3e32bc2f72e0..7e992c23a1b92ab024240678c955646f1ff6e104 100644 (file)
@@ -56,8 +56,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size = PHYS_SDRAM_1_SIZE;
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size = PHYS_SDRAM_1_SIZE;
 
        return 0;
 }
index 5a4874b29cdf0a8d4c59f4421cd8b0074211ae15..f013893b465ff6c1a8958042eae446359c55818d 100644 (file)
@@ -57,17 +57,17 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size = get_ram_size((long *)PHYS_SDRAM_1,
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size = get_ram_size((long *)PHYS_SDRAM_1,
                                                        PHYS_SDRAM_1_SIZE);
-       gd->bd->bi_dram[1].start = PHYS_SDRAM_2;
-       gd->bd->bi_dram[1].size = get_ram_size((long *)PHYS_SDRAM_2,
+       gd->dram[1].start = PHYS_SDRAM_2;
+       gd->dram[1].size = get_ram_size((long *)PHYS_SDRAM_2,
                                                        PHYS_SDRAM_2_SIZE);
-       gd->bd->bi_dram[2].start = PHYS_SDRAM_3;
-       gd->bd->bi_dram[2].size = get_ram_size((long *)PHYS_SDRAM_3,
+       gd->dram[2].start = PHYS_SDRAM_3;
+       gd->dram[2].size = get_ram_size((long *)PHYS_SDRAM_3,
                                                        PHYS_SDRAM_3_SIZE);
-       gd->bd->bi_dram[3].start = PHYS_SDRAM_4;
-       gd->bd->bi_dram[3].size = get_ram_size((long *)PHYS_SDRAM_4,
+       gd->dram[3].start = PHYS_SDRAM_4;
+       gd->dram[3].size = get_ram_size((long *)PHYS_SDRAM_4,
                                                        PHYS_SDRAM_4_SIZE);
 
        return 0;
index 79cf34b40eb5a45ca7853cd7b32e48c7cd5962d2..69d3b9d61d329d44654bc313b800239b25759217 100644 (file)
@@ -397,20 +397,20 @@ int dram_init_banksize(void)
 
        if (gd->ram_size > SZ_2G) {
                /* Bank 0 declares the memory available in the DDR low region */
-               gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-               gd->bd->bi_dram[0].size = SZ_2G;
+               gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+               gd->dram[0].size = SZ_2G;
 
                /* Bank 1 declares the memory available in the DDR high region */
-               gd->bd->bi_dram[1].start = CFG_SYS_SDRAM_BASE1;
-               gd->bd->bi_dram[1].size = gd->ram_size - SZ_2G;
+               gd->dram[1].start = CFG_SYS_SDRAM_BASE1;
+               gd->dram[1].size = gd->ram_size - SZ_2G;
        } else {
                /* Bank 0 declares the memory available in the DDR low region */
-               gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-               gd->bd->bi_dram[0].size = gd->ram_size;
+               gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+               gd->dram[0].size = gd->ram_size;
 
                /* Bank 1 declares the memory available in the DDR high region */
-               gd->bd->bi_dram[1].start = 0;
-               gd->bd->bi_dram[1].size = 0;
+               gd->dram[1].start = 0;
+               gd->dram[1].size = 0;
        }
 
        return 0;
index 556a9ed527e7745abc15d5509cc05cb06c223007..a7bd08f69ade86b1fb665e4413415e2ed9eb688a 100644 (file)
@@ -170,11 +170,11 @@ int dram_init_banksize(void)
        struct draminfo_entry *ent = synquacer_draminfo->entry;
        int i;
 
-       for (i = 0; i < ARRAY_SIZE(gd->bd->bi_dram); i++) {
+       for (i = 0; i < ARRAY_SIZE(gd->dram); i++) {
                if (i < synquacer_draminfo->nr_regions) {
                        debug("%s: dram[%d] = %llx@%llx\n", __func__, i, ent[i].size, ent[i].base);
-                       gd->bd->bi_dram[i].start = ent[i].base;
-                       gd->bd->bi_dram[i].size = ent[i].size;
+                       gd->dram[i].start = ent[i].base;
+                       gd->dram[i].size = ent[i].size;
                }
        }
 
index f5174720434af2fdd0fc74ff8c2e7bc68156ba97..a1b0265d5acb54f74d9493bc5ae73aef0bd15707 100644 (file)
@@ -18,8 +18,8 @@ int dram_init(void)
 
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = PHYS_SDRAM_1;
-       gd->bd->bi_dram[0].size = PHYS_SDRAM_1_SIZE;
+       gd->dram[0].start = PHYS_SDRAM_1;
+       gd->dram[0].size = PHYS_SDRAM_1_SIZE;
 
        return 0;
 }
index 826c002907d69f624c19bff24257b5382a4d61f4..66330184af8684283c1a5863df4e78e8b4c64074 100644 (file)
@@ -70,8 +70,8 @@ int dram_init_banksize(void)
                if (t->hdr.tag != ATAG_MEM)
                        continue;
 
-               gd->bd->bi_dram[bank].start = t->u.mem.start;
-               gd->bd->bi_dram[bank].size = t->u.mem.size;
+               gd->dram[bank].start = t->u.mem.start;
+               gd->dram[bank].size = t->u.mem.size;
                if (++bank == CONFIG_NR_DRAM_BANKS)
                        break;
        }
index 0966db2bb620e10e04337d0e6c446cd9c7149a57..6f1fed43e3612da278ebd9cf3d30c86ddf192c4b 100644 (file)
@@ -643,11 +643,11 @@ int dram_init_banksize(void)
 
        ram_size = board_ti_get_emif_size();
 
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-       gd->bd->bi_dram[0].size = get_effective_memsize();
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].size = get_effective_memsize();
        if (ram_size > CFG_MAX_MEM_MAPPED) {
-               gd->bd->bi_dram[1].start = 0x200000000;
-               gd->bd->bi_dram[1].size = ram_size - CFG_MAX_MEM_MAPPED;
+               gd->dram[1].start = 0x200000000;
+               gd->dram[1].size = ram_size - CFG_MAX_MEM_MAPPED;
        }
 
        return 0;
index a92aa5cfc67158b9200ac0ec92a8527db023d0f8..43330993955d0950b010d81c95ce451a78456c96 100644 (file)
@@ -117,8 +117,8 @@ int ft_board_setup(void *blob, struct bd_info *bd)
        }
 
        nbanks = 1;
-       start[0] = bd->bi_dram[0].start;
-       size[0]  = bd->bi_dram[0].size;
+       start[0] = gd->dram[0].start;
+       size[0]  = gd->dram[0].size;
 
        /* adjust memory start address for LPAE */
        if (lpae) {
index 69a8a18d3a7543786f52d2e0debb484fa472f638..c63812bd966c2db124be8f9f14f165e449de01bf 100644 (file)
@@ -288,13 +288,13 @@ int ft_board_setup(void *blob, struct bd_info *bd)
                 * Reserve 1MB of memory for M4 (1MiB is also the minimum
                 * alignment for Linux due to MMU section size restrictions).
                 */
-               start[0] = gd->bd->bi_dram[0].start;
+               start[0] = gd->dram[0].start;
                size[0] = SZ_256M - SZ_1M;
 
                /* If needed, create a second entry for memory beyond 256M */
-               if (gd->bd->bi_dram[0].size > SZ_256M) {
-                       start[1] = gd->bd->bi_dram[0].start + SZ_256M;
-                       size[1] = gd->bd->bi_dram[0].size - SZ_256M;
+               if (gd->dram[0].size > SZ_256M) {
+                       start[1] = gd->dram[0].start + SZ_256M;
+                       size[1] = gd->dram[0].size - SZ_256M;
                        areas = 2;
                }
 
index 19ac2ae93136daf323d1a0ab7b2493c66273d272..26af1af2069fac278a8d03f6a779160113d280ff 100644 (file)
@@ -44,7 +44,7 @@ int dram_init_banksize(void)
                printf("Error setting up memory banksize. %d\n", ret);
 
        /* Use the detected RAM size, we only support 1 bank right now. */
-       gd->bd->bi_dram[0].size = gd->ram_size;
+       gd->dram[0].size = gd->ram_size;
 
        return ret;
 }
index 1234b3887c6a499e6298489cabca0e2b46533709..ec7775e06a7e4211fc3424e13418c64755029164 100644 (file)
@@ -78,7 +78,7 @@ int dram_init_banksize(void)
                printf("Error setting up memory banksize. %d\n", ret);
 
        /* Use the detected RAM size, we only support 1 bank right now. */
-       gd->bd->bi_dram[0].size = gd->ram_size;
+       gd->dram[0].size = gd->ram_size;
 
        return ret;
 }
index ac8c9a9a81a0afe12659a80b8a37b3d7fba37f9f..5c45f9932c5ff925efa868b8c59ff32f1f99123b 100644 (file)
@@ -148,7 +148,7 @@ int fsl_initdram(void)
 void detail_board_ddr_info(void)
 {
        puts("\nDDR    ");
-       print_size(gd->bd->bi_dram[0].size + gd->bd->bi_dram[1].size, "");
+       print_size(gd->dram[0].size + gd->dram[1].size, "");
        print_ddr_info(0);
 }
 
@@ -277,8 +277,8 @@ int ft_board_setup(void *blob, struct bd_info *bd)
 
        /* fixup DT for the two GPP DDR banks */
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               base[i] = gd->bd->bi_dram[i].start;
-               size[i] = gd->bd->bi_dram[i].size;
+               base[i] = gd->dram[i].start;
+               size[i] = gd->dram[i].size;
                /* reduce size if reserved memory is within this bank */
                if (IS_ENABLED(CONFIG_RESV_RAM) && RESV_MEM_IN_BANK(i))
                        size[i] = gd->arch.resv_ram - base[i];
index 05ecb75406b46f3ee5beead7eec7d849172c2c96..d8eff203a56f1260c3b36bc05b662c64d6003579 100644 (file)
@@ -347,10 +347,10 @@ static int zynq_verify_image(u32 src_ptr)
                 * This validation is just for PS DDR.
                 * TODO: Update this for PL DDR check as well.
                 */
-               if (part_load_addr < gd->bd->bi_dram[0].start &&
+               if (part_load_addr < gd->dram[0].start &&
                    ((part_load_addr + part_data_len) >
-                   (gd->bd->bi_dram[0].start +
-                    gd->bd->bi_dram[0].size))) {
+                   (gd->dram[0].start +
+                    gd->dram[0].size))) {
                        printf("INVALID_LOAD_ADDRESS_FAIL\n");
                        return -1;
                }
index eb41f84c198d90dfad9fb7894483cac3d6007319..a12c039d8c955f077549b63255b4c6c756be3e57 100644 (file)
@@ -279,8 +279,8 @@ int dram_init(void)
 #else
 int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = CFG_SYS_SDRAM_BASE;
-       gd->bd->bi_dram[0].size = get_effective_memsize();
+       gd->dram[0].start = CFG_SYS_SDRAM_BASE;
+       gd->dram[0].size = get_effective_memsize();
 
        mem_map_fill();
 
index 265f29d44fffb63a0cee697d3a910176e39bc891..67938fdd200fec0e1730cc4f227a50ebc6370532 100644 (file)
@@ -118,7 +118,7 @@ phys_addr_t env_get_bootm_low(void)
 #if defined(CFG_SYS_SDRAM_BASE)
        return CFG_SYS_SDRAM_BASE;
 #elif defined(CONFIG_ARM) || defined(CONFIG_MICROBLAZE) || defined(CONFIG_RISCV)
-       return gd->bd->bi_dram[0].start;
+       return gd->dram[0].start;
 #else
        return 0;
 #endif
index 1150131a11e02f3ba797e550baa14b297d8cf63b..9e0e0f93edd34ae9056926883b1a802858e179d9 100644 (file)
@@ -260,8 +260,8 @@ int boot_relocate_fdt(char **of_flat_tree, ulong *of_size)
                of_start = NULL;
 
                for (bank = 0; bank < CONFIG_NR_DRAM_BANKS; bank++) {
-                       start = gd->bd->bi_dram[bank].start;
-                       size = gd->bd->bi_dram[bank].size;
+                       start = gd->dram[bank].start;
+                       size = gd->dram[bank].size;
 
                        /* DRAM bank addresses are too low, skip it. */
                        if (start + size < low)
index ddf77303735cbe401b89f2f3fbcbc2083893e06f..bf1eca759048ff61853089ebeaf782b2e38c4c6d 100644 (file)
@@ -77,15 +77,15 @@ void bdinfo_print_mhz(const char *name, unsigned long hz)
        printf("%-12s= %6s MHz\n", name, strmhz(buf, hz));
 }
 
-static void print_bi_dram(const struct bd_info *bd)
+static void print_dram(const struct bd_info *bd)
 {
        int i;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; ++i) {
-               if (bd->bi_dram[i].size) {
+               if (gd->dram[i].size) {
                        bdinfo_print_num_l("DRAM bank", i);
-                       bdinfo_print_num_ll("-> start", bd->bi_dram[i].start);
-                       bdinfo_print_num_ll("-> size",  bd->bi_dram[i].size);
+                       bdinfo_print_num_ll("-> start", gd->dram[i].start);
+                       bdinfo_print_num_ll("-> size",  gd->dram[i].size);
                }
        }
 }
@@ -144,7 +144,7 @@ static int bdinfo_print_all(struct bd_info *bd)
        bdinfo_print_num_l("bd address", (ulong)bd);
 #endif
        bdinfo_print_num_l("boot_params", (ulong)bd->bi_boot_params);
-       print_bi_dram(bd);
+       print_dram(bd);
        bdinfo_print_num_l("flashstart", (ulong)bd->bi_flashstart);
        bdinfo_print_num_l("flashsize", (ulong)bd->bi_flashsize);
        bdinfo_print_num_l("flashoffset", (ulong)bd->bi_flashoffset);
@@ -199,7 +199,7 @@ int do_bdinfo(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[])
                        print_eth();
                        return CMD_RET_SUCCESS;
                case 'm':
-                       print_bi_dram(bd);
+                       print_dram(bd);
                        return CMD_RET_SUCCESS;
                default:
                        return CMD_RET_USAGE;
index a8d71d11a91957cae276b811bac8829be3cdce75..36277cc154cb21e937beb2b19d48fd8202000e97 100644 (file)
@@ -227,10 +227,10 @@ static int do_ddr4_ecc_inject(struct cmd_tbl *cmdtp, int flag, int argc,
                return CMD_RET_FAILURE;
        }
 
-       if (!((start_addr >= gd->bd->bi_dram[0].start &&
-              (start_addr <= (gd->bd->bi_dram[0].start + gd->bd->bi_dram[0].size - 1))) ||
-             (start_addr >= gd->bd->bi_dram[1].start &&
-              (start_addr <= (gd->bd->bi_dram[1].start + gd->bd->bi_dram[1].size - 1))))) {
+       if (!((start_addr >= gd->dram[0].start &&
+              (start_addr <= (gd->dram[0].start + gd->dram[0].size - 1))) ||
+             (start_addr >= gd->dram[1].start &&
+              (start_addr <= (gd->dram[1].start + gd->dram[1].size - 1))))) {
                puts("Address is not in the DDR range\n");
                return CMD_RET_FAILURE;
        }
index e7b5d773f5e1e2b2a8967669245c489e4314d8fa..763ab42c48adbd1f70cff1f7f25c9d8e10aff315 100644 (file)
@@ -202,8 +202,8 @@ static int do_ufetch(struct cmd_tbl *cmdtp, int flag, int argc,
                        printf("CPU: " RESET CONFIG_SYS_ARCH " (%d cores, 1 in use)\n", n_cpus);
                        break;
                case MEMORY:
-                       for (int j = 0; j < CONFIG_NR_DRAM_BANKS && gd->bd->bi_dram[j].size; j++)
-                               size += gd->bd->bi_dram[j].size;
+                       for (int j = 0; j < CONFIG_NR_DRAM_BANKS && gd->dram[j].size; j++)
+                               size += gd->dram[j].size;
                        printf("Memory:" RESET " ");
                        print_size(size, "\n");
                        break;
index fdb3577fec09cf4a604c56218953dcea285e9626..a3abec352716ddc0b3a3c44bbbc24a804aa4efac 100644 (file)
@@ -222,11 +222,11 @@ static int show_dram_config(void)
 
        debug("\nRAM Configuration:\n");
        for (i = size = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               size += gd->bd->bi_dram[i].size;
+               size += gd->dram[i].size;
                debug("Bank #%d: %llx ", i,
-                     (unsigned long long)(gd->bd->bi_dram[i].start));
+                     (unsigned long long)(gd->dram[i].start));
 #ifdef DEBUG
-               print_size(gd->bd->bi_dram[i].size, "\n");
+               print_size(gd->dram[i].size, "\n");
 #endif
        }
        debug("\nDRAM:  ");
@@ -244,8 +244,8 @@ static int show_dram_config(void)
 
 __weak int dram_init_banksize(void)
 {
-       gd->bd->bi_dram[0].start = gd->ram_base;
-       gd->bd->bi_dram[0].size = get_effective_memsize();
+       gd->dram[0].start = gd->ram_base;
+       gd->dram[0].size = get_effective_memsize();
 
        return 0;
 }
index a7cd065fb385cb05089d059038dd987e5e83fd23..a4d9d14393b83df8d44ae996c6929510c66994a9 100644 (file)
@@ -12,14 +12,13 @@ DECLARE_GLOBAL_DATA_PTR;
 
 void handoff_save_dram(struct spl_handoff *ho)
 {
-       struct bd_info *bd = gd->bd;
        int i;
 
        ho->ram_size = gd->ram_size;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               ho->ram_bank[i].start = bd->bi_dram[i].start;
-               ho->ram_bank[i].size = bd->bi_dram[i].size;
+               ho->ram_bank[i].start = gd->dram[i].start;
+               ho->ram_bank[i].size = gd->dram[i].size;
        }
 }
 
@@ -30,11 +29,10 @@ void handoff_load_dram_size(struct spl_handoff *ho)
 
 void handoff_load_dram_banks(struct spl_handoff *ho)
 {
-       struct bd_info *bd = gd->bd;
        int i;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               bd->bi_dram[i].start = ho->ram_bank[i].start;
-               bd->bi_dram[i].size = ho->ram_bank[i].size;
+               gd->dram[i].start = ho->ram_bank[i].start;
+               gd->dram[i].size = ho->ram_bank[i].size;
        }
 }
index 33e157b865a113f4f4aadf48f19636093a6c7338..f726d9ab0162aeea012861bf15a6c9c27abc39a8 100644 (file)
@@ -27,7 +27,7 @@ void bootcount_store(ulong a)
        int i;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++)
-               size += gd->bd->bi_dram[i].size;
+               size += gd->dram[i].size;
        save_addr = (ulong *)(size - BOOTCOUNT_ADDR);
        writel(a, save_addr);
        writel(CONFIG_SYS_BOOTCOUNT_MAGIC, &save_addr[1]);
@@ -50,7 +50,7 @@ ulong bootcount_load(void)
        int i, tmp;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++)
-               size += gd->bd->bi_dram[i].size;
+               size += gd->dram[i].size;
        save_addr = (ulong *)(size - BOOTCOUNT_ADDR);
 
        counter = readl(&save_addr[0]);
index b36a765a5de7df0b1ca82fb0bebd1ce879bb3189..2d2b72cf7660a74f00ee8094bc2a3d6f8fa3415e 100644 (file)
@@ -104,7 +104,7 @@ int sdram_mmr_init_full(struct udevice *dev)
 
        /* Get bank configuration from devicetree */
        ret = fdtdec_decode_ram_size(gd->fdt_blob, NULL, 0, NULL,
-                                    (phys_size_t *)&gd->ram_size, &bd);
+                                    (phys_size_t *)&gd->ram_size, gd);
        if (ret) {
                puts("DDR: Failed to decode memory node\n");
                return -ENXIO;
@@ -158,7 +158,7 @@ int sdram_mmr_init_full(struct udevice *dev)
 
        sdram_set_firewall(&bd);
 
-       priv->info.base = bd.bi_dram[0].start;
+       priv->info.base = gd->dram[0].start;
        priv->info.size = gd->ram_size;
 
        debug("DDR: HMC init success\n");
index ee66c72157a628d088ea43f6d8e30e3e9e085a20..d14e4bc5dcc12102f37da32a9d129c94b38fa6b9 100644 (file)
@@ -302,7 +302,7 @@ int sdram_mmr_init_full(struct udevice *dev)
 
        /* Get bank configuration from devicetree */
        ret = fdtdec_decode_ram_size(gd->fdt_blob, NULL, 0, NULL,
-                                    (phys_size_t *)&gd->ram_size, gd->bd);
+                                    (phys_size_t *)&gd->ram_size, gd);
        if (ret) {
                puts("DDR: Failed to decode memory node\n");
                ret = -ENXIO;
@@ -345,19 +345,19 @@ int sdram_mmr_init_full(struct udevice *dev)
                for (i = 0; i < config_dram_banks; i++) {
                        remaining_size = hw_size - size_counter;
                        if (remaining_size <= dram_bank_info[i].max_size) {
-                               gd->bd->bi_dram[i].start = dram_bank_info[i].start;
-                               gd->bd->bi_dram[i].size = remaining_size;
+                               gd->dram[i].start = dram_bank_info[i].start;
+                               gd->dram[i].size = remaining_size;
                                debug("Memory bank[%d]  Starting address: 0x%llx  size: 0x%llx\n",
-                                     i, gd->bd->bi_dram[i].start, gd->bd->bi_dram[i].size);
+                                     i, gd->dram[i].start, gd->dram[i].size);
                                break;
                        }
 
-                       gd->bd->bi_dram[i].start = dram_bank_info[i].start;
-                       gd->bd->bi_dram[i].size = dram_bank_info[i].max_size;
+                       gd->dram[i].start = dram_bank_info[i].start;
+                       gd->dram[i].size = dram_bank_info[i].max_size;
 
                        debug("Memory bank[%d]  Starting address: 0x%llx  size: 0x%llx\n",
-                             i, gd->bd->bi_dram[i].start, gd->bd->bi_dram[i].size);
-                       size_counter += gd->bd->bi_dram[i].size;
+                             i, gd->dram[i].start, gd->dram[i].size);
+                       size_counter += gd->dram[i].size;
                }
 
                gd->ram_size = hw_size;
@@ -408,7 +408,7 @@ int sdram_mmr_init_full(struct udevice *dev)
 
        printf("DDR: firewall init success\n");
 
-       priv->info.base = gd->bd->bi_dram[0].start;
+       priv->info.base = gd->dram[0].start;
        priv->info.size = gd->ram_size;
 
        /* Ending DDR driver initialization success tracking */
index 9b3cc5c7b8695712905a28b8a5309b82698ca1e0..e4d522202d8f06d0df3633ec794150fb751b1d2c 100644 (file)
@@ -375,7 +375,7 @@ int sdram_mmr_init_full(struct udevice *dev)
 
        /* Get bank configuration from devicetree */
        ret = fdtdec_decode_ram_size(gd->fdt_blob, NULL, 0, NULL,
-                                    (phys_size_t *)&gd->ram_size, &bd);
+                                    (phys_size_t *)&gd->ram_size, gd);
        if (ret) {
                printf("%s: Failed to decode memory node\n", memory_type_in_use(dev));
 
@@ -484,7 +484,7 @@ int sdram_mmr_init_full(struct udevice *dev)
 
        printf("%s: firewall init success\n", (is_ddr_in_use(dev) ? io96b_ctrl->ddr_type : "HBM"));
 
-       priv->info.base = bd.bi_dram[0].start;
+       priv->info.base = gd->dram[0].start;
        priv->info.size = gd->ram_size;
 
        /* Ending DDR driver initialization success tracking */
index c281f711fdfd9fadb5e13515d93f2eb5cf2216bb..9cc809b80014db37985a42b4ab235e9d3a690791 100644 (file)
@@ -674,9 +674,9 @@ static void sdram_size_check(void)
 
        debug("DDR: Running SDRAM size sanity check\n");
 
-       ram_check = get_ram_size((long *)gd->bd->bi_dram[0].start,
-                                gd->bd->bi_dram[0].size);
-       if (ram_check != gd->bd->bi_dram[0].size) {
+       ram_check = get_ram_size((long *)gd->dram[0].start,
+                                gd->dram[0].size);
+       if (ram_check != gd->dram[0].size) {
                puts("DDR: SDRAM size check failed!\n");
                hang();
        }
@@ -719,14 +719,14 @@ int ddr_calibration_sequence(void)
        /* setup the dram info within bd */
        dram_init_banksize();
 
-       if (gd->ram_size != gd->bd->bi_dram[0].size) {
+       if (gd->ram_size != gd->dram[0].size) {
                printf("DDR: Warning: DRAM size from device tree (%ld MiB)\n",
-                      gd->bd->bi_dram[0].size >> 20);
+                      gd->dram[0].size >> 20);
                printf(" mismatch with hardware (%ld MiB).\n",
                       gd->ram_size >> 20);
        }
 
-       if (gd->bd->bi_dram[0].size > gd->ram_size) {
+       if (gd->dram[0].size > gd->ram_size) {
                printf("DDR: Error: DRAM size from device tree is greater\n");
                printf(" than hardware size.\n");
                hang();
index 17ec6afa82b0cdfe4eb0f86958819bb74ee42b0a..900d4f5998910f31772f7833b1224e78247a2a25 100644 (file)
@@ -2279,7 +2279,7 @@ int sdram_mmr_init_full(struct udevice *dev)
 
        /* Get bank configuration from devicetree */
        ret = fdtdec_decode_ram_size(gd->fdt_blob, NULL, 0, NULL,
-                                    (phys_size_t *)&gd->ram_size, &bd);
+                                    (phys_size_t *)&gd->ram_size, gd);
        if (ret) {
                debug("%s: Failed to decode memory node\n",  __func__);
                return -1;
@@ -2287,7 +2287,7 @@ int sdram_mmr_init_full(struct udevice *dev)
 
        printf("DDR: %lld MiB\n", gd->ram_size >> 20);
 
-       priv->info.base = bd.bi_dram[0].start;
+       priv->info.base = gd->dram[0].start;
        priv->info.size = gd->ram_size;
 
        sdram_size_check(&bd);
index 4ac4c79e0ac3e973a99d0b60a0cfd47eea50da06..6664090f86a17aa35aa9a41dbffb25a0cf26b40e 100644 (file)
@@ -285,7 +285,7 @@ int sdram_mmr_init_full(struct udevice *dev)
 
        /* Get bank configuration from devicetree */
        ret = fdtdec_decode_ram_size(gd->fdt_blob, NULL, 0, NULL,
-                                    (phys_size_t *)&gd->ram_size, &bd);
+                                    (phys_size_t *)&gd->ram_size, gd);
        if (ret) {
                puts("DDR: Failed to decode memory node\n");
                return -1;
@@ -328,7 +328,7 @@ int sdram_mmr_init_full(struct udevice *dev)
 
        sdram_size_check(&bd);
 
-       priv->info.base = bd.bi_dram[0].start;
+       priv->info.base = gd->dram[0].start;
        priv->info.size = gd->ram_size;
 
        debug("DDR: HMC init success\n");
index 8ee7049b164b3ef0731bde5c415817d5fec0015c..93df3d1812ab5eab69c9885b5aab21ab7c951eae 100644 (file)
@@ -150,8 +150,8 @@ void sdram_init_ecc_bits(struct bd_info *bd)
 
        icache_enable();
 
-       start_addr = bd->bi_dram[0].start;
-       size = bd->bi_dram[0].size;
+       start_addr = gd->dram[0].start;
+       size = gd->dram[0].size;
 
        /* Initialize small block for page table */
        memset((void *)start_addr, 0, PGTABLE_SIZE + PGTABLE_OFF);
@@ -174,8 +174,8 @@ void sdram_init_ecc_bits(struct bd_info *bd)
                if (bank >= CONFIG_NR_DRAM_BANKS)
                        break;
 
-               start_addr = bd->bi_dram[bank].start;
-               size = bd->bi_dram[bank].size;
+               start_addr = gd->dram[bank].start;
+               size = gd->dram[bank].size;
        }
 
        dcache_disable();
@@ -198,12 +198,12 @@ void sdram_size_check(struct bd_info *bd)
                phys_addr_t start = 0;
                phys_size_t remaining_size;
 
-               start = bd->bi_dram[bank].start;
-               remaining_size = bd->bi_dram[bank].size;
+               start = gd->dram[bank].start;
+               remaining_size = gd->dram[bank].size;
                debug("Checking bank %d: start=0x%llx, size=0x%llx\n",
                      bank, start, remaining_size);
 
-               while (ram_check < bd->bi_dram[bank].size) {
+               while (ram_check < gd->dram[bank].size) {
                        phys_size_t size, test_size, detected_size;
 
                        size = min((phys_addr_t)SZ_1G, (phys_addr_t)remaining_size);
@@ -232,7 +232,7 @@ void sdram_size_check(struct bd_info *bd)
                        }
 
                        ram_check += detected_size;
-                       remaining_size = bd->bi_dram[bank].size - ram_check;
+                       remaining_size = gd->dram[bank].size - ram_check;
                }
 
                total_ram_check += ram_check;
@@ -292,10 +292,10 @@ static void sdram_set_firewall_non_f2sdram(struct bd_info *bd)
        u32 lower, upper;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               if (!bd->bi_dram[i].size)
+               if (!gd->dram[i].size)
                        continue;
 
-               value = bd->bi_dram[i].start;
+               value = gd->dram[i].start;
 
                /* Keep first 1MB of SDRAM memory region as secure region when
                 * using ATF flow, where the ATF code is located.
@@ -322,7 +322,7 @@ static void sdram_set_firewall_non_f2sdram(struct bd_info *bd)
                                      (i * 4 * sizeof(u32)));
 
                /* Setting non-secure MPU limit and limit extended */
-               value = bd->bi_dram[i].start + bd->bi_dram[i].size - 1;
+               value = gd->dram[i].start + gd->dram[i].size - 1;
 
                lower = lower_32_bits(value);
                upper = upper_32_bits(value);
@@ -354,10 +354,10 @@ static void sdram_set_firewall_f2sdram(struct bd_info *bd)
        phys_size_t value;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               if (!bd->bi_dram[i].size)
+               if (!gd->dram[i].size)
                        continue;
 
-               value = bd->bi_dram[i].start;
+               value = gd->dram[i].start;
 
                /* Keep first 1MB of SDRAM memory region as secure region when
                 * using ATF flow, where the ATF code is located.
@@ -376,7 +376,7 @@ static void sdram_set_firewall_f2sdram(struct bd_info *bd)
                                          (i * 4 * sizeof(u32)));
 
                /* Setting limit and limit extended */
-               value = bd->bi_dram[i].start + bd->bi_dram[i].size - 1;
+               value = gd->dram[i].start + gd->dram[i].size - 1;
 
                lower = lower_32_bits(value);
                upper = upper_32_bits(value);
index 5af1953cd1485183b5989ce6200f7cc11ac066f5..89d511c1a6f68d43ab81aee1408cfc1a0c14d456 100644 (file)
@@ -375,8 +375,8 @@ static void mvebu_window_setup(const struct mmc *mmc)
                        break;
                }
 
-               size = gd->bd->bi_dram[i].size;
-               base = gd->bd->bi_dram[i].start;
+               size = gd->dram[i].size;
+               base = gd->dram[i].start;
                if (size && attrib) {
                        mvebu_mmc_write(mmc, WINDOW_CTRL(i),
                                        MVCPU_WIN_CTRL_DATA(size,
index 107a33aa9f54a480ecfabd3c2344d49050efcede..4dc738980cbc7fe8fe549f90b13fa67667fc7cae 100644 (file)
@@ -256,8 +256,8 @@ static void set_dram_access(struct mvgbe_registers *regs)
                win_param.access_ctrl = EWIN_ACCESS_FULL;
                win_param.high_addr = 0;
                /* Get bank base and size */
-               win_param.base_addr = gd->bd->bi_dram[i].start;
-               win_param.size = gd->bd->bi_dram[i].size;
+               win_param.base_addr = gd->dram[i].start;
+               win_param.size = gd->dram[i].size;
                if (win_param.size == 0)
                        win_param.enable = 0;
                else
index f58d542ef75ceaedfd4205ceb501f784cc9d7a55..4bdd1f7477fb26e2532429ed4c28c8bbae06abb9 100644 (file)
@@ -1126,14 +1126,14 @@ static int decode_regions(struct pci_controller *hose, ofnode parent_node,
                return 0;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; ++i) {
-               if (bd->bi_dram[i].size) {
-                       phys_addr_t start = bd->bi_dram[i].start;
+               if (gd->dram[i].size) {
+                       phys_addr_t start = gd->dram[i].start;
 
                        if (IS_ENABLED(CONFIG_PCI_MAP_SYSTEM_MEMORY))
-                               start = virt_to_phys((void *)(uintptr_t)bd->bi_dram[i].start);
+                               start = virt_to_phys((void *)(uintptr_t)gd->dram[i].start);
 
                        pci_set_region(hose->regions + hose->region_count++,
-                                      start, start, bd->bi_dram[i].size,
+                                      start, start, gd->dram[i].size,
                                       PCI_REGION_MEM | PCI_REGION_SYS_MEMORY);
                }
        }
index 794a41689138988eeefc23d8cfe09241293ca6a7..38ee17f063d272bc048cdeece20e91a585c0ced9 100644 (file)
@@ -222,8 +222,8 @@ static void usb_brg_adrdec_setup(int index)
                        break;
                }
 
-               size = gd->bd->bi_dram[i].size;
-               base = gd->bd->bi_dram[i].start;
+               size = gd->dram[i].size;
+               base = gd->dram[i].start;
                if ((size) && (attrib))
                        writel(MVCPU_WIN_CTRL_DATA(size, USB_TARGET_DRAM,
                                                   attrib, MVCPU_WIN_ENABLE),
index ca627728743b8b74407b2b42703180ef8f1102d2..a686faf9f58623ae77da1dfbcc1497f0a72028f9 100644 (file)
@@ -81,8 +81,8 @@ cvbs:
        meson_fb.fb_size = ALIGN(meson_fb.xsize * meson_fb.ysize *
                                 ((1 << VPU_MAX_LOG2_BPP) / 8) +
                                 MESON_VPU_OVERSCAN, EFI_PAGE_SIZE);
-       meson_fb.base = gd->bd->bi_dram[0].start +
-                       gd->bd->bi_dram[0].size - meson_fb.fb_size;
+       meson_fb.base = gd->dram[0].start +
+                       gd->dram[0].size - meson_fb.fb_size;
 
        /* Override the framebuffer address */
        uc_plat->base = meson_fb.base;
@@ -175,8 +175,8 @@ static void meson_vpu_setup_simplefb(void *fdt)
         * at the end of the RAM and we strip this portion from the kernel
         * allowed region
         */
-       mem_start = gd->bd->bi_dram[0].start;
-       mem_size = gd->bd->bi_dram[0].size - meson_fb.fb_size;
+       mem_start = gd->dram[0].start;
+       mem_size = gd->dram[0].size - meson_fb.fb_size;
        ret = fdt_fixup_memory_banks(fdt, &mem_start, &mem_size, 1);
        if (ret) {
                eprintf("Cannot setup simplefb: Error reserving memory\n");
index 154641b9a699d0c57475a55789af8f791b92dc64..ab36ee1595b9844ca86fd19f0095dd283d86c3e3 100644 (file)
@@ -368,7 +368,7 @@ int sunxi_simplefb_setup(void *blob)
                return 0; /* Keep older kernels working */
        }
 
-       start = gd->bd->bi_dram[0].start;
+       start = gd->dram[0].start;
        size = de2_plat->base - start;
        ret = fdt_fixup_memory_banks(blob, &start, &size, 1);
        if (ret) {
index 4a6a89ef9d2640a8b44c10dc767b6db42c864794..fa492c661db212fadeee6989cedb0f7b42ddc639 100644 (file)
@@ -1336,7 +1336,7 @@ int sunxi_simplefb_setup(void *blob)
         * and e.g. Linux refuses to iomap RAM on ARM, see:
         * linux/arch/arm/mm/ioremap.c around line 301.
         */
-       start = gd->bd->bi_dram[0].start;
+       start = gd->dram[0].start;
        size = sunxi_display->fb_addr - start;
        ret = fdt_fixup_memory_banks(blob, &start, &size, 1);
        if (ret) {
index ba6a10cf2ad9cd518dcc755c68bd0e69fea43d9b..ad7ebb1bbc9570b281c7435466650172c9fe3f61 100644 (file)
@@ -457,6 +457,13 @@ struct global_data {
         */
        struct upl *upl;
 #endif
+       /**
+        * @dram: array describing DRAM banks (start address and size for each bank)
+        */
+       struct {                        /* RAM configuration */
+               phys_addr_t start;
+               phys_size_t size;
+       } dram[CONFIG_NR_DRAM_BANKS];
 };
 #ifndef DO_DEPS_ONLY
 static_assert(sizeof(struct global_data) == GD_SIZE);
index 8c619c1b74a1d80a902f9dd504b0e1a4ac9a636e..931fe2f327413b4899fb52dcb2bfc08d6a9aeded 100644 (file)
@@ -59,10 +59,6 @@ struct bd_info {
 #endif
        ulong           bi_arch_number; /* unique id for this board */
        ulong           bi_boot_params; /* where this board expects params */
-       struct {                        /* RAM configuration */
-               phys_addr_t start;
-               phys_size_t size;
-       } bi_dram[CONFIG_NR_DRAM_BANKS];
 };
 
 #endif /* __ASSEMBLY__ */
index a6aafb51854223dd3d1cd5bbc2d5209a2fe1b98a..36e330887cd2afe49c419a9d813ba49bde5fedff 100644 (file)
@@ -15,9 +15,9 @@
  * Memory configurations
  */
 #define PHYS_SDRAM_1                   CSD0_BASE_ADDR
-#define PHYS_SDRAM_1_SIZE              (gd->bd->bi_dram[0].size)
+#define PHYS_SDRAM_1_SIZE              (gd->dram[0].size)
 #define PHYS_SDRAM_2                   CSD1_BASE_ADDR
-#define PHYS_SDRAM_2_SIZE              (gd->bd->bi_dram[1].size)
+#define PHYS_SDRAM_2_SIZE              (gd->dram[1].size)
 #define PHYS_SDRAM_SIZE                        (gd->ram_size)
 
 #define CFG_SYS_SDRAM_BASE             (PHYS_SDRAM_1)
index 2bd1426c7d9d6ee1e1eeba635a70f09c0792b1fc..e823611d2e463679e38aa2d7201eae96923eb5e9 100644 (file)
@@ -51,9 +51,9 @@
 
 /* Physical Memory Map */
 #define PHYS_SDRAM_1                   CSD0_BASE_ADDR
-#define PHYS_SDRAM_1_SIZE              (gd->bd->bi_dram[0].size)
+#define PHYS_SDRAM_1_SIZE              (gd->dram[0].size)
 #define PHYS_SDRAM_2                   CSD1_BASE_ADDR
-#define PHYS_SDRAM_2_SIZE              (gd->bd->bi_dram[1].size)
+#define PHYS_SDRAM_2_SIZE              (gd->dram[1].size)
 #define PHYS_SDRAM_SIZE                        (gd->ram_size)
 
 #define CFG_SYS_SDRAM_BASE             (PHYS_SDRAM_1)
index 14095b99f0344d728fa77d0a737012953ac00847..acd6eb6f8ac3b71121d54532d2a0dcb5fcb8cc60 100644 (file)
@@ -86,9 +86,9 @@
 
 /* Physical Memory Map */
 #define PHYS_SDRAM_1                   CSD0_BASE_ADDR
-#define PHYS_SDRAM_1_SIZE              (gd->bd->bi_dram[0].size)
+#define PHYS_SDRAM_1_SIZE              (gd->dram[0].size)
 #define PHYS_SDRAM_2                   CSD1_BASE_ADDR
-#define PHYS_SDRAM_2_SIZE              (gd->bd->bi_dram[1].size)
+#define PHYS_SDRAM_2_SIZE              (gd->dram[1].size)
 #define PHYS_SDRAM_SIZE                        (gd->ram_size)
 
 #define CFG_SYS_SDRAM_BASE             (PHYS_SDRAM_1)
index 3707de254e14b166b295108929cbd48b598ded3a..65babf50546d98d20b4cc7439b40d08496ef9b00 100644 (file)
@@ -81,9 +81,9 @@
 
 /* Physical Memory Map */
 #define PHYS_SDRAM_1                   CSD0_BASE_ADDR
-#define PHYS_SDRAM_1_SIZE              (gd->bd->bi_dram[0].size)
+#define PHYS_SDRAM_1_SIZE              (gd->dram[0].size)
 #define PHYS_SDRAM_2                   CSD1_BASE_ADDR
-#define PHYS_SDRAM_2_SIZE              (gd->bd->bi_dram[1].size)
+#define PHYS_SDRAM_2_SIZE              (gd->dram[1].size)
 #define PHYS_SDRAM_SIZE                        (gd->ram_size)
 
 #define CFG_SYS_SDRAM_BASE             (PHYS_SDRAM_1)
index 46eaa0da63c68112f8a21a66b45ea6d72ac63656..51d9f14a9f2eeaaf71a35ac1e90d61cb6dbcecd9 100644 (file)
@@ -57,6 +57,7 @@ struct fdt_memory {
 };
 
 struct bd_info;
+struct global_data;
 
 /**
  * enum fdt_source_t - indicates where the devicetree came from
@@ -974,7 +975,7 @@ int fdtdec_setup_mem_size_base(void);
 int fdtdec_setup_mem_size_base_lowest(void);
 
 /**
- * fdtdec_setup_memory_banksize() - decode and populate gd->bd->bi_dram
+ * fdtdec_setup_memory_banksize() - decode and populate gd->dram
  *
  * Decode the /memory 'reg' property to determine the address and size of the
  * memory banks. Use this data to populate the global data board info with the
@@ -1256,12 +1257,12 @@ int board_fdt_blob_setup(void **fdtp);
  * @param basep                Returns base address of first memory bank (NULL to
  *                     ignore)
  * @param sizep                Returns total memory size (NULL to ignore)
- * @param bd           Updated with the memory bank information (NULL to skip)
+ * @param gd_ptr       Updated with the memory bank information (NULL to skip)
  * Return: 0 if OK, -ve on error
  */
 int fdtdec_decode_ram_size(const void *blob, const char *area, int board_id,
                           phys_addr_t *basep, phys_size_t *sizep,
-                          struct bd_info *bd);
+                          struct global_data *gd_ptr);
 
 /**
  * fdtdec_get_srcname() - Get the name of where the devicetree comes from
index c31ebd83b85ed440fede38c08ce7f0f92930aad1..23466d3f1532673a08cdbb453fd7969383c2f4ea 100644 (file)
@@ -80,7 +80,7 @@ int dram_init(void);
  * dram_init_banksize() - Set up DRAM bank sizes
  *
  * This can be implemented by boards to set up the DRAM bank information in
- * gd->bd->bi_dram(). It is called just before relocation, after dram_init()
+ * gd->dram[] It is called just before relocation, after dram_init()
  * is called.
  *
  * If this is not provided, a default implementation will try to set up a
index d0a84b5034b8e09a121d4d55307c05fcfb58fbd4..b91e067106dd9a434db490ee5ac77dbb856b33ce 100644 (file)
@@ -35,6 +35,7 @@
 #include <linux/ctype.h>
 #include <linux/lzo.h>
 #include <linux/ioport.h>
+#include <asm/global_data.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
@@ -1142,14 +1143,14 @@ int fdtdec_setup_memory_banksize(void)
                if (ret != 0)
                        return -EINVAL;
 
-               gd->bd->bi_dram[bank].start = (phys_addr_t)res.start;
-               gd->bd->bi_dram[bank].size =
+               gd->dram[bank].start = (phys_addr_t)res.start;
+               gd->dram[bank].size =
                        (phys_size_t)(res.end - res.start + 1);
 
                debug("%s: DRAM Bank #%d: start = %pap, size = %pap\n",
                      __func__, bank,
-                     &gd->bd->bi_dram[bank].start,
-                     &gd->bd->bi_dram[bank].size);
+                     &gd->dram[bank].start,
+                     &gd->dram[bank].size);
        }
 
        return 0;
@@ -1930,7 +1931,7 @@ int fdtdec_resetup(int *rescan)
 
 int fdtdec_decode_ram_size(const void *blob, const char *area, int board_id,
                           phys_addr_t *basep, phys_size_t *sizep,
-                          struct bd_info *bd)
+                          gd_t *gd_ptr)
 {
        int addr_cells, size_cells;
        const u32 *cell, *end;
@@ -1982,8 +1983,8 @@ int fdtdec_decode_ram_size(const void *blob, const char *area, int board_id,
        }
        /* Note: if no matching subnode was found we use the parent node */
 
-       if (bd) {
-               memset(bd->bi_dram, '\0', sizeof(bd->bi_dram[0]) *
+       if (gd_ptr) {
+               memset(gd_ptr->dram, '\0', sizeof(gd_ptr->dram[0]) *
                                                CONFIG_NR_DRAM_BANKS);
        }
 
@@ -1999,8 +2000,8 @@ int fdtdec_decode_ram_size(const void *blob, const char *area, int board_id,
                if (addr_cells == 2)
                        addr += (u64)fdt32_to_cpu(*cell++) << 32UL;
                addr += fdt32_to_cpu(*cell++);
-               if (bd)
-                       bd->bi_dram[bank].start = addr;
+               if (gd_ptr)
+                       gd_ptr->dram[bank].start = addr;
                if (basep && !bank)
                        *basep = (phys_addr_t)addr;
 
@@ -2022,8 +2023,8 @@ int fdtdec_decode_ram_size(const void *blob, const char *area, int board_id,
                        }
                }
 
-               if (bd)
-                       bd->bi_dram[bank].size = size;
+               if (gd_ptr)
+                       gd_ptr->dram[bank].size = size;
                total_size += size;
        }
 
index 779df35eb9cd70fd5b7d48e7e94d8d44555fa01a..77440a48486c5603167070271901d72408bd70aa 100644 (file)
--- a/lib/lmb.c
+++ b/lib/lmb.c
@@ -555,12 +555,12 @@ static void lmb_reserve_uboot_region(void)
 #endif
 
        for (bank = 0; bank < CONFIG_NR_DRAM_BANKS; bank++) {
-               if (!gd->bd->bi_dram[bank].size ||
-                   rsv_start < gd->bd->bi_dram[bank].start)
+               if (!gd->dram[bank].size ||
+                   rsv_start < gd->dram[bank].start)
                        continue;
                /* Watch out for RAM at end of address space! */
-               bank_end = gd->bd->bi_dram[bank].start +
-                       gd->bd->bi_dram[bank].size - 1;
+               bank_end = gd->dram[bank].start +
+                       gd->dram[bank].size - 1;
                if (rsv_start > bank_end)
                        continue;
                if (bank_end > end)
@@ -615,7 +615,6 @@ static void lmb_add_memory(void)
        phys_addr_t bank_end;
        phys_size_t size;
        u64 ram_top = gd->ram_top;
-       struct bd_info *bd = gd->bd;
 
        if (CONFIG_IS_ENABLED(LMB_ARCH_MEM_MAP))
                return lmb_arch_add_memory();
@@ -625,22 +624,22 @@ static void lmb_add_memory(void)
                ram_top = 0x100000000ULL;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; i++) {
-               size = bd->bi_dram[i].size;
+               size = gd->dram[i].size;
 
                if (size) {
-                       lmb_add(bd->bi_dram[i].start, size);
+                       lmb_add(gd->dram[i].start, size);
                        if (!IS_ENABLED(CONFIG_LMB_LIMIT_DMA_BELOW_RAM_TOP))
                                continue;
 
-                       bank_end = bd->bi_dram[i].start + size;
+                       bank_end = gd->dram[i].start + size;
 
                        /*
                         * Reserve memory above ram_top as
                         * no-overwrite so that it cannot be
                         * allocated
                         */
-                       if (bd->bi_dram[i].start >= ram_top)
-                               lmb_reserve(bd->bi_dram[i].start, size,
+                       if (gd->dram[i].start >= ram_top)
+                               lmb_reserve(gd->dram[i].start, size,
                                            LMB_NOOVERWRITE);
                        else if (bank_end > ram_top)
                                lmb_reserve(ram_top, bank_end - ram_top,
index 7f4f1868c6a2eb15ce0a0fe9630b98e1cafa0355..7b7fb0894dd74e27f7cf94ebcf860a61f9c8f977 100644 (file)
@@ -138,16 +138,15 @@ static int lmb_test_dump_all(struct unit_test_state *uts)
 
 static int bdinfo_check_mem(struct unit_test_state *uts)
 {
-       struct bd_info *bd = gd->bd;
        int i;
 
        for (i = 0; i < CONFIG_NR_DRAM_BANKS; ++i) {
-               if (bd->bi_dram[i].size) {
+               if (gd->dram[i].size) {
                        ut_assertok(test_num_l(uts, "DRAM bank", i));
                        ut_assertok(test_num_ll(uts, "-> start",
-                                               bd->bi_dram[i].start));
+                                               gd->dram[i].start));
                        ut_assertok(test_num_ll(uts, "-> size",
-                                               bd->bi_dram[i].size));
+                                               gd->dram[i].size));
                }
        }