blob: d94c3fc539c0047ae851bce14b770944b5faaca8 [file] [log] [blame]
Xi Chene8c681c2021-03-03 17:58:07 +08001/* SPDX-License-Identifier: GPL-2.0-only */
2
Xi Chene8c681c2021-03-03 17:58:07 +08003#include <stdint.h>
4#include <soc/dramc_common.h>
5#include <soc/dramc_param.h>
6#include <soc/emi.h>
7
8struct dramc_param *dramc_params;
9
10bool is_dvfs_enabled(void)
11{
12 dramc_info("dram_init: config_dvfs: %d\n",
13 dramc_params->dramc_datas.ddr_info.config_dvfs);
14 return !!(dramc_params->dramc_datas.ddr_info.config_dvfs);
15}
16
17u32 get_ddr_geometry(void)
18{
19 dramc_info("dram_init: ddr_geometry: %d\n",
Yu-Ping Wuc074f612021-04-12 11:03:57 +080020 dramc_params->dramc_datas.ddr_info.sdram.ddr_geometry);
21 return dramc_params->dramc_datas.ddr_info.sdram.ddr_geometry;
Xi Chene8c681c2021-03-03 17:58:07 +080022}
23
24u32 get_ddr_type(void)
25{
26 dramc_info("dram_init: ddr_type: %d\n",
Yu-Ping Wuc074f612021-04-12 11:03:57 +080027 dramc_params->dramc_datas.ddr_info.sdram.ddr_type);
28 return dramc_params->dramc_datas.ddr_info.sdram.ddr_type;
Xi Chene8c681c2021-03-03 17:58:07 +080029}
30
31void init_dram_by_params(struct dramc_param *dparam)
32{
33 dramc_params = dparam;
34 mt_set_emi(dramc_params);
35}