3 #ifndef _DRAMC_PI_API_MT8183_H
4 #define _DRAMC_PI_API_MT8183_H
10 #define DATLAT_TAP_NUMBER 32
11 #define HW_REG_SHUFFLE_MAX 4
13 #define DRAMC_BROADCAST_ON 0x1f
14 #define DRAMC_BROADCAST_OFF 0x0
15 #define TX_DQ_COARSE_TUNE_TO_FINE_TUNE_TAP 64
17 #define IMP_LP4X_TERM_VREF_SEL 0x1b
18 #define IMP_DRVP_LP4X_UNTERM_VREF_SEL 0x1a
19 #define IMP_DRVN_LP4X_UNTERM_VREF_SEL 0x16
20 #define IMP_TRACK_LP4X_UNTERM_VREF_SEL 0x1a
21 #define MR23_DEFAULT_VALUE 0x3f
22 #define CA_TRAINING_NUM 10
73 #define _SELPH_DQS_BITS(l, h) ((l << 0) | (l << 4) | (l << 8) | (l << 12) | \
74 (h << 16) | (h << 20) | (h << 24) | (h << 28))
105 u8 freq_group,
struct mr_value *mr,
bool run_dvfs);
static struct sdram_info params
void dramc_init(u32 channel, const struct mt8173_sdram_params *sdram_params)
void dramc_runtime_config(u32 channel, const struct mt8173_sdram_params *sdram_params)
void dramc_get_rank_size(u64 *dram_rank_size)
void dramc_sw_impedance_cal(const struct sdram_params *params, u8 term_option, struct dram_impedance *impedance)
int dramc_calibrate_all_channels(const struct sdram_params *pams, u8 freq_group, struct mr_value *mr, bool run_dvfs)
void dramc_apply_config_after_calibration(const struct mr_value *mr, u32 rk_num)
void dramc_cke_fix_onoff(enum cke_type option, u8 chn)
void get_dram_info_after_cal(u8 *density, u32 rk_num)
void dramc_hw_dqsosc(u8 chn, u32 rk_num)
void set_mrr_pinmux_mapping(void)
u32 dramc_get_broadcast(void)
void dramc_dqs_precalculation_preset(void)
void dramc_mode_reg_write(u8 chn, u8 mr_idx, u8 value)
#define _SELPH_DQS_BITS(l, h)
void cbt_mrr_pinmux_mapping(void)
void dramc_enable_phy_dcm(u8 chn, bool bEn)
void dramc_hw_gating_onoff(u8 chn, bool onoff)
void dramc_sw_impedance_save_reg(u8 freq_group, const struct dram_impedance *impedance)
u8 get_freq_fsq(u8 freq_group)
void dramc_apply_config_before_calibration(u8 freq_group, u32 cbt_mode)
void dramc_set_broadcast(u32 onoff)
Defines the SDRAM parameter structure.