Lines Matching full:vpd

208  *	VPD capability.  Note that this function must be called with a virtual
241 * VPD-R sections.
253 * the VPD
254 * @v: Pointer to buffered vpd data structure
296 * csio_hw_get_vpd_params - read VPD parameters from VPD EEPROM
300 * Reads card parameters stored in VPD EEPROM.
306 uint8_t *vpd, csum; in csio_hw_get_vpd_params() local
319 vpd = kzalloc(VPD_LEN, GFP_ATOMIC); in csio_hw_get_vpd_params()
320 if (vpd == NULL) in csio_hw_get_vpd_params()
327 ret = csio_hw_seeprom_read(hw, VPD_BASE, (uint32_t *)(vpd)); in csio_hw_get_vpd_params()
328 addr = *vpd == 0x82 ? VPD_BASE : VPD_BASE_OLD; in csio_hw_get_vpd_params()
331 ret = csio_hw_seeprom_read(hw, addr + i, (uint32_t *)(vpd + i)); in csio_hw_get_vpd_params()
333 kfree(vpd); in csio_hw_get_vpd_params()
338 /* Reset the VPD flag! */ in csio_hw_get_vpd_params()
341 v = (const struct t4_vpd_hdr *)vpd; in csio_hw_get_vpd_params()
346 csio_err(hw, "missing VPD keyword " name "\n"); \ in csio_hw_get_vpd_params()
347 kfree(vpd); \ in csio_hw_get_vpd_params()
354 csum += vpd[i]; in csio_hw_get_vpd_params()
357 csio_err(hw, "corrupted VPD EEPROM, actual csum %u\n", csum); in csio_hw_get_vpd_params()
358 kfree(vpd); in csio_hw_get_vpd_params()
367 memcpy(p->ec, vpd + ec, EC_LEN); in csio_hw_get_vpd_params()
369 i = vpd[sn - VPD_INFO_FLD_HDR_SIZE + 2]; in csio_hw_get_vpd_params()
370 memcpy(p->sn, vpd + sn, min(i, SERNUM_LEN)); in csio_hw_get_vpd_params()
375 kfree(vpd); in csio_hw_get_vpd_params()
1405 hw->vpd.cclk = param[1]; in csio_get_device_params()
2521 /* Read vpd */ in csio_hw_configure()
2522 rv = csio_hw_get_vpd_params(hw, &hw->vpd); in csio_hw_configure()