rockchip: use common sdram function
authorKever Yang <kever.yang@rock-chips.com>
Fri, 23 Jun 2017 08:11:06 +0000 (16:11 +0800)
committerPhilipp Tomsich <philipp.tomsich@theobroma-systems.com>
Tue, 11 Jul 2017 10:13:44 +0000 (12:13 +0200)
Replace the sdram_init() in board init and rockchip_sdram_size() in
sdram driver for all the Rockchip SoCs which enable CONFIG_RAM.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Make dram_init() in rk3036-board.c conditional on CONFIG_RAM:
Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
13 files changed:
arch/arm/include/asm/arch-rockchip/ddr_rk3288.h
arch/arm/mach-rockchip/rk3036-board.c
arch/arm/mach-rockchip/rk3188-board.c
arch/arm/mach-rockchip/rk3188/sdram_rk3188.c
arch/arm/mach-rockchip/rk3288-board.c
arch/arm/mach-rockchip/rk3288/sdram_rk3288.c
arch/arm/mach-rockchip/rk3399/sdram_rk3399.c
board/geekbuying/geekbox/geekbox.c
board/rockchip/evb_px5/evb-px5.c
board/rockchip/evb_rk3328/evb-rk3328.c
board/rockchip/evb_rk3399/evb-rk3399.c
board/rockchip/sheep_rk3368/sheep_rk3368.c
board/theobroma-systems/puma_rk3399/puma-rk3399.c

index 9a59075afcf7896a39c4361015dcb2015d264560..35696c741ff3c4804ed784ca72175bff2d94f635 100644 (file)
@@ -441,52 +441,4 @@ enum {
 /* mr1 for ddr3 */
 #define DDR3_DLL_DISABLE               1
 
-/*
- *TODO(sjg@chromium.org): We use a PMU register to store SDRAM information for
- * passing from SPL to U-Boot. It would probably be better to use a normal C
- * structure in SRAM.
- *
- * sys_reg bitfield struct
- * [31] row_3_4_ch1
- * [30] row_3_4_ch0
- * [29:28] chinfo
- * [27] rank_ch1
- * [26:25] col_ch1
- * [24] bk_ch1
- * [23:22] cs0_row_ch1
- * [21:20] cs1_row_ch1
- * [19:18] bw_ch1
- * [17:16] dbw_ch1;
- * [15:13] ddrtype
- * [12] channelnum
- * [11] rank_ch0
- * [10:9] col_ch0
- * [8] bk_ch0
- * [7:6] cs0_row_ch0
- * [5:4] cs1_row_ch0
- * [3:2] bw_ch0
- * [1:0] dbw_ch0
-*/
-#define SYS_REG_DDRTYPE_SHIFT          13
-#define SYS_REG_DDRTYPE_MASK           7
-#define SYS_REG_NUM_CH_SHIFT           12
-#define SYS_REG_NUM_CH_MASK            1
-#define SYS_REG_ROW_3_4_SHIFT(ch)      (30 + (ch))
-#define SYS_REG_ROW_3_4_MASK           1
-#define SYS_REG_CHINFO_SHIFT(ch)       (28 + (ch))
-#define SYS_REG_RANK_SHIFT(ch)         (11 + (ch) * 16)
-#define SYS_REG_RANK_MASK              1
-#define SYS_REG_COL_SHIFT(ch)          (9 + (ch) * 16)
-#define SYS_REG_COL_MASK               3
-#define SYS_REG_BK_SHIFT(ch)           (8 + (ch) * 16)
-#define SYS_REG_BK_MASK                        1
-#define SYS_REG_CS0_ROW_SHIFT(ch)      (6 + (ch) * 16)
-#define SYS_REG_CS0_ROW_MASK           3
-#define SYS_REG_CS1_ROW_SHIFT(ch)      (4 + (ch) * 16)
-#define SYS_REG_CS1_ROW_MASK           3
-#define SYS_REG_BW_SHIFT(ch)           (2 + (ch) * 16)
-#define SYS_REG_BW_MASK                        3
-#define SYS_REG_DBW_SHIFT(ch)          ((ch) * 16)
-#define SYS_REG_DBW_MASK               3
-
 #endif
index bf2b268f8b22b6370d02fe248980f99437d951ed..26ea23b01400686a76a7dbf0ae23340f99ae4742 100644 (file)
@@ -60,12 +60,18 @@ int board_init(void)
        return 0;
 }
 
