]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
ram: sifive: Remove regmap dependency
authorBin Meng <bin.meng@windriver.com>
Tue, 15 Sep 2020 08:05:07 +0000 (16:05 +0800)
committerAndes <uboot@andestech.com>
Wed, 30 Sep 2020 00:54:38 +0000 (08:54 +0800)
The usage of regmap API in the SiFive RAM driver is not correct.
The reg address should be obtained via dev_read_addr_index() API.

Signed-off-by: Bin Meng <bin.meng@windriver.com>
drivers/ram/sifive/fu540_ddr.c

index f5b2873b33c189bb108f72cabb3b96624d1ec155..60d4945f848c85976dccad8aea223d74aeb53ae6 100644 (file)
@@ -11,7 +11,6 @@
 #include <fdtdec.h>
 #include <init.h>
 #include <ram.h>
-#include <regmap.h>
 #include <syscon.h>
 #include <asm/io.h>
 #include <clk.h>
@@ -339,17 +338,12 @@ static int fu540_ddr_probe(struct udevice *dev)
        priv->info.size = gd->ram_size;
 
 #if defined(CONFIG_SPL_BUILD)
-       struct regmap *map;
        int ret;
        u32 clock = 0;
 
        debug("FU540 DDR probe\n");
        priv->dev = dev;
 
-       ret = regmap_init_mem(dev_ofnode(dev), &map);
-       if (ret)
-               return ret;
-
        ret = clk_get_by_index(dev, 0, &priv->ddr_clk);
        if (ret) {
                debug("clk get failed %d\n", ret);
@@ -374,9 +368,9 @@ static int fu540_ddr_probe(struct udevice *dev)
                return ret;
        }
 
-       priv->ctl = regmap_get_range(map, 0);
-       priv->phy = regmap_get_range(map, 1);
-       priv->physical_filter_ctrl = regmap_get_range(map, 2);
+       priv->ctl = (struct fu540_ddrctl *)dev_read_addr_index(dev, 0);
+       priv->phy = (struct fu540_ddrphy *)dev_read_addr_index(dev, 1);
+       priv->physical_filter_ctrl = (u32 *)dev_read_addr_index(dev, 2);
 
        return fu540_ddr_setup(dev);
 #endif