diff --git a/drivers/ram/loongson/libmem_config.a b/drivers/ram/loongson/libmem_config.a index 148d7a64..b0bf5094 100644 Binary files a/drivers/ram/loongson/libmem_config.a and b/drivers/ram/loongson/libmem_config.a differ diff --git a/drivers/ram/loongson/ls_ddr4.c b/drivers/ram/loongson/ls_ddr4.c index d1c0c53a..9740bee2 100644 --- a/drivers/ram/loongson/ls_ddr4.c +++ b/drivers/ram/loongson/ls_ddr4.c @@ -143,10 +143,12 @@ void mm_feature_init(struct mc_setting *mc) mm_ctrl_info.table.str = 0; #endif #ifdef DDR3_MODE - mm_ctrl_info.vref.vref = 0x78; + mm_ctrl_info.vref.vref_range = 0x01; + mm_ctrl_info.vref.vref_value = 0x78; mm_ctrl_info.table.pda_mode = 0; #else - mm_ctrl_info.vref.vref = 0x50; + mm_ctrl_info.vref.vref_range = 0x00; + mm_ctrl_info.vref.vref_value = 0x50; mm_ctrl_info.table.pda_mode = 1; #endif mm_ctrl_info.table.signal_test = 0; diff --git a/drivers/ram/loongson/mem_ctrl.h b/drivers/ram/loongson/mem_ctrl.h index 1583c682..9bf2d4d7 100644 --- a/drivers/ram/loongson/mem_ctrl.h +++ b/drivers/ram/loongson/mem_ctrl.h @@ -207,7 +207,8 @@ typedef struct { typedef struct { char mc_vref_adjust; char ddr_vref_adjust; - uint8_t vref; + uint8_t vref_range; + uint8_t vref_value; uint8_t vref_init; uint8_t vref_bits_per; uint8_t vref_bit;