+#if !CONFIG_IS_ENABLED(RAM)
+/*
+ * When CONFIG_RAM is enabled, the dram_init() function is implemented
+ * in sdram_common.c.
+ */
 int dram_init(void)
 {
        gd->ram_size = sdram_size();
 
        return 0;
 }
+#endif
 
 #ifndef CONFIG_SYS_DCACHE_OFF
 void enable_caches(void)
index 4be711e4418aa94e58b66946a7a3fc1eb2211c77..3e76100ad1e541a436330f30b331a6b172a8e9bf 100644 (file)
@@ -72,28 +72,6 @@ err:
 #endif
 }
 
-int dram_init(void)
-{
-       struct ram_info ram;
-       struct udevice *dev;
-       int ret;
-
-       ret = uclass_get_device(UCLASS_RAM, 0, &dev);
-       if (ret) {
-               debug("DRAM init failed: %d\n", ret);
-               return ret;
-       }
-       ret = ram_get_info(dev, &ram);
-       if (ret) {
-               debug("Cannot get DRAM size: %d\n", ret);
-               return ret;
-       }
-       debug("SDRAM base=%lx, size=%x\n", ram.base, ram.size);
-       gd->ram_size = ram.size;
-
-       return 0;
-}
-
 #ifndef CONFIG_SYS_DCACHE_OFF
 void enable_caches(void)
 {
index 981d1d623bdde9a6b134a9fcbbd17aaa72841734..9d8b225dfac0b3b4d507f58fbbdc0dce99eb12d4 100644 (file)
@@ -22,6 +22,7 @@
 #include <asm/arch/grf_rk3188.h>
 #include <asm/arch/pmu_rk3188.h>
 #include <asm/arch/sdram.h>
+#include <asm/arch/sdram_common.h>
 #include <linux/err.h>
 
 DECLARE_GLOBAL_DATA_PTR;
@@ -796,49 +797,7 @@ error:
        printf("DRAM init failed!\n");
        hang();
 }
-#endif /* CONFIG_SPL_BUILD */
-
-size_t sdram_size_mb(struct rk3188_pmu *pmu)
-{
-       u32 rank, col, bk, cs0_row, cs1_row, bw, row_3_4;
-       size_t chipsize_mb = 0;
-       size_t size_mb = 0;
-       u32 ch;
-       u32 sys_reg = readl(&pmu->sys_reg[2]);
-       u32 chans;
-
-       chans = 1 + ((sys_reg >> SYS_REG_NUM_CH_SHIFT) & SYS_REG_NUM_CH_MASK);
-
-       for (ch = 0; ch < chans; ch++) {
-               rank = 1 + (sys_reg >> SYS_REG_RANK_SHIFT(ch) &
-                       SYS_REG_RANK_MASK);
-               col = 9 + (sys_reg >> SYS_REG_COL_SHIFT(ch) & SYS_REG_COL_MASK);
-               bk = 3 - ((sys_reg >> SYS_REG_BK_SHIFT(ch)) & SYS_REG_BK_MASK);
-               cs0_row = 13 + (sys_reg >> SYS_REG_CS0_ROW_SHIFT(ch) &
-                               SYS_REG_CS0_ROW_MASK);
-               cs1_row = 13 + (sys_reg >> SYS_REG_CS1_ROW_SHIFT(ch) &
-                               SYS_REG_CS1_ROW_MASK);
-               bw = (2 >> ((sys_reg >> SYS_REG_BW_SHIFT(ch)) &
-                       SYS_REG_BW_MASK));
-               row_3_4 = sys_reg >> SYS_REG_ROW_3_4_SHIFT(ch) &
-                       SYS_REG_ROW_3_4_MASK;
-               chipsize_mb = (1 << (cs0_row + col + bk + bw - 20));
-
-               if (rank > 1)
-                       chipsize_mb += chipsize_mb >>
-                               (cs0_row - cs1_row);
-               if (row_3_4)
-                       chipsize_mb = chipsize_mb * 3 / 4;
-               size_mb += chipsize_mb;
-       }
-
-       /* there can be no more than 2gb of memory */
-       size_mb = min(size_mb, 0x80000000 >> 20);
-
-       return size_mb;
-}
 
