diff options
-rw-r--r-- | drivers/scsi/FlashPoint.c | 143 |
1 files changed, 71 insertions, 72 deletions
diff --git a/drivers/scsi/FlashPoint.c b/drivers/scsi/FlashPoint.c index 696f31c5df76..37ee2cb60d20 100644 --- a/drivers/scsi/FlashPoint.c +++ b/drivers/scsi/FlashPoint.c | |||
@@ -304,7 +304,7 @@ struct nvram_info { | |||
304 | #define MODEL_DW 4 | 304 | #define MODEL_DW 4 |
305 | 305 | ||
306 | 306 | ||
307 | typedef struct SCCBcard { | 307 | struct sccb_card { |
308 | struct sccb * currentSCCB; | 308 | struct sccb * currentSCCB; |
309 | struct sccb_mgr_info * cardInfo; | 309 | struct sccb_mgr_info * cardInfo; |
310 | 310 | ||
@@ -320,9 +320,8 @@ typedef struct SCCBcard { | |||
320 | struct nvram_info * pNvRamInfo; | 320 | struct nvram_info * pNvRamInfo; |
321 | struct sccb * discQ_Tbl[QUEUE_DEPTH]; | 321 | struct sccb * discQ_Tbl[QUEUE_DEPTH]; |
322 | 322 | ||
323 | }SCCBCARD; | 323 | }; |
324 | 324 | ||
325 | typedef struct SCCBcard *PSCCBcard; | ||
326 | 325 | ||
327 | 326 | ||
328 | #define F_TAG_STARTED 0x01 | 327 | #define F_TAG_STARTED 0x01 |
@@ -968,7 +967,7 @@ typedef struct SCCBscam_info { | |||
968 | 967 | ||
969 | static unsigned char FPT_sisyncn(unsigned long port, unsigned char p_card, unsigned char syncFlag); | 968 | static unsigned char FPT_sisyncn(unsigned long port, unsigned char p_card, unsigned char syncFlag); |
970 | static void FPT_ssel(unsigned long port, unsigned char p_card); | 969 | static void FPT_ssel(unsigned long port, unsigned char p_card); |
971 | static void FPT_sres(unsigned long port, unsigned char p_card, PSCCBcard pCurrCard); | 970 | static void FPT_sres(unsigned long port, unsigned char p_card, struct sccb_card * pCurrCard); |
972 | static void FPT_shandem(unsigned long port, unsigned char p_card,struct sccb * pCurrSCCB); | 971 | static void FPT_shandem(unsigned long port, unsigned char p_card,struct sccb * pCurrSCCB); |
973 | static void FPT_stsyncn(unsigned long port, unsigned char p_card); | 972 | static void FPT_stsyncn(unsigned long port, unsigned char p_card); |
974 | static void FPT_sisyncr(unsigned long port,unsigned char sync_pulse, unsigned char offset); | 973 | static void FPT_sisyncr(unsigned long port,unsigned char sync_pulse, unsigned char offset); |
@@ -993,11 +992,11 @@ static void FPT_stwidn(unsigned long port, unsigned char p_card); | |||
993 | static void FPT_siwidr(unsigned long port, unsigned char width); | 992 | static void FPT_siwidr(unsigned long port, unsigned char width); |
994 | 993 | ||
995 | 994 | ||
996 | static void FPT_queueSelectFail(PSCCBcard pCurrCard, unsigned char p_card); | 995 | static void FPT_queueSelectFail(struct sccb_card * pCurrCard, unsigned char p_card); |
997 | static void FPT_queueDisconnect(struct sccb * p_SCCB, unsigned char p_card); | 996 | static void FPT_queueDisconnect(struct sccb * p_SCCB, unsigned char p_card); |
998 | static void FPT_queueCmdComplete(PSCCBcard pCurrCard, struct sccb * p_SCCB, | 997 | static void FPT_queueCmdComplete(struct sccb_card * pCurrCard, struct sccb * p_SCCB, |
999 | unsigned char p_card); | 998 | unsigned char p_card); |
1000 | static void FPT_queueSearchSelect(PSCCBcard pCurrCard, unsigned char p_card); | 999 | static void FPT_queueSearchSelect(struct sccb_card * pCurrCard, unsigned char p_card); |
1001 | static void FPT_queueFlushSccb(unsigned char p_card, unsigned char error_code); | 1000 | static void FPT_queueFlushSccb(unsigned char p_card, unsigned char error_code); |
1002 | static void FPT_queueAddSccb(struct sccb * p_SCCB, unsigned char card); | 1001 | static void FPT_queueAddSccb(struct sccb * p_SCCB, unsigned char card); |
1003 | static unsigned char FPT_queueFindSccb(struct sccb * p_SCCB, unsigned char p_card); | 1002 | static unsigned char FPT_queueFindSccb(struct sccb * p_SCCB, unsigned char p_card); |
@@ -1038,7 +1037,7 @@ static void FPT_DiagEEPROM(unsigned long p_port); | |||
1038 | 1037 | ||
1039 | 1038 | ||
1040 | 1039 | ||
1041 | static void FPT_dataXferProcessor(unsigned long port, PSCCBcard pCurrCard); | 1040 | static void FPT_dataXferProcessor(unsigned long port, struct sccb_card * pCurrCard); |
1042 | static void FPT_busMstrSGDataXferStart(unsigned long port, struct sccb * pCurrSCCB); | 1041 | static void FPT_busMstrSGDataXferStart(unsigned long port, struct sccb * pCurrSCCB); |
1043 | static void FPT_busMstrDataXferStart(unsigned long port, struct sccb * pCurrSCCB); | 1042 | static void FPT_busMstrDataXferStart(unsigned long port, struct sccb * pCurrSCCB); |
1044 | static void FPT_hostDataXferAbort(unsigned long port, unsigned char p_card, struct sccb * pCurrSCCB); | 1043 | static void FPT_hostDataXferAbort(unsigned long port, unsigned char p_card, struct sccb * pCurrSCCB); |
@@ -1046,10 +1045,10 @@ static void FPT_hostDataXferRestart(struct sccb * currSCCB); | |||
1046 | 1045 | ||
1047 | 1046 | ||
1048 | static unsigned char FPT_SccbMgr_bad_isr(unsigned long p_port, unsigned char p_card, | 1047 | static unsigned char FPT_SccbMgr_bad_isr(unsigned long p_port, unsigned char p_card, |
1049 | PSCCBcard pCurrCard, unsigned short p_int); | 1048 | struct sccb_card * pCurrCard, unsigned short p_int); |
1050 | 1049 | ||
1051 | static void FPT_SccbMgrTableInitAll(void); | 1050 | static void FPT_SccbMgrTableInitAll(void); |
1052 | static void FPT_SccbMgrTableInitCard(PSCCBcard pCurrCard, unsigned char p_card); | 1051 | static void FPT_SccbMgrTableInitCard(struct sccb_card * pCurrCard, unsigned char p_card); |
1053 | static void FPT_SccbMgrTableInitTarget(unsigned char p_card, unsigned char target); | 1052 | static void FPT_SccbMgrTableInitTarget(unsigned char p_card, unsigned char target); |
1054 | 1053 | ||
1055 | 1054 | ||
@@ -1080,7 +1079,7 @@ static void FPT_autoLoadDefaultMap(unsigned long p_port); | |||
1080 | 1079 | ||
1081 | 1080 | ||
1082 | static struct sccb_mgr_tar_info FPT_sccbMgrTbl[MAX_CARDS][MAX_SCSI_TAR] = { { { 0 } } }; | 1081 | static struct sccb_mgr_tar_info FPT_sccbMgrTbl[MAX_CARDS][MAX_SCSI_TAR] = { { { 0 } } }; |
1083 | static SCCBCARD FPT_BL_Card[MAX_CARDS] = { { 0 } }; | 1082 | static struct sccb_card FPT_BL_Card[MAX_CARDS] = { { 0 } }; |
1084 | static SCCBSCAM_INFO FPT_scamInfo[MAX_SCSI_TAR] = { { { 0 } } }; | 1083 | static SCCBSCAM_INFO FPT_scamInfo[MAX_SCSI_TAR] = { { { 0 } } }; |
1085 | static struct nvram_info FPT_nvRamInfo[MAX_MB_CARDS] = { { 0 } }; | 1084 | static struct nvram_info FPT_nvRamInfo[MAX_MB_CARDS] = { { 0 } }; |
1086 | 1085 | ||
@@ -1385,7 +1384,7 @@ static int FlashPoint_ProbeHostAdapter(struct sccb_mgr_info * pCardInfo) | |||
1385 | 1384 | ||
1386 | static unsigned long FlashPoint_HardwareResetHostAdapter(struct sccb_mgr_info * pCardInfo) | 1385 | static unsigned long FlashPoint_HardwareResetHostAdapter(struct sccb_mgr_info * pCardInfo) |
1387 | { | 1386 | { |
1388 | PSCCBcard CurrCard = NULL; | 1387 | struct sccb_card * CurrCard = NULL; |
1389 | struct nvram_info * pCurrNvRam; | 1388 | struct nvram_info * pCurrNvRam; |
1390 | unsigned char i,j,thisCard, ScamFlg; | 1389 | unsigned char i,j,thisCard, ScamFlg; |
1391 | unsigned short temp,sync_bit_map,id; | 1390 | unsigned short temp,sync_bit_map,id; |
@@ -1573,7 +1572,7 @@ static void FlashPoint_ReleaseHostAdapter(unsigned long pCurrCard) | |||
1573 | unsigned long *pScamTbl; | 1572 | unsigned long *pScamTbl; |
1574 | struct nvram_info * pCurrNvRam; | 1573 | struct nvram_info * pCurrNvRam; |
1575 | 1574 | ||
1576 | pCurrNvRam = ((PSCCBcard)pCurrCard)->pNvRamInfo; | 1575 | pCurrNvRam = ((struct sccb_card *)pCurrCard)->pNvRamInfo; |
1577 | 1576 | ||
1578 | if(pCurrNvRam){ | 1577 | if(pCurrNvRam){ |
1579 | FPT_WrStack(pCurrNvRam->niBaseAddr, 0, pCurrNvRam->niModel); | 1578 | FPT_WrStack(pCurrNvRam->niBaseAddr, 0, pCurrNvRam->niModel); |
@@ -1595,7 +1594,7 @@ static void FlashPoint_ReleaseHostAdapter(unsigned long pCurrCard) | |||
1595 | } | 1594 | } |
1596 | 1595 | ||
1597 | }else{ | 1596 | }else{ |
1598 | FPT_WrStack(((PSCCBcard)pCurrCard)->ioPort, 0, 0); | 1597 | FPT_WrStack(((struct sccb_card *)pCurrCard)->ioPort, 0, 0); |
1599 | } | 1598 | } |
1600 | } | 1599 | } |
1601 | 1600 | ||
@@ -1670,8 +1669,8 @@ static void FlashPoint_StartCCB(unsigned long pCurrCard, struct sccb * p_Sccb) | |||
1670 | struct sccb * pSaveSccb; | 1669 | struct sccb * pSaveSccb; |
1671 | CALL_BK_FN callback; | 1670 | CALL_BK_FN callback; |
1672 | 1671 | ||
1673 | thisCard = ((PSCCBcard) pCurrCard)->cardIndex; | 1672 | thisCard = ((struct sccb_card *) pCurrCard)->cardIndex; |
1674 | ioport = ((PSCCBcard) pCurrCard)->ioPort; | 1673 | ioport = ((struct sccb_card *) pCurrCard)->ioPort; |
1675 | 1674 | ||
1676 | if((p_Sccb->TargID > MAX_SCSI_TAR) || (p_Sccb->Lun > MAX_LUN)) | 1675 | if((p_Sccb->TargID > MAX_SCSI_TAR) || (p_Sccb->Lun > MAX_LUN)) |
1677 | { | 1676 | { |
@@ -1688,19 +1687,19 @@ static void FlashPoint_StartCCB(unsigned long pCurrCard, struct sccb * p_Sccb) | |||
1688 | FPT_sinits(p_Sccb,thisCard); | 1687 | FPT_sinits(p_Sccb,thisCard); |
1689 | 1688 | ||
1690 | 1689 | ||
1691 | if (!((PSCCBcard) pCurrCard)->cmdCounter) | 1690 | if (!((struct sccb_card *) pCurrCard)->cmdCounter) |
1692 | { | 1691 | { |
1693 | WR_HARPOON(ioport+hp_semaphore, (RD_HARPOON(ioport+hp_semaphore) | 1692 | WR_HARPOON(ioport+hp_semaphore, (RD_HARPOON(ioport+hp_semaphore) |
1694 | | SCCB_MGR_ACTIVE)); | 1693 | | SCCB_MGR_ACTIVE)); |
1695 | 1694 | ||
1696 | if (((PSCCBcard) pCurrCard)->globalFlags & F_GREEN_PC) | 1695 | if (((struct sccb_card *) pCurrCard)->globalFlags & F_GREEN_PC) |
1697 | { | 1696 | { |
1698 | WR_HARPOON(ioport+hp_clkctrl_0, CLKCTRL_DEFAULT); | 1697 | WR_HARPOON(ioport+hp_clkctrl_0, CLKCTRL_DEFAULT); |
1699 | WR_HARPOON(ioport+hp_sys_ctrl, 0x00); | 1698 | WR_HARPOON(ioport+hp_sys_ctrl, 0x00); |
1700 | } | 1699 | } |
1701 | } | 1700 | } |
1702 | 1701 | ||
1703 | ((PSCCBcard)pCurrCard)->cmdCounter++; | 1702 | ((struct sccb_card *)pCurrCard)->cmdCounter++; |
1704 | 1703 | ||
1705 | if (RD_HARPOON(ioport+hp_semaphore) & BIOS_IN_USE) { | 1704 | if (RD_HARPOON(ioport+hp_semaphore) & BIOS_IN_USE) { |
1706 | 1705 | ||
@@ -1708,10 +1707,10 @@ static void FlashPoint_StartCCB(unsigned long pCurrCard, struct sccb * p_Sccb) | |||
1708 | | TICKLE_ME)); | 1707 | | TICKLE_ME)); |
1709 | if(p_Sccb->OperationCode == RESET_COMMAND) | 1708 | if(p_Sccb->OperationCode == RESET_COMMAND) |
1710 | { | 1709 | { |
1711 | pSaveSccb = ((PSCCBcard) pCurrCard)->currentSCCB; | 1710 | pSaveSccb = ((struct sccb_card *) pCurrCard)->currentSCCB; |
1712 | ((PSCCBcard) pCurrCard)->currentSCCB = p_Sccb; | 1711 | ((struct sccb_card *) pCurrCard)->currentSCCB = p_Sccb; |
1713 | FPT_queueSelectFail(&FPT_BL_Card[thisCard], thisCard); | 1712 | FPT_queueSelectFail(&FPT_BL_Card[thisCard], thisCard); |
1714 | ((PSCCBcard) pCurrCard)->currentSCCB = pSaveSccb; | 1713 | ((struct sccb_card *) pCurrCard)->currentSCCB = pSaveSccb; |
1715 | } | 1714 | } |
1716 | else | 1715 | else |
1717 | { | 1716 | { |
@@ -1723,10 +1722,10 @@ static void FlashPoint_StartCCB(unsigned long pCurrCard, struct sccb * p_Sccb) | |||
1723 | 1722 | ||
1724 | if(p_Sccb->OperationCode == RESET_COMMAND) | 1723 | if(p_Sccb->OperationCode == RESET_COMMAND) |
1725 | { | 1724 | { |
1726 | pSaveSccb = ((PSCCBcard) pCurrCard)->currentSCCB; | 1725 | pSaveSccb = ((struct sccb_card *) pCurrCard)->currentSCCB; |
1727 | ((PSCCBcard) pCurrCard)->currentSCCB = p_Sccb; | 1726 | ((struct sccb_card *) pCurrCard)->currentSCCB = p_Sccb; |
1728 | FPT_queueSelectFail(&FPT_BL_Card[thisCard], thisCard); | 1727 | FPT_queueSelectFail(&FPT_BL_Card[thisCard], thisCard); |
1729 | ((PSCCBcard) pCurrCard)->currentSCCB = pSaveSccb; | 1728 | ((struct sccb_card *) pCurrCard)->currentSCCB = pSaveSccb; |
1730 | } | 1729 | } |
1731 | else | 1730 | else |
1732 | { | 1731 | { |
@@ -1738,17 +1737,17 @@ static void FlashPoint_StartCCB(unsigned long pCurrCard, struct sccb * p_Sccb) | |||
1738 | 1737 | ||
1739 | MDISABLE_INT(ioport); | 1738 | MDISABLE_INT(ioport); |
1740 | 1739 | ||
1741 | if((((PSCCBcard) pCurrCard)->globalFlags & F_CONLUN_IO) && | 1740 | if((((struct sccb_card *) pCurrCard)->globalFlags & F_CONLUN_IO) && |
1742 | ((FPT_sccbMgrTbl[thisCard][p_Sccb->TargID].TarStatus & TAR_TAG_Q_MASK) != TAG_Q_TRYING)) | 1741 | ((FPT_sccbMgrTbl[thisCard][p_Sccb->TargID].TarStatus & TAR_TAG_Q_MASK) != TAG_Q_TRYING)) |
1743 | lun = p_Sccb->Lun; | 1742 | lun = p_Sccb->Lun; |
1744 | else | 1743 | else |
1745 | lun = 0; | 1744 | lun = 0; |
1746 | if ((((PSCCBcard) pCurrCard)->currentSCCB == NULL) && | 1745 | if ((((struct sccb_card *) pCurrCard)->currentSCCB == NULL) && |
1747 | (FPT_sccbMgrTbl[thisCard][p_Sccb->TargID].TarSelQ_Cnt == 0) && | 1746 | (FPT_sccbMgrTbl[thisCard][p_Sccb->TargID].TarSelQ_Cnt == 0) && |
1748 | (FPT_sccbMgrTbl[thisCard][p_Sccb->TargID].TarLUNBusy[lun] | 1747 | (FPT_sccbMgrTbl[thisCard][p_Sccb->TargID].TarLUNBusy[lun] |
1749 | == 0)) { | 1748 | == 0)) { |
1750 | 1749 | ||
1751 | ((PSCCBcard) pCurrCard)->currentSCCB = p_Sccb; | 1750 | ((struct sccb_card *) pCurrCard)->currentSCCB = p_Sccb; |
1752 | FPT_ssel(p_Sccb->SccbIOPort,thisCard); | 1751 | FPT_ssel(p_Sccb->SccbIOPort,thisCard); |
1753 | } | 1752 | } |
1754 | 1753 | ||
@@ -1756,10 +1755,10 @@ static void FlashPoint_StartCCB(unsigned long pCurrCard, struct sccb * p_Sccb) | |||
1756 | 1755 | ||
1757 | if(p_Sccb->OperationCode == RESET_COMMAND) | 1756 | if(p_Sccb->OperationCode == RESET_COMMAND) |
1758 | { | 1757 | { |
1759 | pSaveSccb = ((PSCCBcard) pCurrCard)->currentSCCB; | 1758 | pSaveSccb = ((struct sccb_card *) pCurrCard)->currentSCCB; |
1760 | ((PSCCBcard) pCurrCard)->currentSCCB = p_Sccb; | 1759 | ((struct sccb_card *) pCurrCard)->currentSCCB = p_Sccb; |
1761 | FPT_queueSelectFail(&FPT_BL_Card[thisCard], thisCard); | 1760 | FPT_queueSelectFail(&FPT_BL_Card[thisCard], thisCard); |
1762 | ((PSCCBcard) pCurrCard)->currentSCCB = pSaveSccb; | 1761 | ((struct sccb_card *) pCurrCard)->currentSCCB = pSaveSccb; |
1763 | } | 1762 | } |
1764 | else | 1763 | else |
1765 | { | 1764 | { |
@@ -1794,9 +1793,9 @@ static int FlashPoint_AbortCCB(unsigned long pCurrCard, struct sccb * p_Sccb) | |||
1794 | struct sccb_mgr_tar_info * currTar_Info; | 1793 | struct sccb_mgr_tar_info * currTar_Info; |
1795 | 1794 | ||
1796 | 1795 | ||
1797 | ioport = ((PSCCBcard) pCurrCard)->ioPort; | 1796 | ioport = ((struct sccb_card *) pCurrCard)->ioPort; |
1798 | 1797 | ||
1799 | thisCard = ((PSCCBcard)pCurrCard)->cardIndex; | 1798 | thisCard = ((struct sccb_card *)pCurrCard)->cardIndex; |
1800 | 1799 | ||
1801 | if (!(RD_HARPOON(ioport+hp_page_ctrl) & G_INT_DISABLE)) | 1800 | if (!(RD_HARPOON(ioport+hp_page_ctrl) & G_INT_DISABLE)) |
1802 | { | 1801 | { |
@@ -1804,9 +1803,9 @@ static int FlashPoint_AbortCCB(unsigned long pCurrCard, struct sccb * p_Sccb) | |||
1804 | if (FPT_queueFindSccb(p_Sccb,thisCard)) | 1803 | if (FPT_queueFindSccb(p_Sccb,thisCard)) |
1805 | { | 1804 | { |
1806 | 1805 | ||
1807 | ((PSCCBcard)pCurrCard)->cmdCounter--; | 1806 | ((struct sccb_card *)pCurrCard)->cmdCounter--; |
1808 | 1807 | ||
1809 | if (!((PSCCBcard)pCurrCard)->cmdCounter) | 1808 | if (!((struct sccb_card *)pCurrCard)->cmdCounter) |
1810 | WR_HARPOON(ioport+hp_semaphore,(RD_HARPOON(ioport+hp_semaphore) | 1809 | WR_HARPOON(ioport+hp_semaphore,(RD_HARPOON(ioport+hp_semaphore) |
1811 | & (unsigned char)(~(SCCB_MGR_ACTIVE | TICKLE_ME)) )); | 1810 | & (unsigned char)(~(SCCB_MGR_ACTIVE | TICKLE_ME)) )); |
1812 | 1811 | ||
@@ -1819,7 +1818,7 @@ static int FlashPoint_AbortCCB(unsigned long pCurrCard, struct sccb * p_Sccb) | |||
1819 | 1818 | ||
1820 | else | 1819 | else |
1821 | { | 1820 | { |
1822 | if (((PSCCBcard)pCurrCard)->currentSCCB == p_Sccb) | 1821 | if (((struct sccb_card *)pCurrCard)->currentSCCB == p_Sccb) |
1823 | { | 1822 | { |
1824 | p_Sccb->SccbStatus = SCCB_ABORT; | 1823 | p_Sccb->SccbStatus = SCCB_ABORT; |
1825 | return(0); | 1824 | return(0); |
@@ -1835,23 +1834,23 @@ static int FlashPoint_AbortCCB(unsigned long pCurrCard, struct sccb * p_Sccb) | |||
1835 | if(p_Sccb->Sccb_tag) | 1834 | if(p_Sccb->Sccb_tag) |
1836 | { | 1835 | { |
1837 | MDISABLE_INT(ioport); | 1836 | MDISABLE_INT(ioport); |
1838 | if (((PSCCBcard) pCurrCard)->discQ_Tbl[p_Sccb->Sccb_tag]==p_Sccb) | 1837 | if (((struct sccb_card *) pCurrCard)->discQ_Tbl[p_Sccb->Sccb_tag]==p_Sccb) |
1839 | { | 1838 | { |
1840 | p_Sccb->SccbStatus = SCCB_ABORT; | 1839 | p_Sccb->SccbStatus = SCCB_ABORT; |
1841 | p_Sccb->Sccb_scsistat = ABORT_ST; | 1840 | p_Sccb->Sccb_scsistat = ABORT_ST; |
1842 | p_Sccb->Sccb_scsimsg = SMABORT_TAG; | 1841 | p_Sccb->Sccb_scsimsg = SMABORT_TAG; |
1843 | 1842 | ||
1844 | if(((PSCCBcard) pCurrCard)->currentSCCB == NULL) | 1843 | if(((struct sccb_card *) pCurrCard)->currentSCCB == NULL) |
1845 | { | 1844 | { |
1846 | ((PSCCBcard) pCurrCard)->currentSCCB = p_Sccb; | 1845 | ((struct sccb_card *) pCurrCard)->currentSCCB = p_Sccb; |
1847 | FPT_ssel(ioport, thisCard); | 1846 | FPT_ssel(ioport, thisCard); |
1848 | } | 1847 | } |
1849 | else | 1848 | else |
1850 | { | 1849 | { |
1851 | pSaveSCCB = ((PSCCBcard) pCurrCard)->currentSCCB; | 1850 | pSaveSCCB = ((struct sccb_card *) pCurrCard)->currentSCCB; |
1852 | ((PSCCBcard) pCurrCard)->currentSCCB = p_Sccb; | 1851 | ((struct sccb_card *) pCurrCard)->currentSCCB = p_Sccb; |
1853 | FPT_queueSelectFail((PSCCBcard) pCurrCard, thisCard); | 1852 | FPT_queueSelectFail((struct sccb_card *) pCurrCard, thisCard); |
1854 | ((PSCCBcard) pCurrCard)->currentSCCB = pSaveSCCB; | 1853 | ((struct sccb_card *) pCurrCard)->currentSCCB = pSaveSCCB; |
1855 | } | 1854 | } |
1856 | } | 1855 | } |
1857 | MENABLE_INT(ioport); | 1856 | MENABLE_INT(ioport); |
@@ -1887,7 +1886,7 @@ static unsigned char FlashPoint_InterruptPending(unsigned long pCurrCard) | |||
1887 | { | 1886 | { |
1888 | unsigned long ioport; | 1887 | unsigned long ioport; |
1889 | 1888 | ||
1890 | ioport = ((PSCCBcard)pCurrCard)->ioPort; | 1889 | ioport = ((struct sccb_card *)pCurrCard)->ioPort; |
1891 | 1890 | ||
1892 | if (RD_HARPOON(ioport+hp_int_status) & INT_ASSERTED) | 1891 | if (RD_HARPOON(ioport+hp_int_status) & INT_ASSERTED) |
1893 | { | 1892 | { |
@@ -1918,8 +1917,8 @@ static int FlashPoint_HandleInterrupt(unsigned long pCurrCard) | |||
1918 | unsigned char i, target; | 1917 | unsigned char i, target; |
1919 | unsigned long ioport; | 1918 | unsigned long ioport; |
1920 | 1919 | ||
1921 | thisCard = ((PSCCBcard)pCurrCard)->cardIndex; | 1920 | thisCard = ((struct sccb_card *)pCurrCard)->cardIndex; |
1922 | ioport = ((PSCCBcard)pCurrCard)->ioPort; | 1921 | ioport = ((struct sccb_card *)pCurrCard)->ioPort; |
1923 | 1922 | ||
1924 | MDISABLE_INT(ioport); | 1923 | MDISABLE_INT(ioport); |
1925 | 1924 | ||
@@ -1934,10 +1933,10 @@ static int FlashPoint_HandleInterrupt(unsigned long pCurrCard) | |||
1934 | bm_status) | 1933 | bm_status) |
1935 | { | 1934 | { |
1936 | 1935 | ||
1937 | currSCCB = ((PSCCBcard)pCurrCard)->currentSCCB; | 1936 | currSCCB = ((struct sccb_card *)pCurrCard)->currentSCCB; |
1938 | 1937 | ||
1939 | if (hp_int & (FIFO | TIMEOUT | RESET | SCAM_SEL) || bm_status) { | 1938 | if (hp_int & (FIFO | TIMEOUT | RESET | SCAM_SEL) || bm_status) { |
1940 | result = FPT_SccbMgr_bad_isr(ioport,thisCard,((PSCCBcard)pCurrCard),hp_int); | 1939 | result = FPT_SccbMgr_bad_isr(ioport,thisCard,((struct sccb_card *)pCurrCard),hp_int); |
1941 | WRW_HARPOON((ioport+hp_intstat), (FIFO | TIMEOUT | RESET | SCAM_SEL)); | 1940 | WRW_HARPOON((ioport+hp_intstat), (FIFO | TIMEOUT | RESET | SCAM_SEL)); |
1942 | bm_status = 0; | 1941 | bm_status = 0; |
1943 | 1942 | ||
@@ -1960,7 +1959,7 @@ static int FlashPoint_HandleInterrupt(unsigned long pCurrCard) | |||
1960 | while (!(RDW_HARPOON((ioport+hp_intstat)) & (BUS_FREE | RSEL))) ; | 1959 | while (!(RDW_HARPOON((ioport+hp_intstat)) & (BUS_FREE | RSEL))) ; |
1961 | } | 1960 | } |
1962 | 1961 | ||
1963 | if (((PSCCBcard)pCurrCard)->globalFlags & F_HOST_XFER_ACT) | 1962 | if (((struct sccb_card *)pCurrCard)->globalFlags & F_HOST_XFER_ACT) |
1964 | 1963 | ||
1965 | FPT_phaseChkFifo(ioport, thisCard); | 1964 | FPT_phaseChkFifo(ioport, thisCard); |
1966 | 1965 | ||
@@ -1978,7 +1977,7 @@ static int FlashPoint_HandleInterrupt(unsigned long pCurrCard) | |||
1978 | else if (hp_int & ITAR_DISC) | 1977 | else if (hp_int & ITAR_DISC) |
1979 | { | 1978 | { |
1980 | 1979 | ||
1981 | if (((PSCCBcard)pCurrCard)->globalFlags & F_HOST_XFER_ACT) { | 1980 | if (((struct sccb_card *)pCurrCard)->globalFlags & F_HOST_XFER_ACT) { |
1982 | 1981 | ||
1983 | FPT_phaseChkFifo(ioport, thisCard); | 1982 | FPT_phaseChkFifo(ioport, thisCard); |
1984 | 1983 | ||
@@ -2019,7 +2018,7 @@ static int FlashPoint_HandleInterrupt(unsigned long pCurrCard) | |||
2019 | WRW_HARPOON((ioport+hp_intstat), (BUS_FREE | ITAR_DISC)); | 2018 | WRW_HARPOON((ioport+hp_intstat), (BUS_FREE | ITAR_DISC)); |
2020 | 2019 | ||
2021 | 2020 | ||
2022 | ((PSCCBcard)pCurrCard)->globalFlags |= F_NEW_SCCB_CMD; | 2021 | ((struct sccb_card *)pCurrCard)->globalFlags |= F_NEW_SCCB_CMD; |
2023 | 2022 | ||
2024 | } | 2023 | } |
2025 | 2024 | ||
@@ -2030,7 +2029,7 @@ static int FlashPoint_HandleInterrupt(unsigned long pCurrCard) | |||
2030 | 2029 | ||
2031 | if (RDW_HARPOON((ioport+hp_intstat)) & ITAR_DISC) | 2030 | if (RDW_HARPOON((ioport+hp_intstat)) & ITAR_DISC) |
2032 | { | 2031 | { |
2033 | if (((PSCCBcard)pCurrCard)->globalFlags & F_HOST_XFER_ACT) | 2032 | if (((struct sccb_card *)pCurrCard)->globalFlags & F_HOST_XFER_ACT) |
2034 | { | 2033 | { |
2035 | FPT_phaseChkFifo(ioport, thisCard); | 2034 | FPT_phaseChkFifo(ioport, thisCard); |
2036 | } | 2035 | } |
@@ -2047,7 +2046,7 @@ static int FlashPoint_HandleInterrupt(unsigned long pCurrCard) | |||
2047 | FPT_queueDisconnect(currSCCB,thisCard); | 2046 | FPT_queueDisconnect(currSCCB,thisCard); |
2048 | } | 2047 | } |
2049 | 2048 | ||
2050 | FPT_sres(ioport,thisCard,((PSCCBcard)pCurrCard)); | 2049 | FPT_sres(ioport,thisCard,((struct sccb_card *)pCurrCard)); |
2051 | FPT_phaseDecode(ioport,thisCard); | 2050 | FPT_phaseDecode(ioport,thisCard); |
2052 | 2051 | ||
2053 | } | 2052 | } |
@@ -2101,7 +2100,7 @@ static int FlashPoint_HandleInterrupt(unsigned long pCurrCard) | |||
2101 | 2100 | ||
2102 | WRW_HARPOON((ioport+hp_intstat), BUS_FREE); | 2101 | WRW_HARPOON((ioport+hp_intstat), BUS_FREE); |
2103 | 2102 | ||
2104 | if (((PSCCBcard)pCurrCard)->globalFlags & F_HOST_XFER_ACT) { | 2103 | if (((struct sccb_card *)pCurrCard)->globalFlags & F_HOST_XFER_ACT) { |
2105 | 2104 | ||
2106 | FPT_hostDataXferAbort(ioport,thisCard,currSCCB); | 2105 | FPT_hostDataXferAbort(ioport,thisCard,currSCCB); |
2107 | } | 2106 | } |
@@ -2113,24 +2112,24 @@ static int FlashPoint_HandleInterrupt(unsigned long pCurrCard) | |||
2113 | else if (hp_int & ITICKLE) { | 2112 | else if (hp_int & ITICKLE) { |
2114 | 2113 | ||
2115 | WRW_HARPOON((ioport+hp_intstat), ITICKLE); | 2114 | WRW_HARPOON((ioport+hp_intstat), ITICKLE); |
2116 | ((PSCCBcard)pCurrCard)->globalFlags |= F_NEW_SCCB_CMD; | 2115 | ((struct sccb_card *)pCurrCard)->globalFlags |= F_NEW_SCCB_CMD; |
2117 | } | 2116 | } |
2118 | 2117 | ||
2119 | 2118 | ||
2120 | 2119 | ||
2121 | if (((PSCCBcard)pCurrCard)->globalFlags & F_NEW_SCCB_CMD) { | 2120 | if (((struct sccb_card *)pCurrCard)->globalFlags & F_NEW_SCCB_CMD) { |
2122 | 2121 | ||
2123 | 2122 | ||
2124 | ((PSCCBcard)pCurrCard)->globalFlags &= ~F_NEW_SCCB_CMD; | 2123 | ((struct sccb_card *)pCurrCard)->globalFlags &= ~F_NEW_SCCB_CMD; |
2125 | 2124 | ||
2126 | 2125 | ||
2127 | if (((PSCCBcard)pCurrCard)->currentSCCB == NULL) { | 2126 | if (((struct sccb_card *)pCurrCard)->currentSCCB == NULL) { |
2128 | 2127 | ||
2129 | FPT_queueSearchSelect(((PSCCBcard)pCurrCard),thisCard); | 2128 | FPT_queueSearchSelect(((struct sccb_card *)pCurrCard),thisCard); |
2130 | } | 2129 | } |
2131 | 2130 | ||
2132 | if (((PSCCBcard)pCurrCard)->currentSCCB != NULL) { | 2131 | if (((struct sccb_card *)pCurrCard)->currentSCCB != NULL) { |
2133 | ((PSCCBcard)pCurrCard)->globalFlags &= ~F_NEW_SCCB_CMD; | 2132 | ((struct sccb_card *)pCurrCard)->globalFlags &= ~F_NEW_SCCB_CMD; |
2134 | FPT_ssel(ioport,thisCard); | 2133 | FPT_ssel(ioport,thisCard); |
2135 | } | 2134 | } |
2136 | 2135 | ||
@@ -2156,7 +2155,7 @@ static int FlashPoint_HandleInterrupt(unsigned long pCurrCard) | |||
2156 | * | 2155 | * |
2157 | *---------------------------------------------------------------------*/ | 2156 | *---------------------------------------------------------------------*/ |
2158 | static unsigned char FPT_SccbMgr_bad_isr(unsigned long p_port, unsigned char p_card, | 2157 | static unsigned char FPT_SccbMgr_bad_isr(unsigned long p_port, unsigned char p_card, |
2159 | PSCCBcard pCurrCard, unsigned short p_int) | 2158 | struct sccb_card * pCurrCard, unsigned short p_int) |
2160 | { | 2159 | { |
2161 | unsigned char temp, ScamFlg; | 2160 | unsigned char temp, ScamFlg; |
2162 | struct sccb_mgr_tar_info * currTar_Info; | 2161 | struct sccb_mgr_tar_info * currTar_Info; |
@@ -2332,7 +2331,7 @@ static void FPT_SccbMgrTableInitAll() | |||
2332 | * | 2331 | * |
2333 | *---------------------------------------------------------------------*/ | 2332 | *---------------------------------------------------------------------*/ |
2334 | 2333 | ||
2335 | static void FPT_SccbMgrTableInitCard(PSCCBcard pCurrCard, unsigned char p_card) | 2334 | static void FPT_SccbMgrTableInitCard(struct sccb_card * pCurrCard, unsigned char p_card) |
2336 | { | 2335 | { |
2337 | unsigned char scsiID, qtag; | 2336 | unsigned char scsiID, qtag; |
2338 | 2337 | ||
@@ -2492,7 +2491,7 @@ static void FPT_ssel(unsigned long port, unsigned char p_card) | |||
2492 | unsigned char auto_loaded, i, target, *theCCB; | 2491 | unsigned char auto_loaded, i, target, *theCCB; |
2493 | 2492 | ||
2494 | unsigned long cdb_reg; | 2493 | unsigned long cdb_reg; |
2495 | PSCCBcard CurrCard; | 2494 | struct sccb_card * CurrCard; |
2496 | struct sccb * currSCCB; | 2495 | struct sccb * currSCCB; |
2497 | struct sccb_mgr_tar_info * currTar_Info; | 2496 | struct sccb_mgr_tar_info * currTar_Info; |
2498 | unsigned char lastTag, lun; | 2497 | unsigned char lastTag, lun; |
@@ -2797,7 +2796,7 @@ static void FPT_ssel(unsigned long port, unsigned char p_card) | |||
2797 | * | 2796 | * |
2798 | *---------------------------------------------------------------------*/ | 2797 | *---------------------------------------------------------------------*/ |
2799 | 2798 | ||
2800 | static void FPT_sres(unsigned long port, unsigned char p_card, PSCCBcard pCurrCard) | 2799 | static void FPT_sres(unsigned long port, unsigned char p_card, struct sccb_card * pCurrCard) |
2801 | { | 2800 | { |
2802 | 2801 | ||
2803 | unsigned char our_target, message, lun = 0, tag, msgRetryCount; | 2802 | unsigned char our_target, message, lun = 0, tag, msgRetryCount; |
@@ -3110,7 +3109,7 @@ static void FPT_SendMsg(unsigned long port, unsigned char message) | |||
3110 | static void FPT_sdecm(unsigned char message, unsigned long port, unsigned char p_card) | 3109 | static void FPT_sdecm(unsigned char message, unsigned long port, unsigned char p_card) |
3111 | { | 3110 | { |
3112 | struct sccb * currSCCB; | 3111 | struct sccb * currSCCB; |
3113 | PSCCBcard CurrCard; | 3112 | struct sccb_card * CurrCard; |
3114 | struct sccb_mgr_tar_info * currTar_Info; | 3113 | struct sccb_mgr_tar_info * currTar_Info; |
3115 | 3114 | ||
3116 | CurrCard = &FPT_BL_Card[p_card]; | 3115 | CurrCard = &FPT_BL_Card[p_card]; |
@@ -3909,7 +3908,7 @@ static void FPT_sresb(unsigned long port, unsigned char p_card) | |||
3909 | * Description: Setup for the Auto Sense command. | 3908 | * Description: Setup for the Auto Sense command. |
3910 | * | 3909 | * |
3911 | *---------------------------------------------------------------------*/ | 3910 | *---------------------------------------------------------------------*/ |
3912 | static void FPT_ssenss(PSCCBcard pCurrCard) | 3911 | static void FPT_ssenss(struct sccb_card * pCurrCard) |
3913 | { | 3912 | { |
3914 | unsigned char i; | 3913 | unsigned char i; |
3915 | struct sccb * currSCCB; | 3914 | struct sccb * currSCCB; |
@@ -5151,7 +5150,7 @@ static void FPT_autoCmdCmplt(unsigned long p_port, unsigned char p_card) | |||
5151 | * | 5150 | * |
5152 | *---------------------------------------------------------------------*/ | 5151 | *---------------------------------------------------------------------*/ |
5153 | 5152 | ||
5154 | static void FPT_dataXferProcessor(unsigned long port, PSCCBcard pCurrCard) | 5153 | static void FPT_dataXferProcessor(unsigned long port, struct sccb_card * pCurrCard) |
5155 | { | 5154 | { |
5156 | struct sccb * currSCCB; | 5155 | struct sccb * currSCCB; |
5157 | 5156 | ||
@@ -5699,7 +5698,7 @@ static void FPT_scini(unsigned char p_card, unsigned char p_our_id, unsigned cha | |||
5699 | unsigned long p_port; | 5698 | unsigned long p_port; |
5700 | 5699 | ||
5701 | unsigned char i,k,ScamFlg ; | 5700 | unsigned char i,k,ScamFlg ; |
5702 | PSCCBcard currCard; | 5701 | struct sccb_card * currCard; |
5703 | struct nvram_info * pCurrNvRam; | 5702 | struct nvram_info * pCurrNvRam; |
5704 | 5703 | ||
5705 | currCard = &FPT_BL_Card[p_card]; | 5704 | currCard = &FPT_BL_Card[p_card]; |
@@ -6931,7 +6930,7 @@ static void FPT_DiagEEPROM(unsigned long p_port) | |||
6931 | * | 6930 | * |
6932 | *---------------------------------------------------------------------*/ | 6931 | *---------------------------------------------------------------------*/ |
6933 | 6932 | ||
6934 | static void FPT_queueSearchSelect(PSCCBcard pCurrCard, unsigned char p_card) | 6933 | static void FPT_queueSearchSelect(struct sccb_card * pCurrCard, unsigned char p_card) |
6935 | { | 6934 | { |
6936 | unsigned char scan_ptr, lun; | 6935 | unsigned char scan_ptr, lun; |
6937 | struct sccb_mgr_tar_info * currTar_Info; | 6936 | struct sccb_mgr_tar_info * currTar_Info; |
@@ -7062,7 +7061,7 @@ static void FPT_queueSearchSelect(PSCCBcard pCurrCard, unsigned char p_card) | |||
7062 | * | 7061 | * |
7063 | *---------------------------------------------------------------------*/ | 7062 | *---------------------------------------------------------------------*/ |
7064 | 7063 | ||
7065 | static void FPT_queueSelectFail(PSCCBcard pCurrCard, unsigned char p_card) | 7064 | static void FPT_queueSelectFail(struct sccb_card * pCurrCard, unsigned char p_card) |
7066 | { | 7065 | { |
7067 | unsigned char thisTarg; | 7066 | unsigned char thisTarg; |
7068 | struct sccb_mgr_tar_info * currTar_Info; | 7067 | struct sccb_mgr_tar_info * currTar_Info; |
@@ -7101,7 +7100,7 @@ static void FPT_queueSelectFail(PSCCBcard pCurrCard, unsigned char p_card) | |||
7101 | * | 7100 | * |
7102 | *---------------------------------------------------------------------*/ | 7101 | *---------------------------------------------------------------------*/ |
7103 | 7102 | ||
7104 | static void FPT_queueCmdComplete(PSCCBcard pCurrCard, struct sccb * p_sccb, | 7103 | static void FPT_queueCmdComplete(struct sccb_card * pCurrCard, struct sccb * p_sccb, |
7105 | unsigned char p_card) | 7104 | unsigned char p_card) |
7106 | { | 7105 | { |
7107 | 7106 | ||