3 #ifndef CPU_SAMSUNG_EXYNOS5250_DMC_H
4 #define CPU_SAMSUNG_EXYNOS5250_DMC_H
196 #define DMC_INTERLEAVE_SIZE 0x1f
199 #define CONCONTROL_DFI_INIT_START_SHIFT 28
200 #define CONCONTROL_RD_FETCH_SHIFT 12
201 #define CONCONTROL_RD_FETCH_MASK (0x7 << CONCONTROL_RD_FETCH_SHIFT)
202 #define CONCONTROL_AREF_EN_SHIFT 5
205 #define PRECHCONFIG_TP_CNT_SHIFT 24
208 #define PWRDNCONFIG_DPWRDN_CYC_SHIFT 0
209 #define PWRDNCONFIG_DSREF_CYC_SHIFT 16
212 #define PHY_CON0_T_WRRDCMD_SHIFT 17
213 #define PHY_CON0_T_WRRDCMD_MASK (0x7 << PHY_CON0_T_WRRDCMD_SHIFT)
214 #define PHY_CON0_CTRL_DDR_MODE_SHIFT 11
217 #define PHY_CON1_RDLVL_RDDATA_ADJ_SHIFT 0
220 #define PHY_CON12_CTRL_START_POINT_SHIFT 24
221 #define PHY_CON12_CTRL_INC_SHIFT 16
222 #define PHY_CON12_CTRL_FORCE_SHIFT 8
223 #define PHY_CON12_CTRL_START_SHIFT 6
224 #define PHY_CON12_CTRL_START_MASK (1 << PHY_CON12_CTRL_START_SHIFT)
225 #define PHY_CON12_CTRL_DLL_ON_SHIFT 5
226 #define PHY_CON12_CTRL_DLL_ON_MASK (1 << PHY_CON12_CTRL_DLL_ON_SHIFT)
227 #define PHY_CON12_CTRL_REF_SHIFT 1
230 #define PHY_CON16_ZQ_MODE_DDS_SHIFT 24
231 #define PHY_CON16_ZQ_MODE_DDS_MASK (0x7 << PHY_CON16_ZQ_MODE_DDS_SHIFT)
233 #define PHY_CON16_ZQ_MODE_TERM_SHIFT 21
234 #define PHY_CON16_ZQ_MODE_TERM_MASK (0x7 << PHY_CON16_ZQ_MODE_TERM_SHIFT)
236 #define PHY_CON16_ZQ_MODE_NOTERM_MASK (1 << 19)
239 #define PHY_CON42_CTRL_BSTLEN_SHIFT 8
240 #define PHY_CON42_CTRL_BSTLEN_MASK (0xff << PHY_CON42_CTRL_BSTLEN_SHIFT)
242 #define PHY_CON42_CTRL_RDLAT_SHIFT 0
243 #define PHY_CON42_CTRL_RDLAT_MASK (0x1f << PHY_CON42_CTRL_RDLAT_SHIFT)
static struct exynos5_phy_control *const exynos_phy0_control
static struct exynos5_phy_control *const exynos_phy1_control
static struct exynos5_dmc *const exynos_dmc
struct mem_timings * get_mem_timings(void)
Get the correct memory timings for our selected memory type and speed.
check_member(exynos5_dmc, pmcnt3_ppc_a, 0xe140)
#define EXYNOS5_DMC_PHY0_BASE
#define EXYNOS5_DMC_PHY1_BASE
#define EXYNOS5_DMC_CTRL_BASE
unsigned char res24[0xdebc]
unsigned int qoscontrol12
unsigned int membaseconfig1
unsigned int brbqosconfig
unsigned int perev1config
unsigned int chipstatus_ch0
unsigned int wrlvl_config
unsigned int perevcontrol
unsigned int qoscontrol10
unsigned int perev0config
unsigned int membaseconfig0
unsigned int cntenc_ppc_a
unsigned int qoscontrol11
unsigned int intenc_ppc_a
unsigned int perev2config
unsigned int intens_ppc_a
unsigned int rdlvl_config
unsigned int cntens_ppc_a
unsigned char res20[0x14]
unsigned int qoscontrol15
unsigned int pmcnt0_ppc_a
unsigned int pmcnt2_ppc_a
unsigned int qoscontrol13
unsigned int chipstatus_ch1
unsigned int pmcnt3_ppc_a
unsigned int qoscontrol14
unsigned int wrtra_config
unsigned int brbrsvconfig
unsigned char res30[0xac]
unsigned int pmcnt1_ppc_a
unsigned int perev3config
unsigned int membaseconfig0
unsigned int frequency_mhz
unsigned int membaseconfig1
uint8_t gate_leveling_enable
unsigned int prechconfig_tp_cnt
uint8_t chips_per_channel
unsigned int timing_power
uint8_t lpddr3_ctrl_phy_reset
uint8_t chips_to_configure
unsigned int direct_cmd_msr[MEM_TIMINGS_MSR_COUNT]