-#ifdef CONFIG_SPL_BUILD
 static int setup_sdram(struct udevice *dev)
 {
        struct dram_info *priv = dev_get_priv(dev);
@@ -913,12 +872,15 @@ static int rk3188_dmc_probe(struct udevice *dev)
 {
 #ifdef CONFIG_SPL_BUILD
        struct rk3188_sdram_params *plat = dev_get_platdata(dev);
-#endif
-       struct dram_info *priv = dev_get_priv(dev);
        struct regmap *map;
-       int ret;
        struct udevice *dev_clk;
+       int ret;
+#endif
+       struct dram_info *priv = dev_get_priv(dev);
+
+       priv->pmu = syscon_get_first_range(ROCKCHIP_SYSCON_PMU);
 
+#ifdef CONFIG_SPL_BUILD
 #if CONFIG_IS_ENABLED(OF_PLATDATA)
        ret = conv_of_platdata(dev);
        if (ret)
@@ -930,12 +892,9 @@ static int rk3188_dmc_probe(struct udevice *dev)
        priv->chan[0].msch = regmap_get_range(map, 0);
 
        priv->grf = syscon_get_first_range(ROCKCHIP_SYSCON_GRF);
-       priv->pmu = syscon_get_first_range(ROCKCHIP_SYSCON_PMU);
 
-#ifdef CONFIG_SPL_BUILD
        priv->chan[0].pctl = regmap_get_range(plat->map, 0);
        priv->chan[0].publ = regmap_get_range(plat->map, 1);
-#endif
 
        ret = rockchip_get_clk(&dev_clk);
        if (ret)
@@ -948,13 +907,14 @@ static int rk3188_dmc_probe(struct udevice *dev)
        priv->cru = rockchip_get_cru();
        if (IS_ERR(priv->cru))
                return PTR_ERR(priv->cru);
-#ifdef CONFIG_SPL_BUILD
        ret = setup_sdram(dev);
        if (ret)
                return ret;
-#endif
+#else
        priv->info.base = CONFIG_SYS_SDRAM_BASE;
-       priv->info.size = sdram_size_mb(priv->pmu) << 20;
+       priv->info.size = rockchip_sdram_size(
+                               (phys_addr_t)&priv->pmu->sys_reg[2]);
+#endif
 
        return 0;
 }
index a354d992da72337f47121ff61173acfb32f42e9e..613967c307700bf3cb359051fcf5e055a226c779 100644 (file)
@@ -157,28 +157,6 @@ err:
 #endif
 }
 
-int dram_init(void)
-{
-       struct ram_info ram;
-       struct udevice *dev;
-       int ret;
-
-       ret = uclass_get_device(UCLASS_RAM, 0, &dev);
-       if (ret) {
-               debug("DRAM init failed: %d\n", ret);
-               return ret;
-       }
-       ret = ram_get_info(dev, &ram);
-       if (ret) {
-               debug("Cannot get DRAM size: %d\n", ret);
-               return ret;
-       }
-       debug("SDRAM base=%lx, size=%x\n", ram.base, ram.size);
-       gd->ram_size = ram.size;
-
-       return 0;
-}
-
 #ifndef CONFIG_SYS_DCACHE_OFF
 void enable_caches(void)
 {
index b3ed3f25d9a66342c3fe9aad067cf835dcb533bb..95efb117fc17c439327bdc485d3749b22e69f148 100644 (file)
@@ -22,6 +22,7 @@
 #include <asm/arch/grf_rk3288.h>
 #include <asm/arch/pmu_rk3288.h>
 #include <asm/arch/sdram.h>
+#include <asm/arch/sdram_common.h>
 #include <linux/err.h>
 #include <power/regulator.h>
 #include <power/rk8xx_pmic.h>
@@ -923,53 +924,7 @@ error:
        printf("DRAM init failed!\n");
        hang();
 }
