coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
dramc_pi_basic_api.c File Reference
#include <device/mmio.h>
#include <delay.h>
#include <soc/emi.h>
#include <soc/spm.h>
#include <soc/dramc_register.h>
#include <soc/dramc_pi_api.h>
Include dependency graph for dramc_pi_basic_api.c:

Go to the source code of this file.

Functions

u8 get_freq_fsq (u8 freq)
 
static void dramc_sw_imp_cal_vref_sel (u8 term_option, u8 impcal_stage)
 
void dramc_sw_impedance_cal (const struct sdram_params *params, u8 term, struct dram_impedance *impedance)
 
void dramc_sw_impedance_save_reg (u8 freq_group, const struct dram_impedance *impedance)
 
static void transfer_pll_to_spm_control (void)
 
static void dramc_rx_input_delay_tracking (u8 chn)
 
static void dramc_hw_dqs_gating_tracking (u8 chn)
 
static void dramc_hw_gating_init (u8 chn)
 
static void dramc_impedance_tracking_enable (void)
 
static void dramc_phy_low_power_enable (u8 chn)
 
static void dramc_dummy_read_for_tracking_enable (u8 chn, u32 rk_num)
 
static void dramc_set_CKE_2_rank_independent (u8 chn)
 
static void dramc_pa_improve (u8 chn)
 
static void dramc_enable_dramc_dcm (void)
 
void dramc_runtime_config (u32 rk_num)
 

Function Documentation

◆ dramc_dummy_read_for_tracking_enable()

static void dramc_dummy_read_for_tracking_enable ( u8  chn,
u32  rk_num 
)
static

Definition at line 350 of file dramc_pi_basic_api.c.

References ch, clrbits32, clrsetbits32, setbits32, and write32().

Referenced by dramc_runtime_config().

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

◆ dramc_enable_dramc_dcm()

static void dramc_enable_dramc_dcm ( void  )
static

Definition at line 396 of file dramc_pi_basic_api.c.

References ch, CHANNEL_MAX, clrsetbits32, and setbits32.

Referenced by dramc_runtime_config().

Here is the caller graph for this function:

◆ dramc_hw_dqs_gating_tracking()

static void dramc_hw_dqs_gating_tracking ( u8  chn)
static

Definition at line 295 of file dramc_pi_basic_api.c.

References ch, clrbits32, and clrsetbits32.

Referenced by dramc_hw_gating_init().

Here is the caller graph for this function:

◆ dramc_hw_gating_init()

static void dramc_hw_gating_init ( u8  chn)
static

Definition at line 313 of file dramc_pi_basic_api.c.

References ch, clrbits32, dramc_hw_dqs_gating_tracking(), and setbits32.

Referenced by dramc_runtime_config().

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

◆ dramc_impedance_tracking_enable()

static void dramc_impedance_tracking_enable ( void  )
static

Definition at line 323 of file dramc_pi_basic_api.c.

References ch, CHANNEL_MAX, clrbits32, and setbits32.

Referenced by dramc_runtime_config().

Here is the caller graph for this function:

◆ dramc_pa_improve()

static void dramc_pa_improve ( u8  chn)
static

Definition at line 383 of file dramc_pi_basic_api.c.

References ch, clrbits32, and DRAM_DFS_SHUFFLE_MAX.

Referenced by dramc_runtime_config().

Here is the caller graph for this function:

◆ dramc_phy_low_power_enable()

static void dramc_phy_low_power_enable ( u8  chn)
static

Definition at line 338 of file dramc_pi_basic_api.c.

References ch, CHANNEL_A, clrbits32, clrsetbits32, and write32().

Referenced by dramc_runtime_config().

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

◆ dramc_runtime_config()

◆ dramc_rx_input_delay_tracking()

static void dramc_rx_input_delay_tracking ( u8  chn)
static

Definition at line 238 of file dramc_pi_basic_api.c.

References ch, clrbits32, clrsetbits32, RANK_0, RANK_MAX, setbits32, and write32().

Referenced by dramc_runtime_config().

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

◆ dramc_set_CKE_2_rank_independent()

static void dramc_set_CKE_2_rank_independent ( u8  chn)
static

Definition at line 370 of file dramc_pi_basic_api.c.

References ch, clrbits32, clrsetbits32, DRAM_DFS_SHUFFLE_MAX, and setbits32.

Referenced by dramc_runtime_config().

Here is the caller graph for this function:

◆ dramc_sw_imp_cal_vref_sel()

static void dramc_sw_imp_cal_vref_sel ( u8  term_option,
u8  impcal_stage 
)
static

◆ dramc_sw_impedance_cal()

void dramc_sw_impedance_cal ( const struct sdram_params params,
u8  term,
struct dram_impedance impedance 
)

◆ dramc_sw_impedance_save_reg()

void dramc_sw_impedance_save_reg ( u8  freq_group,
const struct dram_impedance impedance 
)

Definition at line 139 of file dramc_pi_basic_api.c.

References ch, clrsetbits32, dram_impedance::data, DRAMC_BROADCAST_OFF, DRAMC_BROADCAST_ON, dramc_set_broadcast(), FSP_0, get_freq_fsq(), ODT_OFF, ODT_ON, and SET32_BITFIELDS.

Here is the call graph for this function:

◆ get_freq_fsq()

◆ transfer_pll_to_spm_control()