10 #define EXTENSION_BUS_WIDTH_8BITS 8
14 u32 frequency,
u8 rank_per_dimm,
u8 channel_id,
u8 dimm_id,
15 const char *module_part_num,
size_t module_part_number_size,
16 const u8 *module_serial_num,
u16 data_width,
u32 vdd_voltage,
17 bool ecc_support,
u16 mod_id,
u8 mod_type)
27 if (vdd_voltage > 0xFFFF) {
36 module_part_number_size));
37 if (module_serial_num)
void * memcpy(void *dest, const void *src, size_t n)
uint8_t smbios_bus_width_to_spd_width(uint8_t ddr_type, uint16_t total_width, uint16_t data_width)
Convert the SMBIOS bit widths into an SPD encoded width.
Utilities for decoding DDR3 SPDs.
#define DIMM_INFO_SERIAL_SIZE
#define EXTENSION_BUS_WIDTH_8BITS
void dimm_info_fill(struct dimm_info *dimm, u32 dimm_capacity, u8 ddr_type, u32 frequency, u8 rank_per_dimm, u8 channel_id, u8 dimm_id, const char *module_part_num, size_t module_part_number_size, const u8 *module_serial_num, u16 data_width, u32 vdd_voltage, bool ecc_support, u16 mod_id, u8 mod_type)
char * strncpy(char *to, const char *from, int count)
If this table is filled and put in CBMEM, then these info in CBMEM will be used to generate smbios ty...
uint8_t module_part_number[DIMM_INFO_PART_NUMBER_SIZE]
uint8_t serial[DIMM_INFO_SERIAL_SIZE]