3 #ifndef _SOC_CANNONLAKE_MEMCFG_INIT_H_
4 #define _SOC_CANNONLAKE_MEMCFG_INIT_H_
8 #include <fsp/soc_binding.h>
11 #define DQ_BITS_PER_DQS 8
14 #define NUM_DIMM_SLOT 4
19 #define DDR_NUM_PACKAGES 2
void cannonlake_memcfg_init(FSP_M_CONFIG *mem_cfg, const struct cnl_mb_cfg *cnl_cfg)
uint8_t dq_pins_interleaved
uint8_t dqs_map[DDR_NUM_CHANNELS][DQ_BITS_PER_DQS]
uint16_t rcomp_targets[5]
uint8_t dq_map[DDR_NUM_CHANNELS][6][DDR_NUM_PACKAGES]
struct spd_info spd[NUM_DIMM_SLOT]
uint16_t rcomp_resistor[3]
union spd_info::spd_data_by spd_spec
enum mem_info_read_type read_type
struct spd_by_pointer spd_data_ptr_info
uint8_t spd_smbus_address