| /openbmc/u-boot/arch/arm/mach-keystone/ |
| H A D | ddr3_spd.c | 159 static int ddrtimingcalculation(ddr3_spd_eeprom_t *buf, struct ddr3_sodimm *spd, in ddrtimingcalculation() argument 168 spd->sdram_type = 0x03; in ddrtimingcalculation() 169 spd->ibank = 0x03; in ddrtimingcalculation() 173 spd->t_ck = buf->tck_min * mtb; in ddrtimingcalculation() 175 spd_cb->ddrspdclock = 2000000 / spd->t_ck; in ddrtimingcalculation() 178 spd->rank = ((buf->organization & 0x38) >> 3) + 1; in ddrtimingcalculation() 179 if (spd->rank > 2) in ddrtimingcalculation() 182 spd->pagesize = (buf->addressing & 0x07) + 1; in ddrtimingcalculation() 183 if (spd->pagesize > 3) in ddrtimingcalculation() 186 spd->buswidth = 8 << (buf->bus_width & 0x7); in ddrtimingcalculation() [all …]
|
| /openbmc/u-boot/drivers/ddr/fsl/ |
| H A D | ddr4_dimm_params.c | 86 compute_ranksize(const struct ddr4_spd_eeprom_s *spd) in compute_ranksize() argument 96 if ((spd->density_banks & 0xf) <= 7) in compute_ranksize() 97 nbit_sdram_cap_bsize = (spd->density_banks & 0xf) + 28; in compute_ranksize() 98 if ((spd->bus_width & 0x7) < 4) in compute_ranksize() 99 nbit_primary_bus_width = (spd->bus_width & 0x7) + 3; in compute_ranksize() 100 if ((spd->organization & 0x7) < 4) in compute_ranksize() 101 nbit_sdram_width = (spd->organization & 0x7) + 2; in compute_ranksize() 102 package_3ds = (spd->package_type & 0x3) == 0x2; in compute_ranksize() 103 if ((spd->package_type & 0x80) && !package_3ds) { /* other than 3DS */ in compute_ranksize() 108 die_count = (spd->package_type >> 4) & 0x7; in compute_ranksize() [all …]
|
| H A D | ddr3_dimm_params.c | 53 compute_ranksize(const ddr3_spd_eeprom_t *spd) in compute_ranksize() argument 61 if ((spd->density_banks & 0xf) < 7) in compute_ranksize() 62 nbit_sdram_cap_bsize = (spd->density_banks & 0xf) + 28; in compute_ranksize() 63 if ((spd->bus_width & 0x7) < 4) in compute_ranksize() 64 nbit_primary_bus_width = (spd->bus_width & 0x7) + 3; in compute_ranksize() 65 if ((spd->organization & 0x7) < 4) in compute_ranksize() 66 nbit_sdram_width = (spd->organization & 0x7) + 2; in compute_ranksize() 84 const ddr3_spd_eeprom_t *spd, in ddr_compute_dimm_parameters() argument 93 if (spd->mem_type) { in ddr_compute_dimm_parameters() 94 if (spd->mem_type != SPD_MEMTYPE_DDR3) { in ddr_compute_dimm_parameters() [all …]
|
| H A D | interactive.c | 891 void ddr1_spd_dump(const ddr1_spd_eeprom_t *spd) in ddr1_spd_dump() argument 895 printf("%-3d : %02x %s\n", 0, spd->info_size, in ddr1_spd_dump() 897 printf("%-3d : %02x %s\n", 1, spd->chip_size, in ddr1_spd_dump() 899 printf("%-3d : %02x %s\n", 2, spd->mem_type, in ddr1_spd_dump() 901 printf("%-3d : %02x %s\n", 3, spd->nrow_addr, in ddr1_spd_dump() 903 printf("%-3d : %02x %s\n", 4, spd->ncol_addr, in ddr1_spd_dump() 905 printf("%-3d : %02x %s\n", 5, spd->nrows, in ddr1_spd_dump() 907 printf("%-3d : %02x %s\n", 6, spd->dataw_lsb, in ddr1_spd_dump() 909 printf("%-3d : %02x %s\n", 7, spd->dataw_msb, in ddr1_spd_dump() 911 printf("%-3d : %02x %s\n", 8, spd->voltage, in ddr1_spd_dump() [all …]
|
| H A D | ddr2_dimm_params.c | 204 const ddr2_spd_eeprom_t *spd, in ddr_compute_dimm_parameters() argument 210 if (spd->mem_type) { in ddr_compute_dimm_parameters() 211 if (spd->mem_type != SPD_MEMTYPE_DDR2) { in ddr_compute_dimm_parameters() 220 retval = ddr2_spd_check(spd); in ddr_compute_dimm_parameters() 232 memcpy(pdimm->mpart, spd->mpart, sizeof(pdimm->mpart) - 1); in ddr_compute_dimm_parameters() 235 pdimm->n_ranks = (spd->mod_ranks & 0x7) + 1; in ddr_compute_dimm_parameters() 236 pdimm->rank_density = compute_ranksize(spd->mem_type, spd->rank_dens); in ddr_compute_dimm_parameters() 238 pdimm->data_width = spd->dataw; in ddr_compute_dimm_parameters() 239 pdimm->primary_sdram_width = spd->primw; in ddr_compute_dimm_parameters() 240 pdimm->ec_sdram_width = spd->ecw; in ddr_compute_dimm_parameters() [all …]
|
| H A D | ddr1_dimm_params.c | 221 const ddr1_spd_eeprom_t *spd, in ddr_compute_dimm_parameters() argument 227 if (spd->mem_type) { in ddr_compute_dimm_parameters() 228 if (spd->mem_type != SPD_MEMTYPE_DDR) { in ddr_compute_dimm_parameters() 237 retval = ddr1_spd_check(spd); in ddr_compute_dimm_parameters() 249 memcpy(pdimm->mpart, spd->mpart, sizeof(pdimm->mpart) - 1); in ddr_compute_dimm_parameters() 252 pdimm->n_ranks = spd->nrows; in ddr_compute_dimm_parameters() 253 pdimm->rank_density = compute_ranksize(spd->mem_type, spd->bank_dens); in ddr_compute_dimm_parameters() 255 pdimm->data_width = spd->dataw_lsb; in ddr_compute_dimm_parameters() 256 pdimm->primary_sdram_width = spd->primw; in ddr_compute_dimm_parameters() 257 pdimm->ec_sdram_width = spd->ecw; in ddr_compute_dimm_parameters() [all …]
|
| H A D | main.c | 84 static void __get_spd(generic_spd_eeprom_t *spd, u8 i2c_address) in __get_spd() argument 101 ret = i2c_read(i2c_address, 0, 1, (uchar *)spd, 256); in __get_spd() 105 (uchar *)((ulong)spd + 256), in __get_spd() 110 ret = i2c_read(i2c_address, 0, 1, (uchar *)spd, in __get_spd() 128 memset(spd, 0, sizeof(generic_spd_eeprom_t)); in __get_spd() 133 void get_spd(generic_spd_eeprom_t *spd, u8 i2c_address); 454 generic_spd_eeprom_t *spd = in fsl_ddr_compute() local 459 i, spd, pdimm, j); in fsl_ddr_compute()
|
| /openbmc/u-boot/arch/powerpc/cpu/mpc83xx/ |
| H A D | spd_sdram.c | 101 static void spd_debug(spd_eeprom_t *spd) in spd_debug() argument 103 printf ("\nDIMM type: %-18.18s\n", spd->mpart); in spd_debug() 104 printf ("SPD size: %d\n", spd->info_size); in spd_debug() 105 printf ("EEPROM size: %d\n", 1 << spd->chip_size); in spd_debug() 106 printf ("Memory type: %d\n", spd->mem_type); in spd_debug() 107 printf ("Row addr: %d\n", spd->nrow_addr); in spd_debug() 108 printf ("Column addr: %d\n", spd->ncol_addr); in spd_debug() 109 printf ("# of rows: %d\n", spd->nrows); in spd_debug() 110 printf ("Row density: %d\n", spd->row_dens); in spd_debug() 111 printf ("# of banks: %d\n", spd->nbanks); in spd_debug() [all …]
|
| /openbmc/u-boot/common/ |
| H A D | ddr_spd.c | 49 ddr1_spd_check(const ddr1_spd_eeprom_t *spd) in ddr1_spd_check() argument 51 const u8 *p = (const u8 *)spd; in ddr1_spd_check() 53 return spd_check(p, spd->spd_rev, spd->cksum); in ddr1_spd_check() 57 ddr2_spd_check(const ddr2_spd_eeprom_t *spd) in ddr2_spd_check() argument 59 const u8 *p = (const u8 *)spd; in ddr2_spd_check() 61 return spd_check(p, spd->spd_rev, spd->cksum); in ddr2_spd_check() 86 ddr3_spd_check(const ddr3_spd_eeprom_t *spd) in ddr3_spd_check() argument 88 char *p = (char *)spd; in ddr3_spd_check() 100 len = !(spd->info_size_crc & 0x80) ? 126 : 117; in ddr3_spd_check() 106 if (spd->crc[0] == crc_lsb && spd->crc[1] == crc_msb) { in ddr3_spd_check() [all …]
|
| /openbmc/qemu/hw/i2c/ |
| H A D | smbus_eeprom.c | 197 uint8_t *spd; in spd_data_generate() local 254 spd = g_malloc0(256); in spd_data_generate() 255 spd[0] = 128; /* data bytes in EEPROM */ in spd_data_generate() 256 spd[1] = 8; /* log2 size of EEPROM */ in spd_data_generate() 257 spd[2] = type; in spd_data_generate() 258 spd[3] = 13; /* row address bits */ in spd_data_generate() 259 spd[4] = 10; /* column address bits */ in spd_data_generate() 260 spd[5] = (type == DDR2 ? nbanks - 1 : nbanks); in spd_data_generate() 261 spd[6] = 64; /* module data width */ in spd_data_generate() 263 spd[8] = 4; /* interface voltage level */ in spd_data_generate() [all …]
|
| /openbmc/u-boot/board/xes/xpedite520x/ |
| H A D | ddr.c | 12 void get_spd(ddr2_spd_eeprom_t *spd, unsigned char i2c_address) in get_spd() argument 14 i2c_read(i2c_address, 0, 1, (uchar *)spd, sizeof(ddr2_spd_eeprom_t)); in get_spd() 20 if (spd->dimm_type == 0) { in get_spd() 21 spd->dimm_type = 0x4; in get_spd() 22 ((uchar *)spd)[63] += 0x4; in get_spd()
|
| /openbmc/u-boot/board/sbc8548/ |
| H A D | ddr.c | 63 void get_spd(generic_spd_eeprom_t *spd, u8 i2c_address) in get_spd() argument 69 ret = i2c_read(ALT_SPD_EEPROM_ADDRESS, 0, 1, (uchar *)spd, in get_spd() 73 memset(spd, 0, sizeof(generic_spd_eeprom_t)); in get_spd() 76 ret = i2c_read(i2c_address, 0, 1, (uchar *)spd, in get_spd() 80 memset(spd, 0, sizeof(generic_spd_eeprom_t)); in get_spd()
|
| /openbmc/u-boot/board/gdsys/p1022/ |
| H A D | ddr.c | 45 void get_spd(generic_spd_eeprom_t *spd, u8 i2c_address) in get_spd() argument 47 int ret = i2c_read(i2c_address, 0, 2, (uchar *)spd, in get_spd() 64 memset(spd, 0, sizeof(generic_spd_eeprom_t)); in get_spd()
|
| /openbmc/u-boot/drivers/usb/host/ |
| H A D | ehci-faraday.c | 38 int spd, ret = PORTSC_PSPD_HS; in faraday_ehci_get_port_speed() local 43 spd = OTGCSR_SPD(readl(®s->otg.otgcsr)); in faraday_ehci_get_port_speed() 45 spd = BMCSR_SPD(readl(®s->usb.bmcsr)); in faraday_ehci_get_port_speed() 47 switch (spd) { in faraday_ehci_get_port_speed()
|
| /openbmc/u-boot/board/freescale/common/ |
| H A D | pixis.h | 18 u8 spd; member 57 u8 spd; member 84 u8 spd; member 113 u8 spd; member 143 u8 spd; member
|
| /openbmc/u-boot/board/freescale/c29xpcie/ |
| H A D | ddr.c | 96 void get_spd(generic_spd_eeprom_t *spd, u8 i2c_address) in get_spd() argument 98 int ret = i2c_read(i2c_address, 0, 2, (uint8_t *)spd, in get_spd() 104 memset(spd, 0, sizeof(generic_spd_eeprom_t)); in get_spd()
|
| /openbmc/qemu/chardev/ |
| H A D | char-serial.c | 62 speed_t spd; in tty_serial_init() local 72 spd = B##val; \ in tty_serial_init() 134 spd = B115200; in tty_serial_init() 138 cfsetispeed(&tty, spd); in tty_serial_init() 139 cfsetospeed(&tty, spd); in tty_serial_init()
|
| /openbmc/u-boot/include/ |
| H A D | ddr_spd.h | 500 extern unsigned int ddr1_spd_check(const ddr1_spd_eeprom_t *spd); 501 extern void ddr1_spd_dump(const ddr1_spd_eeprom_t *spd); 502 extern unsigned int ddr2_spd_check(const ddr2_spd_eeprom_t *spd); 503 extern void ddr2_spd_dump(const ddr2_spd_eeprom_t *spd); 504 extern unsigned int ddr3_spd_check(const ddr3_spd_eeprom_t *spd); 505 unsigned int ddr4_spd_check(const struct ddr4_spd_eeprom_s *spd);
|
| H A D | fsl_ddr.h | 43 const generic_spd_eeprom_t *spd, in compute_dimm_parameters() argument 47 return ddr_compute_dimm_parameters(ctrl_num, spd, pdimm, dimm_number); in compute_dimm_parameters()
|
| H A D | fsl_ddr_dimm_params.h | 116 const generic_spd_eeprom_t *spd,
|
| /openbmc/u-boot/board/xes/xpedite537x/ |
| H A D | ddr.c | 13 void get_spd(ddr2_spd_eeprom_t *spd, u8 i2c_address) in get_spd() argument 15 i2c_read(i2c_address, SPD_EEPROM_OFFSET, 2, (uchar *)spd, in get_spd()
|
| /openbmc/u-boot/board/xes/xpedite550x/ |
| H A D | ddr.c | 13 void get_spd(ddr3_spd_eeprom_t *spd, u8 i2c_address) in get_spd() argument 15 i2c_read(i2c_address, SPD_EEPROM_OFFSET, 2, (uchar *)spd, in get_spd()
|
| /openbmc/u-boot/board/xes/xpedite517x/ |
| H A D | ddr.c | 12 void get_spd(ddr2_spd_eeprom_t *spd, u8 i2c_address) in get_spd() argument 14 i2c_read(i2c_address, SPD_EEPROM_OFFSET, 2, (uchar *)spd, in get_spd()
|
| /openbmc/qemu/hw/ppc/ |
| H A D | amigaone.c | 258 static void fix_spd_data(uint8_t *spd) in fix_spd_data() argument 260 uint32_t bank_size = 4 * MiB * spd[31]; in fix_spd_data() 261 uint32_t rows = bank_size / spd[13] / spd[17]; in fix_spd_data() 262 spd[3] = ctz32(rows) - spd[4]; in fix_spd_data()
|
| /openbmc/u-boot/doc/device-tree-bindings/misc/ |
| H A D | intel,baytrail-fsp.txt | 53 - fsp,mrc-init-spd-addr1 54 - fsp,mrc-init-spd-addr2 104 fsp,mrc-init-spd-addr1 = <0xa0>; 105 fsp,mrc-init-spd-addr2 = <0xa2>;
|