From bb9c90a2074ac0138a4d1083bf0d9f52a39b47d5 Mon Sep 17 00:00:00 2001 From: Patrick Rudolph Date: Sun, 29 May 2016 17:05:06 +0200 Subject: nb/intel: Factor out common MRC code Remove code duplication and use the common function store_current_mrc_cache instead. No functionality is changed. Tested on Sandybridge Lenovo T520. Change-Id: I4aa5463f1b1d5e1afbe44b4bfc659524d86204db Signed-off-by: Patrick Rudolph Reviewed-on: https://review.coreboot.org/15074 Reviewed-by: Aaron Durbin Tested-by: build bot (Jenkins) --- src/northbridge/intel/sandybridge/raminit.c | 25 ++----------------------- 1 file changed, 2 insertions(+), 23 deletions(-) (limited to 'src/northbridge/intel/sandybridge/raminit.c') diff --git a/src/northbridge/intel/sandybridge/raminit.c b/src/northbridge/intel/sandybridge/raminit.c index 1ed77ebd44..6bb77b2c6a 100644 --- a/src/northbridge/intel/sandybridge/raminit.c +++ b/src/northbridge/intel/sandybridge/raminit.c @@ -3938,31 +3938,10 @@ static void final_registers(ramctr_timing * ctrl) | 0xc); } -static void save_timings(ramctr_timing * ctrl) +static void save_timings(ramctr_timing *ctrl) { - struct mrc_data_container *mrcdata; - int output_len = ALIGN(sizeof (*ctrl), 16); - /* Save the MRC S3 restore data to cbmem */ - mrcdata = cbmem_add - (CBMEM_ID_MRCDATA, - output_len + sizeof(struct mrc_data_container)); - - printk(BIOS_DEBUG, "Relocate MRC DATA from %p to %p (%u bytes)\n", - ctrl, mrcdata, output_len); - - mrcdata->mrc_signature = MRC_DATA_SIGNATURE; - mrcdata->mrc_data_size = output_len; - mrcdata->reserved = 0; - memcpy(mrcdata->mrc_data, ctrl, sizeof (*ctrl)); - - /* Zero the unused space in aligned buffer. */ - if (output_len > sizeof (*ctrl)) - memset(mrcdata->mrc_data+sizeof (*ctrl), 0, - output_len - sizeof (*ctrl)); - - mrcdata->mrc_checksum = compute_ip_checksum(mrcdata->mrc_data, - mrcdata->mrc_data_size); + store_current_mrc_cache(ctrl, sizeof(*ctrl)); } static void restore_timings(ramctr_timing * ctrl) -- cgit v1.2.3