phy_info->phy_id = buffer->Phy; 
phy_info->phy_id = buffer->PhyIdentifier; 
mptsas_sas_expander_pg1(MPT_ADAPTER *ioc, struct mptsas_phyinfo *phy_info,		u32 form, u32 form_specific){	ConfigExtendedPageHeader_t hdr;	CONFIGPARMS cfg;	SasExpanderPage1_t *buffer;	dma_addr_t dma_handle;	int error;	hdr.PageVersion = MPI_SASEXPANDER0_PAGEVERSION;	hdr.ExtPageLength = 0;	hdr.PageNumber = 1;	hdr.Reserved1 = 0;	hdr.Reserved2 = 0;	hdr.PageType = MPI_CONFIG_PAGETYPE_EXTENDED;	hdr.ExtPageType = MPI_CONFIG_EXTPAGETYPE_SAS_EXPANDER;	cfg.cfghdr.ehdr = &hdr;	cfg.physAddr = -1;	cfg.pageAddr = form + form_specific;	cfg.action = MPI_CONFIG_ACTION_PAGE_HEADER;	cfg.dir = 0;	/* read */	cfg.timeout = 10;	error = mpt_config(ioc, &cfg);	if (error)		goto out;	if (!hdr.ExtPageLength) {		error = -ENXIO;		goto out;	}	buffer = pci_alloc_consistent(ioc->pcidev, hdr.ExtPageLength * 4,				      &dma_handle);	if (!buffer) {		error = -ENOMEM;		goto out;	}	cfg.physAddr = dma_handle;	cfg.action = MPI_CONFIG_ACTION_PAGE_READ_CURRENT;	error = mpt_config(ioc, &cfg);	if (error)		goto out_free_consistent;	mptsas_print_expander_pg1(buffer);	/* save config data */	phy_info->phy_id = buffer->Phy;	phy_info->port_id = buffer->PhysicalPort;	phy_info->negotiated_link_rate = buffer->NegotiatedLinkRate;	phy_info->programmed_link_rate = buffer->ProgrammedLinkRate;	phy_info->hw_link_rate = buffer->HwLinkRate;	phy_info->identify.handle = le16_to_cpu(buffer->OwnerDevHandle);	phy_info->attached.handle = le16_to_cpu(buffer->AttachedDevHandle); out_free_consistent:	pci_free_consistent(ioc->pcidev, hdr.ExtPageLength * 4,			    buffer, dma_handle); out:	return error;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/024358eeafd44ecffd0e7a1002ef3ccc1d0acd4d/mptsas.c/clean/drivers/message/fusion/mptsas.c