Commit f0768491db98249b3f54f16dd99a1d8dcdea9f2a

Authored by Kever Yang
Committed by Philipp Tomsich
1 parent c9eb7bca4b

rockchip: rk3328: move sdram driver to driver/ram

Since we have CONFIG_RAM framwork and its driver folder, move the driver
into it.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>

Showing 4 changed files with 61 additions and 61 deletions Side-by-side Diff

arch/arm/mach-rockchip/rk3328/Makefile
... ... @@ -6,6 +6,5 @@
6 6  
7 7 obj-y += clk_rk3328.o
8 8 obj-y += rk3328.o
9   -obj-y += sdram_rk3328.o
10 9 obj-y += syscon_rk3328.o
arch/arm/mach-rockchip/rk3328/sdram_rk3328.c
1   -/*
2   - * (C) Copyright 2017 Rockchip Electronics Co., Ltd.
3   - *
4   - * SPDX-License-Identifier: GPL-2.0
5   - */
6   -
7   -#include <common.h>
8   -#include <dm.h>
9   -#include <ram.h>
10   -#include <syscon.h>
11   -#include <asm/arch/clock.h>
12   -#include <asm/arch/grf_rk3328.h>
13   -#include <asm/arch/sdram_common.h>
14   -
15   -DECLARE_GLOBAL_DATA_PTR;
16   -struct dram_info {
17   - struct ram_info info;
18   - struct rk3328_grf_regs *grf;
19   -};
20   -
21   -static int rk3328_dmc_probe(struct udevice *dev)
22   -{
23   - struct dram_info *priv = dev_get_priv(dev);
24   -
25   - priv->grf = syscon_get_first_range(ROCKCHIP_SYSCON_GRF);
26   - debug("%s: grf=%p\n", __func__, priv->grf);
27   - priv->info.base = CONFIG_SYS_SDRAM_BASE;
28   - priv->info.size = rockchip_sdram_size(
29   - (phys_addr_t)&priv->grf->os_reg[2]);
30   -
31   - return 0;
32   -}
33   -
34   -static int rk3328_dmc_get_info(struct udevice *dev, struct ram_info *info)
35   -{
36   - struct dram_info *priv = dev_get_priv(dev);
37   -
38   - *info = priv->info;
39   -
40   - return 0;
41   -}
42   -
43   -static struct ram_ops rk3328_dmc_ops = {
44   - .get_info = rk3328_dmc_get_info,
45   -};
46   -
47   -
48   -static const struct udevice_id rk3328_dmc_ids[] = {
49   - { .compatible = "rockchip,rk3328-dmc" },
50   - { }
51   -};
52   -
53   -U_BOOT_DRIVER(dmc_rk3328) = {
54   - .name = "rockchip_rk3328_dmc",
55   - .id = UCLASS_RAM,
56   - .of_match = rk3328_dmc_ids,
57   - .ops = &rk3328_dmc_ops,
58   - .probe = rk3328_dmc_probe,
59   - .priv_auto_alloc_size = sizeof(struct dram_info),
60   -};
drivers/ram/rockchip/Makefile
... ... @@ -7,5 +7,6 @@
7 7 obj-$(CONFIG_ROCKCHIP_RK3368) = dmc-rk3368.o
8 8 obj-$(CONFIG_ROCKCHIP_RK3188) = sdram_rk3188.o
9 9 obj-$(CONFIG_ROCKCHIP_RK3288) = sdram_rk3288.o
  10 +obj-$(CONFIG_ROCKCHIP_RK3328) = sdram_rk3328.o
10 11 obj-$(CONFIG_ROCKCHIP_RK3399) = sdram_rk3399.o
drivers/ram/rockchip/sdram_rk3328.c
  1 +/*
  2 + * (C) Copyright 2017 Rockchip Electronics Co., Ltd.
  3 + *
  4 + * SPDX-License-Identifier: GPL-2.0
  5 + */
  6 +
  7 +#include <common.h>
  8 +#include <dm.h>
  9 +#include <ram.h>
  10 +#include <syscon.h>
  11 +#include <asm/arch/clock.h>
  12 +#include <asm/arch/grf_rk3328.h>
  13 +#include <asm/arch/sdram_common.h>
  14 +
  15 +DECLARE_GLOBAL_DATA_PTR;
  16 +struct dram_info {
  17 + struct ram_info info;
  18 + struct rk3328_grf_regs *grf;
  19 +};
  20 +
  21 +static int rk3328_dmc_probe(struct udevice *dev)
  22 +{
  23 + struct dram_info *priv = dev_get_priv(dev);
  24 +
  25 + priv->grf = syscon_get_first_range(ROCKCHIP_SYSCON_GRF);
  26 + debug("%s: grf=%p\n", __func__, priv->grf);
  27 + priv->info.base = CONFIG_SYS_SDRAM_BASE;
  28 + priv->info.size = rockchip_sdram_size(
  29 + (phys_addr_t)&priv->grf->os_reg[2]);
  30 +
  31 + return 0;
  32 +}
  33 +
  34 +static int rk3328_dmc_get_info(struct udevice *dev, struct ram_info *info)
  35 +{
  36 + struct dram_info *priv = dev_get_priv(dev);
  37 +
  38 + *info = priv->info;
  39 +
  40 + return 0;
  41 +}
  42 +
  43 +static struct ram_ops rk3328_dmc_ops = {
  44 + .get_info = rk3328_dmc_get_info,
  45 +};
  46 +
  47 +
  48 +static const struct udevice_id rk3328_dmc_ids[] = {
  49 + { .compatible = "rockchip,rk3328-dmc" },
  50 + { }
  51 +};
  52 +
  53 +U_BOOT_DRIVER(dmc_rk3328) = {
  54 + .name = "rockchip_rk3328_dmc",
  55 + .id = UCLASS_RAM,
  56 + .of_match = rk3328_dmc_ids,
  57 + .ops = &rk3328_dmc_ops,
  58 + .probe = rk3328_dmc_probe,
  59 + .priv_auto_alloc_size = sizeof(struct dram_info),
  60 +};