-#endif /* CONFIG_SPL_BUILD */
-
-size_t sdram_size_mb(struct rk3288_pmu *pmu)
-{
-       u32 rank, col, bk, cs0_row, cs1_row, bw, row_3_4;
-       size_t chipsize_mb = 0;
-       size_t size_mb = 0;
-       u32 ch;
-       u32 sys_reg = readl(&pmu->sys_reg[2]);
-       u32 chans;
-
-       chans = 1 + ((sys_reg >> SYS_REG_NUM_CH_SHIFT) & SYS_REG_NUM_CH_MASK);
-
-       for (ch = 0; ch < chans; ch++) {
-               rank = 1 + (sys_reg >> SYS_REG_RANK_SHIFT(ch) &
-                       SYS_REG_RANK_MASK);
-               col = 9 + (sys_reg >> SYS_REG_COL_SHIFT(ch) & SYS_REG_COL_MASK);
-               bk = 3 - ((sys_reg >> SYS_REG_BK_SHIFT(ch)) & SYS_REG_BK_MASK);
-               cs0_row = 13 + (sys_reg >> SYS_REG_CS0_ROW_SHIFT(ch) &
-                               SYS_REG_CS0_ROW_MASK);
-               cs1_row = 13 + (sys_reg >> SYS_REG_CS1_ROW_SHIFT(ch) &
-                               SYS_REG_CS1_ROW_MASK);
-               bw = (2 >> ((sys_reg >> SYS_REG_BW_SHIFT(ch)) &
-                       SYS_REG_BW_MASK));
-               row_3_4 = sys_reg >> SYS_REG_ROW_3_4_SHIFT(ch) &
-                       SYS_REG_ROW_3_4_MASK;
-               chipsize_mb = (1 << (cs0_row + col + bk + bw - 20));
-
-               if (rank > 1)
-                       chipsize_mb += chipsize_mb >>
-                               (cs0_row - cs1_row);
-               if (row_3_4)
-                       chipsize_mb = chipsize_mb * 3 / 4;
-               size_mb += chipsize_mb;
-       }
-
-       /*
-       * we use the 0x00000000~0xfdffffff space since 0xff000000~0xffffffff
-       * is SoC register space (i.e. reserved), and 0xfe000000~0xfeffffff is 
-       * inaccessible for some IP controller.
-       */
-       size_mb = min(size_mb, 0xfe000000 >> 20);
 
-       return size_mb;
-}
-
-#ifdef CONFIG_SPL_BUILD
 # ifdef CONFIG_ROCKCHIP_FAST_SPL
 static int veyron_init(struct dram_info *priv)
 {
@@ -1085,12 +1040,14 @@ static int rk3288_dmc_probe(struct udevice *dev)
 {
 #ifdef CONFIG_SPL_BUILD
        struct rk3288_sdram_params *plat = dev_get_platdata(dev);
-#endif
-       struct dram_info *priv = dev_get_priv(dev);
+       struct udevice *dev_clk;
        struct regmap *map;
        int ret;
-       struct udevice *dev_clk;
+#endif
+       struct dram_info *priv = dev_get_priv(dev);
 
+       priv->pmu = syscon_get_first_range(ROCKCHIP_SYSCON_PMU);
+#ifdef CONFIG_SPL_BUILD
 #if CONFIG_IS_ENABLED(OF_PLATDATA)
        ret = conv_of_platdata(dev);
        if (ret)
@@ -1105,14 +1062,12 @@ static int rk3288_dmc_probe(struct udevice *dev)
 
        priv->grf = syscon_get_first_range(ROCKCHIP_SYSCON_GRF);
        priv->sgrf = syscon_get_first_range(ROCKCHIP_SYSCON_SGRF);
-       priv->pmu = syscon_get_first_range(ROCKCHIP_SYSCON_PMU);
 
-#ifdef CONFIG_SPL_BUILD
        priv->chan[0].pctl = regmap_get_range(plat->map, 0);
        priv->chan[0].publ = regmap_get_range(plat->map, 1);
        priv->chan[1].pctl = regmap_get_range(plat->map, 2);
        priv->chan[1].publ = regmap_get_range(plat->map, 3);
-#endif
+
        ret = rockchip_get_clk(&dev_clk);
        if (ret)
                return ret;
@@ -1124,13 +1079,14 @@ static int rk3288_dmc_probe(struct udevice *dev)
        priv->cru = rockchip_get_cru();
        if (IS_ERR(priv->cru))
                return PTR_ERR(priv->cru);
-#ifdef CONFIG_SPL_BUILD
        ret = setup_sdram(dev);
        if (ret)
                return ret;
+#else
+       priv->info.base = CONFIG_SYS_SDRAM_BASE;
+       priv->info.size = rockchip_sdram_size(
+                       (phys_addr_t)&priv->pmu->sys_reg[2]);
 #endif
-       priv->info.base = 0;
-       priv->info.size = sdram_size_mb(priv->pmu) << 20;
 
        return 0;
 }
index aae17d54a66397da950b283b2ccb14dce4a651c3..63342ab5c98ab9e8f059e7862c5b9b45f9778be7 100644 (file)
@@ -15,6 +15,7 @@
 #include <syscon.h>
 #include <asm/io.h>
 #include <asm/arch/clock.h>
+#include <asm/arch/sdram_common.h>
 #include <asm/arch/sdram_rk3399.h>
 #include <asm/arch/cru_rk3399.h>
 #include <asm/arch/grf_rk3399.h>
@@ -43,50 +44,6 @@ struct dram_info {
        struct rk3399_pmugrf_regs *pmugrf;
 };
 
-/*
- * sys_reg bitfield struct
- * [31]                row_3_4_ch1
- * [30]                row_3_4_ch0
- * [29:28]     chinfo
- * [27]                rank_ch1
- * [26:25]     col_ch1
- * [24]                bk_ch1
- * [23:22]     cs0_row_ch1
- * [21:20]     cs1_row_ch1
- * [19:18]     bw_ch1
- * [17:16]     dbw_ch1;
- * [15:13]     ddrtype
- * [12]                channelnum
- * [11]                rank_ch0
- * [10:9]      col_ch0
- * [8]         bk_ch0
- * [7:6]       cs0_row_ch0
- * [5:4]       cs1_row_ch0
- * [3:2]       bw_ch0
- * [1:0]       dbw_ch0
-*/
-#define SYS_REG_DDRTYPE_SHIFT          13
-#define SYS_REG_DDRTYPE_MASK           7
-#define SYS_REG_NUM_CH_SHIFT           12
-#define SYS_REG_NUM_CH_MASK            1
-#define SYS_REG_ROW_3_4_SHIFT(ch)      (30 + (ch))
-#define SYS_REG_ROW_3_4_MASK           1
-#define SYS_REG_CHINFO_SHIFT(ch)       (28 + (ch))
-#define SYS_REG_RANK_SHIFT(ch)         (11 + (ch) * 16)
-#define SYS_REG_RANK_MASK              1
-#define SYS_REG_COL_SHIFT(ch)          (9 + (ch) * 16)
-#define SYS_REG_COL_MASK               3
-#define SYS_REG_BK_SHIFT(ch)           (8 + (ch) * 16)
-#define SYS_REG_BK_MASK                        1
-#define SYS_REG_CS0_ROW_SHIFT(ch)      (6 + (ch) * 16)
-#define SYS_REG_CS0_ROW_MASK           3
-#define SYS_REG_CS1_ROW_SHIFT(ch)      (4 + (ch) * 16)
-#define SYS_REG_CS1_ROW_MASK           3
-#define SYS_REG_BW_SHIFT(ch)           (2 + (ch) * 16)
-#define SYS_REG_BW_MASK                        3
-#define SYS_REG_DBW_SHIFT(ch)          ((ch) * 16)
-#define SYS_REG_DBW_MASK               3
-
 #define PRESET_SGRF_HOLD(n)    ((0x1 << (6 + 16)) | ((n) << 6))
 #define PRESET_GPIO0_HOLD(n)   ((0x1 << (7 + 16)) | ((n) << 7))
 #define PRESET_GPIO1_HOLD(n)   ((0x1 << (8 + 16)) | ((n) << 8))
@@ -1229,50 +1186,6 @@ static int rk3399_dmc_init(struct udevice *dev)
 }
 #endif
 
