coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
dmc_common.c File Reference
#include <device/mmio.h>
#include <delay.h>
#include <soc/clk.h>
#include <soc/dmc.h>
#include <soc/setup.h>
Include dependency graph for dmc_common.c:

Go to the source code of this file.

Macros

#define ZQ_INIT_TIMEOUT   10000
 

Functions

int dmc_config_zq (struct mem_timings *mem, struct exynos5_phy_control *phy0_ctrl, struct exynos5_phy_control *phy1_ctrl)
 
void update_reset_dll (struct exynos5_dmc *dmc, enum ddr_mode mode)
 
void dmc_config_mrs (struct mem_timings *mem, struct exynos5_dmc *dmc)
 
void dmc_config_prech (struct mem_timings *mem, struct exynos5_dmc *dmc)
 
void dmc_config_memory (struct mem_timings *mem, struct exynos5_dmc *dmc)
 

Macro Definition Documentation

◆ ZQ_INIT_TIMEOUT

#define ZQ_INIT_TIMEOUT   10000

Definition at line 12 of file dmc_common.c.

Function Documentation

◆ dmc_config_memory()

void dmc_config_memory ( struct mem_timings mem,
struct exynos5_dmc dmc 
)

◆ dmc_config_mrs()

void dmc_config_mrs ( struct mem_timings mem,
struct exynos5_dmc dmc 
)

◆ dmc_config_prech()

void dmc_config_prech ( struct mem_timings mem,
struct exynos5_dmc dmc 
)

Definition at line 139 of file dmc_common.c.

References chip, mem_timings::chips_per_channel, DIRECT_CMD_CHANNEL_SHIFT, DIRECT_CMD_CHIP_SHIFT, DIRECT_CMD_PALL, exynos5_dmc::directcmd, mem_timings::dmc_channels, mask, udelay(), and write32().

Referenced by ddr3_mem_ctrl_init().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ dmc_config_zq()

int dmc_config_zq ( struct mem_timings mem,
struct exynos5_phy_control phy0_ctrl,
struct exynos5_phy_control phy1_ctrl 
)

◆ update_reset_dll()

void update_reset_dll ( struct exynos5_dmc dmc,
enum ddr_mode  mode 
)

Definition at line 72 of file dmc_common.c.

References DDR_MODE_DDR3, DMC_CTRL_SHGATE, FP_RSYNC, MEM_TERM_EN, PHY_TERM_EN, exynos5_dmc::phycontrol0, read32(), val, and write32().

Referenced by ddr3_mem_ctrl_init().

Here is the call graph for this function:
Here is the caller graph for this function: