Lines Matching refs:vpd
200 u32 clkdiv = adap->params.vpd.cclk / (2 * adap->params.vpd.mdc) - 1;
507 * VPD-R sections.
539 * t3_seeprom_read - read a VPD EEPROM location
544 * Read a 32-bit word from a location in VPD EEPROM using the card's PCI
545 * VPD ROM capability. A zero is written to the flag bit when the
574 * t3_seeprom_write - write a VPD EEPROM location
579 * Write a 32-bit word to a location in VPD EEPROM using the card's PCI
580 * VPD ROM capability.
628 * get_vpd_params - read VPD parameters from VPD EEPROM
632 * Reads card parameters stored in VPD EEPROM.
637 struct t3_vpd vpd;
643 ret = t3_seeprom_read(adapter, VPD_BASE, (u32 *)&vpd);
646 addr = vpd.id_tag == 0x82 ? VPD_BASE : 0;
648 for (i = 0; i < sizeof(vpd); i += 4) {
650 (u32 *)((u8 *)&vpd + i));
655 p->cclk = simple_strtoul(vpd.cclk_data, NULL, 10);
656 p->mclk = simple_strtoul(vpd.mclk_data, NULL, 10);
657 p->uclk = simple_strtoul(vpd.uclk_data, NULL, 10);
658 p->mdc = simple_strtoul(vpd.mdc_data, NULL, 10);
659 p->mem_timing = simple_strtoul(vpd.mt_data, NULL, 10);
660 memcpy(p->sn, vpd.sn_data, SERNUM_LEN);
663 if (adapter->params.rev == 0 && !vpd.port0_data[0]) {
667 p->port_type[0] = (u8)hex2int(vpd.port0_data[0]);
668 p->port_type[1] = (u8)hex2int(vpd.port1_data[0]);
669 p->port_type[2] = (u8)hex2int(vpd.port2_data[0]);
670 p->port_type[3] = (u8)hex2int(vpd.port3_data[0]);
671 p->xauicfg[0] = simple_strtoul(vpd.xaui0cfg_data, NULL, 16);
672 p->xauicfg[1] = simple_strtoul(vpd.xaui1cfg_data, NULL, 16);
676 p->eth_base[i] = hex2int(vpd.na_data[2 * i]) * 16 +
677 hex2int(vpd.na_data[2 * i + 1]);
2996 unsigned int clk = adap->params.vpd.cclk * 1000;
3083 v = (adap->params.vpd.cclk * 1000) / cpt;
3113 tp_set_timers(adap, adap->params.vpd.cclk * 1000);
3437 const struct vpd_params *vpd = &adapter->params.vpd;
3447 if (vpd->mclk) {
3450 if (mc7_init(&adapter->pmrx, vpd->mclk, vpd->mem_timing) ||
3451 mc7_init(&adapter->pmtx, vpd->mclk, vpd->mem_timing) ||
3452 mc7_init(&adapter->cm, vpd->mclk, vpd->mem_timing) ||
3481 t3_write_reg(adapter, A_CIM_HOST_ACC_DATA, vpd->uclk | fw_params);
3632 V_I2C_CLKDIV(adapter->params.vpd.cclk / 80 - 1));
3716 ret = get_vpd_params(adapter, &adapter->params.vpd);
3725 if (adapter->params.vpd.mclk) {
3744 p->tre = fls(adapter->params.vpd.cclk / (1000 / TP_TMR_RES)) -
3746 p->dack_re = fls(adapter->params.vpd.cclk / 10) - 1; /* 100us */
3776 while (!adapter->params.vpd.port_type[j])
3779 p->port_type = &port_types[adapter->params.vpd.port_type[j]];
3786 * The VPD EEPROM stores the base Ethernet address for the
3790 memcpy(hw_addr, adapter->params.vpd.eth_base, 5);
3791 hw_addr[5] = adapter->params.vpd.eth_base[5] + i;