-size_t sdram_size_mb(struct dram_info *dram)
-{
-       u32 rank, col, bk, cs0_row, cs1_row, bw, row_3_4;
-       size_t chipsize_mb = 0;
-       size_t size_mb = 0;
-       u32 ch;
-
-       u32 sys_reg = readl(&dram->pmugrf->os_reg2);
-       u32 ch_num = 1 + ((sys_reg >> SYS_REG_NUM_CH_SHIFT)
-                      & SYS_REG_NUM_CH_MASK);
-
-       for (ch = 0; ch < ch_num; ch++) {
-               rank = 1 + (sys_reg >> SYS_REG_RANK_SHIFT(ch) &
-                       SYS_REG_RANK_MASK);
-               col = 9 + (sys_reg >> SYS_REG_COL_SHIFT(ch) & SYS_REG_COL_MASK);
-               bk = 3 - ((sys_reg >> SYS_REG_BK_SHIFT(ch)) & SYS_REG_BK_MASK);
-               cs0_row = 13 + (sys_reg >> SYS_REG_CS0_ROW_SHIFT(ch) &
-                               SYS_REG_CS0_ROW_MASK);
-               cs1_row = 13 + (sys_reg >> SYS_REG_CS1_ROW_SHIFT(ch) &
-                               SYS_REG_CS1_ROW_MASK);
-               bw = (2 >> ((sys_reg >> SYS_REG_BW_SHIFT(ch)) &
-                       SYS_REG_BW_MASK));
-               row_3_4 = sys_reg >> SYS_REG_ROW_3_4_SHIFT(ch) &
-                       SYS_REG_ROW_3_4_MASK;
-
-               chipsize_mb = (1 << (cs0_row + col + bk + bw - 20));
-
-               if (rank > 1)
-                       chipsize_mb += chipsize_mb >> (cs0_row - cs1_row);
-               if (row_3_4)
-                       chipsize_mb = chipsize_mb * 3 / 4;
-               size_mb += chipsize_mb;
-       }
-
-       /*
-        * we use the 0x00000000~0xf7ffffff space
-        * since 0xf8000000~0xffffffff is soc register space
-        * so we reserve it
-        */
-       size_mb = min_t(size_t, size_mb, 0xf8000000/(1<<20));
-
-       return size_mb;
-}
-
 static int rk3399_dmc_probe(struct udevice *dev)
 {
 #ifdef CONFIG_SPL_BUILD
@@ -1283,8 +1196,9 @@ static int rk3399_dmc_probe(struct udevice *dev)
 
        priv->pmugrf = syscon_get_first_range(ROCKCHIP_SYSCON_PMUGRF);
        debug("%s: pmugrf=%p\n", __func__, priv->pmugrf);
-       priv->info.base = 0;
-       priv->info.size = sdram_size_mb(priv) << 20;
+       priv->info.base = CONFIG_SYS_SDRAM_BASE;
+       priv->info.size = rockchip_sdram_size(
+                       (phys_addr_t)&priv->pmugrf->os_reg2);
 #endif
        return 0;
 }
