@ -3169,7 +3169,11 @@ static void mem_init_latency(void)
writel ( wlat , & phy_mgr_cfg - > afi_wlat ) ;
}
/* Set VFIFO and LFIFO to instant-on settings in skip calibration mode */
/**
* @ mem_skip_calibrate ( ) - Set VFIFO and LFIFO to instant - on settings
*
* Set VFIFO and LFIFO to instant - on settings in skip calibration mode .
*/
static void mem_skip_calibrate ( void )
{
uint32_t vfifo_offset ;
@ -3178,7 +3182,7 @@ static void mem_skip_calibrate(void)
debug ( " %s:%d \n " , __func__ , __LINE__ ) ;
/* Need to update every shadow register set used by the interface */
for ( r = 0 ; r < RW_MGR_MEM_NUMBER_OF_RANKS ;
r + = NUM_RANKS_PER_SHADOW_REG ) {
r + = NUM_RANKS_PER_SHADOW_REG ) {
/*
* Set output phase alignment settings appropriate for
* skip calibration .
@ -3215,8 +3219,8 @@ static void mem_skip_calibrate(void)
*
* ( 1.25 * IO_DLL_CHAIN_LENGTH - 2 )
*/
scc_mgr_set_dqdqs_output_phase ( i , ( 1.25 *
IO_DLL_CHAIN_LENGTH - 2 ) ) ;
scc_mgr_set_dqdqs_output_phase ( i ,
1.25 * IO_DLL_CHAIN_LENGTH - 2 ) ;
}
writel ( 0xff , & sdr_scc_mgr - > dqs_ena ) ;
writel ( 0xff , & sdr_scc_mgr - > dqs_io_ena ) ;
@ -3242,14 +3246,13 @@ static void mem_skip_calibrate(void)
* in sequencer .
*/
vfifo_offset = CALIB_VFIFO_OFFSET ;
for ( j = 0 ; j < vfifo_offset ; j + + ) {
for ( j = 0 ; j < vfifo_offset ; j + + )
writel ( 0xff , & phy_mgr_cmd - > inc_vfifo_hard_phy ) ;
}
writel ( 0 , & phy_mgr_cmd - > fifo_reset ) ;
/*
* For ACV with hard lfifo , we get the skip - cal setting from
* generation - time constant .
* For Arria V and Cyclone V with hard LFIFO , we get the skip - cal
* setting from generation - time constant .
*/
gbl - > curr_read_lat = CALIB_LFIFO_OFFSET ;
writel ( gbl - > curr_read_lat , & phy_mgr_cfg - > phy_rlat ) ;