Lines Matching refs:fcChip

126 static int verify_PLOGI(PTACHYON fcChip, TachFCHDR_GCMND * fchs, u32 * reject_explain);
129 static void LoadWWN(PTACHYON fcChip, u8 * dest, u8 type);
130 static void BuildLinkServicePayload(PTACHYON fcChip, u32 type, void *payload);
134 static void cpqfcTSCheckandSnoopFCP(PTACHYON fcChip, u32 x_ID);
149 PTACHYON fcChip = &dev->fcChip; in cpqfcTSWorkerThread() local
256 PTACHYON fcChip = &dev->fcChip; in FreezeTach() local
262 if ((fcChip->Registers.TYstatus.value & 0x70000) != 0x70000) { // (need to freeze...) in FreezeTach()
263 fcChip->FreezeTachyon(fcChip, 2); // both ERQ and FCP assists in FreezeTach()
286 PTACHYON fcChip = &dev->fcChip; in cpqfcTS_WorkTask() local
287 FC_EXCHANGES *Exchanges = fcChip->Exchanges; in cpqfcTS_WorkTask()
354 if (fcChip->Options.initiator) in cpqfcTS_WorkTask()
508 fcChip->SEST->u[x_ID].IWE.Hdr_Len &= 0x7FFFFFFF; in cpqfcTS_WorkTask()
526 fcChip->UnFreezeTachyon(fcChip, 2); // both ERQ and FCP assists in cpqfcTS_WorkTask()
551 if (((fcChip->Registers.FMstatus.value & 0xF0) & 0x80)) // loop init? in cpqfcTS_WorkTask()
573 fcChip->fcStats.FC2aborted++; in cpqfcTS_WorkTask()
592 cpqfcTSCompleteExchange(dev->PciDev, fcChip, x_ID); in cpqfcTS_WorkTask()
603 fcChip->FreezeTachyon(fcChip, 2); // both ERQ and FCP assists in cpqfcTS_WorkTask()
620 fcChip->SEST->u[ExchangeID].IWE.Hdr_Len &= 0x7FFFFFFF; in cpqfcTS_WorkTask()
627 fcChip->UnFreezeTachyon(fcChip, 2); // both ERQ and FCP assists in cpqfcTS_WorkTask()
706 PTACHYON fcChip = &dev->fcChip; in cpqfcTSPutLinkQue() local
725 fcChip->fcStats.lnkQueFull++; in cpqfcTSPutLinkQue()
728 TriggerHBA(fcChip->Registers.ReMapMemBase, 1); in cpqfcTSPutLinkQue()
863 PTACHYON fcChip = &dev->fcChip; in cpqfcTSImplicitLogout() local
867 fcChip->fcStats.logouts++; in cpqfcTSImplicitLogout()
896 PTACHYON fcChip = &dev->fcChip; in TestDuplicatePortId() local
898 PFC_LOGGEDIN_PORT pOtherPortWithPortId = fcChip->fcPorts.pNextPort; in TestDuplicatePortId()
917 PTACHYON fcChip = &dev->fcChip; in CreateFcPort() local
945 fcChip->fcPorts.ScsiNexus.target = -1; // don't use "stub" in CreateFcPort()
986 PTACHYON fcChip = &dev->fcChip; in cpqfcTSTerminateExchange() local
987 FC_EXCHANGES *Exchanges = fcChip->Exchanges; in cpqfcTSTerminateExchange()
1024 PTACHYON fcChip = &dev->fcChip; in ProcessELS_Request() local
1038 if (!verify_PLOGI(fcChip, fchs, &ls_reject_code)) // valid payload? in ProcessELS_Request()
1049 pLoggedInPort = fcFindLoggedInPort(fcChip, NULL, // don't search Scsi Nexus in ProcessELS_Request()
1117 if (!verify_PLOGI(fcChip, fchs, &ls_reject_code)) // valid payload? in ProcessELS_Request()
1128 pLoggedInPort = fcFindLoggedInPort(fcChip, NULL, // don't search Scsi Nexus in ProcessELS_Request()
1180 pLoggedInPort = fcFindLoggedInPort(fcChip, NULL, // don't search Scsi Nexus in ProcessELS_Request()
1236 pLoggedInPort = fcFindLoggedInPort(fcChip, NULL, // don't search Scsi Nexus in ProcessELS_Request()
1249 if (fcChip->Options.initiator) { in ProcessELS_Request()
1351 PTACHYON fcChip = &dev->fcChip; in ProcessELS_Reply() local
1352 FC_EXCHANGES *Exchanges = fcChip->Exchanges; in ProcessELS_Reply()
1384 if (!verify_PLOGI(fcChip, fchs, &ls_reject_code)) { in ProcessELS_Reply()
1389 pLoggedInPort = fcFindLoggedInPort(fcChip, NULL, // don't search Scsi Nexus in ProcessELS_Reply()
1442 if (!verify_PLOGI(fcChip, fchs, &ls_reject_code)) { in ProcessELS_Reply()
1450 pLoggedInPort = fcFindLoggedInPort(fcChip, NULL, // don't search Scsi Nexus in ProcessELS_Reply()
1527 pLoggedInPort = fcFindLoggedInPort(fcChip, NULL, // don't search Scsi Nexus in ProcessELS_Reply()
1567 fcChip->Registers.my_al_pa = (fchs->d_id & 0xFFFFFF); in ProcessELS_Reply()
1568 writel(fcChip->Registers.my_al_pa, fcChip->Registers.ReMapMemBase + TL_MEM_TACH_My_ID); in ProcessELS_Reply()
1594 cpqfcTSCompleteExchange(dev->PciDev, fcChip, (fchs->ox_rx_id >> 16)); in ProcessELS_Reply()
1610 PTACHYON fcChip = &dev->fcChip; in ProcessFCS_Reply() local
1611 FC_EXCHANGES *Exchanges = fcChip->Exchanges; in ProcessFCS_Reply()
1635 PFC_LOGGEDIN_PORT pLoggedInPort = &fcChip->fcPorts; in ProcessFCS_Reply()
1670 cpqfcTSCompleteExchange(dev->PciDev, fcChip, (fchs->ox_rx_id >> 16)); in ProcessFCS_Reply()
1678 PTACHYON fcChip = &dev->fcChip; in AnalyzeIncomingFrame() local
1679 FC_EXCHANGES *Exchanges = fcChip->Exchanges; in AnalyzeIncomingFrame()
1732 memcpy(fcChip->LILPmap, &fchs->pl[1], 32 * 4); // 32 DWORDs in AnalyzeIncomingFrame()
1733 fcChip->Options.LILPin = 1; // our LILPmap is valid! in AnalyzeIncomingFrame()
1787 …if (Exchanges->fcExchange[ExchangeID].type && !(fcChip->SEST->u[ExchangeID].IWE.Hdr_Len & 0x800000… in AnalyzeIncomingFrame()
1788 cpqfcTSCompleteExchange(dev->PciDev, fcChip, ExchangeID); in AnalyzeIncomingFrame()
1790 …printk("Unexpected ABTS ReJecT! SEST[%X] Dword 0: %Xh\n", ExchangeID, fcChip->SEST->u[ExchangeID].… in AnalyzeIncomingFrame()
1818 cpqfcTSCompleteExchange(dev->PciDev, fcChip, ExchangeID); in AnalyzeIncomingFrame()
1854 cpqfcTSCompleteExchange(dev->PciDev, fcChip, ExchangeID); in AnalyzeIncomingFrame()
1874 PTACHYON fcChip = &dev->fcChip; in SendLogins() local
1875 FC_EXCHANGES *Exchanges = fcChip->Exchanges; in SendLogins()
1926 if (fcChip->Options.LILPin) { in SendLogins()
1932 i = fcChip->LILPmap[0] >= (32 * 4) ? 32 * 4 : fcChip->LILPmap[0]; in SendLogins()
1936 PortIds[j] = fcChip->LILPmap[1 + j]; in SendLogins()
1960 if ((fchs.s_id & 0xFF) == (fcChip->Registers.my_al_pa & 0xFF)) in SendLogins()
1963 if ((fchs.s_id == 0) || (fcChip->Options.fabric == 1)) { in SendLogins()
1964 fcChip->Options.flogi = 1; // fabric needs longer for login in SendLogins()
1966 pLoggedInPort = fcFindLoggedInPort(fcChip, NULL, // don't search SCSI Nexus in SendLogins()
1997 fcChip->Registers.my_al_pa &= 0xFF; // only use ALPA for FLOGI in SendLogins()
1998 writel(fcChip->Registers.my_al_pa | 0x0100, fcChip->Registers.ReMapMemBase + TL_MEM_TACH_My_ID); in SendLogins()
2006 pLoggedInPort = fcFindLoggedInPort(fcChip, NULL, // don't search SCSI Nexus in SendLogins()
2063 if (fcChip->Registers.FMstatus.value & 0x080) // LDn during Port Disc. in SendLogins()
2079 cpqfcTSCompleteExchange(dev->PciDev, fcChip, ExchangeID); in SendLogins()
2098 fcChip->Registers.ed_tov.value = 0x006501f5L; in SendLogins()
2099 writel(fcChip->Registers.ed_tov.value, (fcChip->Registers.ed_tov.address)); in SendLogins()
2102 writel(0x00000010, fcChip->Registers.ReMapMemBase + TL_MEM_FM_TIMEOUT2); in SendLogins()
2116 PTACHYON fcChip = &dev->fcChip; in ScsiReportLunsDone() local
2117 FC_EXCHANGES *Exchanges = fcChip->Exchanges; in ScsiReportLunsDone()
2144 pLoggedInPort = fcFindLoggedInPort(fcChip, NULL, // DON'T search Scsi Nexus (we will set it) in ScsiReportLunsDone()
2312 PTACHYON fcChip = &dev->fcChip; in IssueReportLunsCommand() local
2325 pLoggedInPort = fcFindLoggedInPort(fcChip, NULL, // DON'T search Scsi Nexus in IssueReportLunsCommand()
2405 PTACHYON fcChip = &dev->fcChip; in cpqfcTSheartbeat() local
2406 FC_EXCHANGES *Exchanges = fcChip->Exchanges; in cpqfcTSheartbeat()
2407 PFC_LOGGEDIN_PORT pLoggedInPort = &fcChip->fcPorts; in cpqfcTSheartbeat()
2497 cpqfcTSCompleteExchange(dev->PciDev, fcChip, i); // Don't "abort" LinkService in cpqfcTSheartbeat()
2522 pLoggedInPort = fcFindLoggedInPort(fcChip, Exchanges->fcExchange[i].Cmnd, // find Scsi Nexus in cpqfcTSheartbeat()
2641 PFC_LOGGEDIN_PORT fcFindLoggedInPort(PTACHYON fcChip, Scsi_Cmnd * Cmnd, // search linked list for S… in fcFindLoggedInPort() argument
2646 PFC_LOGGEDIN_PORT pLoggedInPort = &fcChip->fcPorts; in fcFindLoggedInPort()
2754 PTACHYON fcChip = &dev->fcChip; in RevalidateSEST() local
2755 FC_EXCHANGES *Exchanges = fcChip->Exchanges; in RevalidateSEST()
2773 fcChip->SEST->u[x_ID].IWE.Hdr_Len |= 0x80000000; // set VAL bit in RevalidateSEST()
2778 fcChip->UnFreezeTachyon(fcChip, 2); // both ERQ and FCP assists in RevalidateSEST()
2949 static void BuildLinkServicePayload(PTACHYON fcChip, u32 type, void *payload) in BuildLinkServicePayload() argument
2979 plogi->cmn_services.lowest_ver = fcChip->lowest_FCPH_ver; in BuildLinkServicePayload()
2980 plogi->cmn_services.highest_ver = fcChip->highest_FCPH_ver; in BuildLinkServicePayload()
2986 LoadWWN(fcChip, plogi->port_name, 0); in BuildLinkServicePayload()
2989 LoadWWN(fcChip, plogi->node_name, 1); in BuildLinkServicePayload()
3084 logo->n_port_identifier[0] = (u8) (fcChip->Registers.my_al_pa); in BuildLinkServicePayload()
3085 logo->n_port_identifier[1] = (u8) (fcChip->Registers.my_al_pa >> 8); in BuildLinkServicePayload()
3086 logo->n_port_identifier[2] = (u8) (fcChip->Registers.my_al_pa >> 16); in BuildLinkServicePayload()
3089 LoadWWN(fcChip, logo->port_name, 0); in BuildLinkServicePayload()
3133 if (fcChip->Options.initiator) in BuildLinkServicePayload()
3135 if (fcChip->Options.target) in BuildLinkServicePayload()
3149 void LoadWWN(PTACHYON fcChip, u8 * dest, u8 type) in LoadWWN() argument
3155 bPtr = (u8 *) & fcChip->Registers.wwn_hi; in LoadWWN()
3158 bPtr = (u8 *) & fcChip->Registers.wwn_lo; in LoadWWN()
3163 bPtr = (u8 *) & fcChip->Registers.wwn_hi; in LoadWWN()
3166 bPtr = (u8 *) & fcChip->Registers.wwn_lo; in LoadWWN()
3177 int verify_PLOGI(PTACHYON fcChip, TachFCHDR_GCMND * fchs, u32 * reject_explain) in verify_PLOGI() argument
3188 …if (login.cmn_services.highest_ver < fcChip->lowest_FCPH_ver || login.cmn_services.lowest_ver > fc… in verify_PLOGI()
3251 static void buildFCPstatus(PTACHYON fcChip, u32 ExchangeID);
3252 static s32 FindFreeExchange(PTACHYON fcChip, u32 type);
3340 PTACHYON fcChip = &dev->fcChip; in cpqfcTSBuildExchange() local
3341 FC_EXCHANGES *Exchanges = fcChip->Exchanges; in cpqfcTSBuildExchange()
3364 if (!fcChip->ERQ) // NULL ptr means uninitialized Tachlite chip in cpqfcTSBuildExchange()
3392 *fcExchangeIndex = FindFreeExchange(fcChip, type); in cpqfcTSBuildExchange()
3402 …Exchanges->fcExchange[*fcExchangeIndex].pLoggedInPort = fcFindLoggedInPort(fcChip, Exchanges->fcEx… in cpqfcTSBuildExchange()
3420 CMDfchs->s_id = fcChip->Registers.my_al_pa; // CS_CTL = 0 in cpqfcTSBuildExchange()
3548 BuildLinkServicePayload(fcChip, type, &CMDfchs->pl[0]); in cpqfcTSBuildExchange()
3599 BuildLinkServicePayload(fcChip, type, &CMDfchs->pl[0]); in cpqfcTSBuildExchange()
3644 BuildLinkServicePayload(fcChip, type, &CMDfchs->pl[0]); in cpqfcTSBuildExchange()
3682 dataHDR = &fcChip->SEST->DataHDR[*fcExchangeIndex]; in cpqfcTSBuildExchange()
3686 dataHDR->s_id = fcChip->Registers.my_al_pa; // CS_CTL = 0 in cpqfcTSBuildExchange()
3695 pIWE = &fcChip->SEST->u[*fcExchangeIndex].IWE; in cpqfcTSBuildExchange()
3720 …pIWE->Hdr_Addr = fcChip->SEST->base + ((unsigned long) &fcChip->SEST->DataHDR[*fcExchangeIndex] - … in cpqfcTSBuildExchange()
3725 …memset(&fcChip->SEST->RspHDR[*fcExchangeIndex].pl, 0, sizeof(FCP_STATUS_RESPONSE)); // clear out p… in cpqfcTSBuildExchange()
3727 …pIWE->RSP_Addr = fcChip->SEST->base + ((unsigned long) &fcChip->SEST->RspHDR[*fcExchangeIndex] - (… in cpqfcTSBuildExchange()
3735 &fcChip->SEST->sgPages[*fcExchangeIndex]); // (for Freeing later) in cpqfcTSBuildExchange()
3805 pIRE = &fcChip->SEST->u[*fcExchangeIndex].IRE; in cpqfcTSBuildExchange()
3814 …pIRE->RSP_Addr = fcChip->SEST->base + ((unsigned long) &fcChip->SEST->RspHDR[*fcExchangeIndex] - (… in cpqfcTSBuildExchange()
3822 &fcChip->SEST->sgPages[*fcExchangeIndex]); // (for Freeing later) in cpqfcTSBuildExchange()
3882 rspHDR = &fcChip->SEST->RspHDR[*fcExchangeIndex]; in cpqfcTSBuildExchange()
3886 rspHDR->s_id = fcChip->Registers.my_al_pa; // CS_CTL = 0 in cpqfcTSBuildExchange()
3895 pTWE = &fcChip->SEST->u[*fcExchangeIndex].TWE; in cpqfcTSBuildExchange()
3910 &fcChip->SEST->sgPages[*fcExchangeIndex]); // (for Freeing later) in cpqfcTSBuildExchange()
3949 dataHDR = &fcChip->SEST->DataHDR[*fcExchangeIndex]; in cpqfcTSBuildExchange()
3954 dataHDR->s_id = fcChip->Registers.my_al_pa; // CS_CTL = 0 in cpqfcTSBuildExchange()
3966 rspHDR = &fcChip->SEST->RspHDR[*fcExchangeIndex]; in cpqfcTSBuildExchange()
3971 rspHDR->s_id = fcChip->Registers.my_al_pa; // CS_CTL = 0 in cpqfcTSBuildExchange()
3979 pTRE = &fcChip->SEST->u[*fcExchangeIndex].TRE; in cpqfcTSBuildExchange()
3984fcChip->SEST->base + ((unsigned long) &fcChip->SEST->DataHDR[*fcExchangeIndex] - (unsigned long) f… in cpqfcTSBuildExchange()
3989fcChip->SEST->base + ((unsigned long) &fcChip->SEST->RspHDR[*fcExchangeIndex] - (unsigned long) fc… in cpqfcTSBuildExchange()
3997 &fcChip->SEST->sgPages[*fcExchangeIndex]); // (for Freeing later) in cpqfcTSBuildExchange()
4038 fcChip->SEST->RspHDR[*fcExchangeIndex].ox_rx_id = CMDfchs->ox_rx_id; in cpqfcTSBuildExchange()
4042 buildFCPstatus(fcChip, *fcExchangeIndex); // set RSP payload fields in cpqfcTSBuildExchange()
4045 &fcChip->SEST->RspHDR[*fcExchangeIndex], sizeof(TachFCHDR_RSP)); in cpqfcTSBuildExchange()
4063 fcChip->exch_dma_handle + (unsigned long) CMDfchs - (unsigned long) Exchanges; in cpqfcTSBuildExchange()
4077 cpqfcTSCompleteExchange(dev->PciDev, fcChip, *fcExchangeIndex); // SEST build failed in cpqfcTSBuildExchange()
4088 static void buildFCPstatus(PTACHYON fcChip, u32 ExchangeID) in buildFCPstatus() argument
4090 FC_EXCHANGES *Exchanges = fcChip->Exchanges; in buildFCPstatus()
4094 memset(&fcChip->SEST->RspHDR[ExchangeID].pl, 0, sizeof(FCP_STATUS_RESPONSE)); in buildFCPstatus()
4098 & fcChip->SEST->RspHDR[ExchangeID].pl; in buildFCPstatus()
4515 PTACHYON fcChip = &dev->fcChip; in cpqfcTSStartExchange() local
4516 FC_EXCHANGES *Exchanges = fcChip->Exchanges; in cpqfcTSStartExchange()
4531 if (fcChip->Registers.FMstatus.value & 0x80) // LPSM offline? in cpqfcTSStartExchange()
4533 …printk("fcStartExchange: PSM offline (%Xh), x_ID %Xh, type %Xh, port_id %Xh\n", fcChip->Registers.… in cpqfcTSStartExchange()
4557 producer = (u16) fcChip->ERQ->producerIndex; // copies for logical arith. in cpqfcTSStartExchange()
4558 consumer = (u16) fcChip->ERQ->consumerIndex; in cpqfcTSStartExchange()
4568 ErqIndex = (u16) fcChip->ERQ->producerIndex; in cpqfcTSStartExchange()
4569 fcChip->ERQ->producerIndex = producer; // this is written to Tachyon in cpqfcTSStartExchange()
4601 fcChip->SEST->DataHDR[ExchangeID].ox_rx_id = pExchange->fchs.ox_rx_id; in cpqfcTSStartExchange()
4662 fcChip->SEST->DataHDR[ExchangeID].ox_rx_id |= ExchangeID; in cpqfcTSStartExchange()
4663 fcChip->SEST->RspHDR[ExchangeID].ox_rx_id = fcChip->SEST->DataHDR[ExchangeID].ox_rx_id; in cpqfcTSStartExchange()
4667 pExchange->fchs.ox_rx_id = fcChip->SEST->DataHDR[ExchangeID].ox_rx_id; in cpqfcTSStartExchange()
4699 memcpy(&fcChip->ERQ->QEntry[ErqIndex], // dest. in cpqfcTSStartExchange()
4704 writel(fcChip->ERQ->producerIndex, fcChip->Registers.ERQproducerIndex.address); in cpqfcTSStartExchange()
4727 cpqfcTSCompleteExchange(dev->PciDev, fcChip, ExchangeID); in cpqfcTSStartExchange()
4737 cpqfcTSCompleteExchange(dev->PciDev, fcChip, ExchangeID); in cpqfcTSStartExchange()
4778 static s32 FindFreeExchange(PTACHYON fcChip, u32 type) in FindFreeExchange() argument
4780 FC_EXCHANGES *Exchanges = fcChip->Exchanges; in FindFreeExchange()
4787 if (fcChip->fcSestExchangeLRU >= TACH_SEST_LEN) // rollover? in FindFreeExchange()
4788 fcChip->fcSestExchangeLRU = 0; in FindFreeExchange()
4789 i = fcChip->fcSestExchangeLRU; // typically it's already free! in FindFreeExchange()
4812 if (i == fcChip->fcSestExchangeLRU) // wrapped-around array? in FindFreeExchange()
4819 fcChip->fcSestExchangeLRU = i + 1; // next! (rollover check next pass) in FindFreeExchange()
4824 if (fcChip->fcLsExchangeLRU >= TACH_MAX_XID || // range check in FindFreeExchange()
4825 fcChip->fcLsExchangeLRU < TACH_SEST_LEN) // (e.g. startup) in FindFreeExchange()
4826 fcChip->fcLsExchangeLRU = TACH_SEST_LEN; in FindFreeExchange()
4828 i = fcChip->fcLsExchangeLRU; // typically it's already free! in FindFreeExchange()
4850 if (i == fcChip->fcLsExchangeLRU) // wrapped-around array? in FindFreeExchange()
4857 fcChip->fcLsExchangeLRU = i + 1; // next! (rollover check next pass) in FindFreeExchange()
4870 static void cpqfc_pci_unmap_extended_sg(struct pci_dev *pcidev, PTACHYON fcChip, u32 x_ID) in cpqfc_pci_unmap_extended_sg() argument
4877 if (!USES_EXTENDED_SGLIST(fcChip->SEST, x_ID)) in cpqfc_pci_unmap_extended_sg()
4881 for (i = fcChip->SEST->sgPages[x_ID]; i != NULL; i = i->next) in cpqfc_pci_unmap_extended_sg()
4886 void cpqfc_pci_unmap(struct pci_dev *pcidev, Scsi_Cmnd * cmd, PTACHYON fcChip, u32 x_ID) in cpqfc_pci_unmap() argument
4890 cpqfc_pci_unmap_extended_sg(pcidev, fcChip, x_ID); in cpqfc_pci_unmap()
4895 …pci_unmap_single(pcidev, fcChip->SEST->u[x_ID].IWE.GAddr1, cmd->request_bufflen, scsi_to_pci_dma_d… in cpqfc_pci_unmap()
4907 void cpqfcTSCompleteExchange(struct pci_dev *pcidev, PTACHYON fcChip, u32 x_ID) in cpqfcTSCompleteExchange() argument
4909 FC_EXCHANGES *Exchanges = fcChip->Exchanges; in cpqfcTSCompleteExchange()
4930 fcChip->fcStats.timeouts++; in cpqfcTSCompleteExchange()
4932 fcChip->fcStats.FC4aborted++; in cpqfcTSCompleteExchange()
4934 fcChip->fcStats.CntErrors++; in cpqfcTSCompleteExchange()
4936 fcChip->fcStats.linkFailTX++; in cpqfcTSCompleteExchange()
4938 fcChip->fcStats.linkFailRX++; in cpqfcTSCompleteExchange()
4940 fcChip->fcStats.CntErrors++; in cpqfcTSCompleteExchange()
4986 FCP_STATUS_RESPONSE *pFcpStatus = (PFCP_STATUS_RESPONSE) & fcChip->SEST->RspHDR[x_ID].pl; in cpqfcTSCompleteExchange()
5005 cpqfcTSCheckandSnoopFCP(fcChip, x_ID); // (will set ->result) in cpqfcTSCompleteExchange()
5072 fcChip->fcStats.ok++; in cpqfcTSCompleteExchange()
5073 cpqfcTSCheckandSnoopFCP(fcChip, x_ID); // (will set ->result) in cpqfcTSCompleteExchange()
5076 cpqfc_pci_unmap(pcidev, Exchanges->fcExchange[x_ID].Cmnd, fcChip, x_ID); // undo DMA mappings. in cpqfcTSCompleteExchange()
5108 cpqfc_pci_unmap(pcidev, Exchanges->fcExchange[x_ID].Cmnd, fcChip, x_ID); // undo DMA mappings. in cpqfcTSCompleteExchange()
5112 if (!(fcChip->SEST->u[x_ID].IWE.Buff_Off & 0x80000000)) { in cpqfcTSCompleteExchange()
5116 for (p = fcChip->SEST->sgPages[x_ID]; p != NULL; p = next) { in cpqfcTSCompleteExchange()
5120 fcChip->SEST->sgPages[x_ID] = NULL; in cpqfcTSCompleteExchange()
5144 void cpqfcTSCheckandSnoopFCP(PTACHYON fcChip, u32 x_ID) in cpqfcTSCheckandSnoopFCP() argument
5146 FC_EXCHANGES *Exchanges = fcChip->Exchanges; in cpqfcTSCheckandSnoopFCP()
5148 FCP_STATUS_RESPONSE *pFcpStatus = (PFCP_STATUS_RESPONSE) & fcChip->SEST->RspHDR[x_ID].pl; in cpqfcTSCheckandSnoopFCP()
5190 pLoggedInPort = fcFindLoggedInPort(fcChip, NULL, // DON'T search Scsi Nexus (we will set it) in cpqfcTSCheckandSnoopFCP()