index 75d121d7364b6ee06e80e63e9f62d17ee78e873f..422a03878e204ecd705bd60a3763cdf7e0737efc 100644 (file)
@@ -13,12 +13,6 @@ int board_init(void)
        return 0;
 }
 
-int dram_init(void)
-{
-       gd->ram_size = 0x80000000;
-       return 0;
-}
-
 int dram_init_banksize(void)
 {
        gd->bd->bi_dram[0].start = 0;
index 54e62dbb6e544ef5c4e69a0482be45027d45472c..7576581d9f2ffc670bef7f2842a96dea5e68367d 100644 (file)
@@ -34,13 +34,6 @@ int board_init(void)
        return 0;
 }
 
-int dram_init(void)
-{
-       gd->ram_size = 0x40000000;
-
-       return 0;
-}
-
 int dram_init_banksize(void)
 {
         /* Reserve 0x200000 for ATF bl31 */
index 0a26ed56b6d80c18f26340bfef5c0df1bd425cf2..75674bb38a8f66db8e14a31249860c2c8c2978ec 100644 (file)
@@ -16,12 +16,6 @@ int board_init(void)
        return 0;
 }
 
-int dram_init(void)
-{
-       gd->ram_size = 0x80000000;
-       return 0;
-}
-
 int dram_init_banksize(void)
 {
        /* Reserve 0x200000 for ATF bl31 */
index f63f003209a0ec381eedcf401e244434dfe7c745..950bde6af6ef890291f79e1dadeea7ae807c7080 100644 (file)
@@ -68,28 +68,6 @@ out:
        return 0;
 }
 
-int dram_init(void)
-{
-       struct ram_info ram;
-       struct udevice *dev;
-       int ret;
-
-       ret = uclass_get_device(UCLASS_RAM, 0, &dev);
-       if (ret) {
-               debug("DRAM init failed: %d\n", ret);
-               return ret;
-       }
-       ret = ram_get_info(dev, &ram);
-       if (ret) {
-               debug("Cannot get DRAM size: %d\n", ret);
-               return ret;
-       }
-       debug("SDRAM base=%llx, size=%x\n", ram.base, (unsigned int)ram.size);
-       gd->ram_size = ram.size;
-
-       return 0;
-}
-
 int dram_init_banksize(void)
 {
        /* Reserve 0x200000 for ATF bl31 */
index df1fd9d2c33077c324bf16bcd15c70d7100b8c4f..e6d23611fdb17d52471e4c5c3253fea8dba6dfbe 100644 (file)
@@ -21,13 +21,6 @@ int board_init(void)
        return 0;
 }
 
-int dram_init(void)
-{
-       gd->ram_size = 0x80000000;
-
-       return 0;
-}
-
 int dram_init_banksize(void)
 {
        gd->bd->bi_dram[0].start = 0x200000;
index 6fff3e1ae66a8fd3d35bec93203b29d17f870332..740baf52e4b1ed33a31f91f4ff2d93ae913cf3b9 100644 (file)
@@ -181,28 +181,6 @@ void get_board_serial(struct tag_serialnr *serialnr)
 }
 #endif
 
-int dram_init(void)
-{
-       struct ram_info ram;
-       struct udevice *dev;
-       int ret;
-
-       ret = uclass_get_device(UCLASS_RAM, 0, &dev);
-       if (ret) {
-               debug("DRAM init failed: %d\n", ret);
-               return ret;
-       }
-       ret = ram_get_info(dev, &ram);
-       if (ret) {
-               debug("Cannot get DRAM size: %d\n", ret);
-               return ret;
-       }
-       debug("SDRAM base=%llx, size=%x\n", ram.base, (unsigned int)ram.size);
-       gd->ram_size = ram.size;
-
-       return 0;
-}
-
 int dram_init_banksize(void)
 {
        /* Reserve 0x200000 for ATF bl31 */