]> git.hungrycats.org Git - linux/commitdiff
[PATCH] kill obsolete typedefs and wrappers from tmscsim
authorGuennadi Liakhovetski <g.liakhovetski@gmx.de>
Sun, 27 Jun 2004 04:03:55 +0000 (23:03 -0500)
committerJames Bottomley <jejb@raven.il.steeleye.com>
Sun, 27 Jun 2004 04:03:55 +0000 (23:03 -0500)
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
drivers/scsi/scsiiom.c
drivers/scsi/tmscsim.c
drivers/scsi/tmscsim.h

index 3786ea90281659b310b9d3b70174ade85018c3e5..89b957673ad4193ebd0959be066d11003c2b712c 100644 (file)
@@ -6,7 +6,7 @@
  ***********************************************************************/
 /* $Id: scsiiom.c,v 2.55.2.17 2000/12/20 00:39:37 garloff Exp $ */
 static void __inline__
-dc390_freetag (PDCB pDCB, PSRB pSRB)
+dc390_freetag (struct dc390_dcb* pDCB, struct dc390_srb* pSRB)
 {
        if (pSRB->TagNumber < 255) {
                pDCB->TagMask &= ~(1 << pSRB->TagNumber);   /* free tag mask */
@@ -15,10 +15,10 @@ dc390_freetag (PDCB pDCB, PSRB pSRB)
 }
 
 
-static UCHAR
-dc390_StartSCSI( PACB pACB, PDCB pDCB, PSRB pSRB )
+static u8
+dc390_StartSCSI( struct dc390_acb* pACB, struct dc390_dcb* pDCB, struct dc390_srb* pSRB )
 {
-    UCHAR cmd; UCHAR  disc_allowed, try_sync_nego;
+    u8 cmd; u8  disc_allowed, try_sync_nego;
 
     pSRB->ScsiPhase = SCSI_NOP0;
 
@@ -69,7 +69,7 @@ dc390_StartSCSI( PACB pACB, PDCB pDCB, PSRB pSRB )
     /* Change 99/05/31: Don't use tags when not disconnecting (BUSY) */
     if ((pDCB->SyncMode & EN_TAG_QUEUEING) && disc_allowed)
       {
-       UCHAR tag_no = 0;
+       u8 tag_no = 0;
        while ((1 << tag_no) & pDCB->TagMask) tag_no++;
        if (tag_no >= sizeof (pDCB->TagMask)*8 || tag_no >= pDCB->MaxCommand) { 
                printk (KERN_WARNING "DC390: Out of tags for Dev. %02x %02x\n", pDCB->TargetID, pDCB->TargetLUN); 
@@ -92,7 +92,7 @@ dc390_StartSCSI( PACB pACB, PDCB pDCB, PSRB pSRB )
 
     if (try_sync_nego)
       { 
-       UCHAR Sync_Off = pDCB->SyncOffset;
+       u8 Sync_Off = pDCB->SyncOffset;
         DEBUG0(printk (KERN_INFO "DC390: NEW Sync Nego code triggered (%i %i)\n", pDCB->TargetID, pDCB->TargetLUN));
        pSRB->MsgOutBuf[0] = EXTENDED_MESSAGE;
        pSRB->MsgOutBuf[1] = 3;
@@ -121,8 +121,8 @@ dc390_StartSCSI( PACB pACB, PDCB pDCB, PSRB pSRB )
          }
        else    /* write cmnd to bus */ 
          {
-           PUCHAR ptr; UCHAR i;
-           ptr = (PUCHAR) pSRB->pcmd->cmnd;
+           u8 *ptr; u8 i;
+           ptr = (u8 *) pSRB->pcmd->cmnd;
            for (i=0; i<pSRB->pcmd->cmd_len; i++)
              DC390_write8 (ScsiFifo, *(ptr++));
          }
@@ -154,18 +154,17 @@ dc390_StartSCSI( PACB pACB, PDCB pDCB, PSRB pSRB )
 
 #if DMA_INT
 /* This is similar to AM53C974.c ... */
-static UCHAR 
-dc390_dma_intr (PACB pACB)
+static u8 
+dc390_dma_intr (struct dc390_acb* pACB)
 {
-  PSRB pSRB;
-  UCHAR dstate;
-  DEBUG0(USHORT pstate;PDEVDECL1);
+  struct dc390_srb* pSRB;
+  u8 dstate;
+  DEBUG0(u16 pstate; struct pci_dev *pdev = pACB->pdev);
   
-  DEBUG0(PDEVSET1);
-  DEBUG0(PCI_READ_CONFIG_WORD (PDEV, PCI_STATUS, &pstate));
+  DEBUG0(pci_read_config_word(pdev, PCI_STATUS, &pstate));
   DEBUG0(if (pstate & (PCI_STATUS_SIG_SYSTEM_ERROR | PCI_STATUS_DETECTED_PARITY))\
        { printk(KERN_WARNING "DC390: PCI state = %04x!\n", pstate); \
-         PCI_WRITE_CONFIG_WORD (PDEV, PCI_STATUS, (PCI_STATUS_SIG_SYSTEM_ERROR | PCI_STATUS_DETECTED_PARITY));});
+         pci_write_config_word(pdev, PCI_STATUS, (PCI_STATUS_SIG_SYSTEM_ERROR | PCI_STATUS_DETECTED_PARITY));});
 
   dstate = DC390_read8 (DMA_Status); 
 
@@ -179,7 +178,7 @@ dc390_dma_intr (PACB pACB)
     }
   if (dstate & DMA_XFER_DONE)
     {
-       UINT residual, xferCnt; int ctr = 6000000;
+       u32 residual, xferCnt; int ctr = 6000000;
        if (! (DC390_read8 (DMA_Cmd) & READ_DIRECTION))
          {
            do
@@ -217,18 +216,18 @@ dc390_dma_intr (PACB pACB)
 static irqreturn_t __inline__
 DC390_Interrupt( int irq, void *dev_id, struct pt_regs *regs)
 {
-    PACB   pACB, pACB2;
-    PDCB   pDCB;
-    PSRB   pSRB;
-    UCHAR  sstatus=0;
-    UCHAR  phase;
-    void   (*stateV)( PACB, PSRB, PUCHAR );
-    UCHAR  istate, istatus;
+    struct dc390_acb *pACB, *pACB2;
+    struct dc390_dcb *pDCB;
+    struct dc390_srb *pSRB;
+    u8  sstatus=0;
+    u8  phase;
+    void   (*stateV)( struct dc390_acb*, struct dc390_srb*, u8 *);
+    u8  istate, istatus;
 #if DMA_INT
-    UCHAR  dstatus;
+    u8  dstatus;
 #endif
 
-    pACB = (PACB)dev_id;
+    pACB = (struct dc390_acb*)dev_id;
     for (pACB2 = dc390_pACB_start; (pACB2 && pACB2 != pACB); pACB2 = pACB2->pNextACB);
     if (!pACB2)
     {
@@ -323,7 +322,7 @@ DC390_Interrupt( int irq, void *dev_id, struct pt_regs *regs)
        ( *stateV )( pACB, pSRB, &sstatus );
 
        pSRB->ScsiPhase = sstatus & 7;
-       phase = (UCHAR) sstatus & 7;
+       phase = (u8) sstatus & 7;
        DEBUG1(printk (KERN_INFO "DC390: [%i]%s(1) (%02x)\n", phase, dc390_p1_str[phase], sstatus));
        stateV = (void *) dc390_phase1[phase];
        ( *stateV )( pACB, pSRB, &sstatus );
@@ -345,12 +344,12 @@ static irqreturn_t do_DC390_Interrupt( int irq, void *dev_id, struct pt_regs *re
 }
 
 static void
-dc390_DataOut_0( PACB pACB, PSRB pSRB, PUCHAR psstatus)
+dc390_DataOut_0( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus)
 {
-    UCHAR   sstatus;
-    PSGL    psgl;
-    UINT    ResidCnt, xferCnt;
-    UCHAR   dstate = 0;
+    u8   sstatus;
+    struct scatterlist *psgl;
+    u32    ResidCnt, xferCnt;
+    u8   dstate = 0;
 
     sstatus = *psstatus;
 
@@ -390,10 +389,10 @@ dc390_DataOut_0( PACB pACB, PSRB pSRB, PUCHAR psstatus)
        }
        else
        {
-           ResidCnt  = (UINT) DC390_read8 (Current_Fifo) & 0x1f;
-           ResidCnt |= (UINT) DC390_read8 (CtcReg_High) << 16;
-           ResidCnt |= (UINT) DC390_read8 (CtcReg_Mid) << 8; 
-           ResidCnt += (UINT) DC390_read8 (CtcReg_Low);
+           ResidCnt  = (u32) DC390_read8 (Current_Fifo) & 0x1f;
+           ResidCnt |= (u32) DC390_read8 (CtcReg_High) << 16;
+           ResidCnt |= (u32) DC390_read8 (CtcReg_Mid) << 8; 
+           ResidCnt += (u32) DC390_read8 (CtcReg_Low);
 
            xferCnt = pSRB->SGToBeXferLen - ResidCnt;
            pSRB->SGBusAddr += xferCnt;
@@ -409,13 +408,13 @@ dc390_DataOut_0( PACB pACB, PSRB pSRB, PUCHAR psstatus)
 }
 
 static void
-dc390_DataIn_0( PACB pACB, PSRB pSRB, PUCHAR psstatus)
+dc390_DataIn_0( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus)
 {
-    UCHAR   sstatus, residual, bval;
-    PSGL    psgl;
-    UINT    ResidCnt, i;
-    ULONG   xferCnt;
-    PUCHAR  ptr;
+    u8   sstatus, residual, bval;
+    struct scatterlist *psgl;
+    u32    ResidCnt, i;
+    unsigned long   xferCnt;
+    u8      *ptr;
 
     sstatus = *psstatus;
 
@@ -443,9 +442,9 @@ dc390_DataIn_0( PACB pACB, PSRB pSRB, PUCHAR psstatus)
            }
            dc390_laststatus &= ~0xff000000;
            dc390_laststatus |= dstate << 24;
-           DEBUG1(ResidCnt = ((ULONG) DC390_read8 (CtcReg_High) << 16) \
-               + ((ULONG) DC390_read8 (CtcReg_Mid) << 8)               \
-               + ((ULONG) DC390_read8 (CtcReg_Low)));
+           DEBUG1(ResidCnt = ((unsigned long) DC390_read8 (CtcReg_High) << 16) \
+               + ((unsigned long) DC390_read8 (CtcReg_Mid) << 8)               \
+               + ((unsigned long) DC390_read8 (CtcReg_Low)));
            DEBUG1(printk (KERN_DEBUG "Count_2_Zero (ResidCnt=%i,ToBeXfer=%li),", ResidCnt, pSRB->SGToBeXferLen));
 
            DC390_write8 (DMA_Cmd, READ_DIRECTION+DMA_IDLE_CMD); /* | DMA_INT */
@@ -501,11 +500,11 @@ din_1:
            dc390_laststatus &= ~0xff000000; dc390_laststatus |= bval << 24;
 
            DEBUG1(printk (KERN_DEBUG "Blast: Read %i times DMA_Status %02x", 0xa000-i, bval));
-           ResidCnt = (UINT) DC390_read8 (CtcReg_High);
+           ResidCnt = (u32) DC390_read8 (CtcReg_High);
            ResidCnt <<= 8;
-           ResidCnt |= (UINT) DC390_read8 (CtcReg_Mid);
+           ResidCnt |= (u32) DC390_read8 (CtcReg_Mid);
            ResidCnt <<= 8;
-           ResidCnt |= (UINT) DC390_read8 (CtcReg_Low);
+           ResidCnt |= (u32) DC390_read8 (CtcReg_Low);
 
            xferCnt = pSRB->SGToBeXferLen - ResidCnt;
            pSRB->SGBusAddr += xferCnt;
@@ -515,7 +514,7 @@ din_1:
            if( residual )
            {
                bval = DC390_read8 (ScsiFifo);      /* get one residual byte */
-               ptr = (PUCHAR) bus_to_virt( pSRB->SGBusAddr );
+               ptr = (u8 *) bus_to_virt( pSRB->SGBusAddr );
                *ptr = bval;
                pSRB->SGBusAddr++; xferCnt++;
                pSRB->TotalXferredLen++;
@@ -534,12 +533,12 @@ din_1:
 }
 
 static void
-dc390_Command_0( PACB pACB, PSRB pSRB, PUCHAR psstatus)
+dc390_Command_0( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus)
 {
 }
 
 static void
-dc390_Status_0( PACB pACB, PSRB pSRB, PUCHAR psstatus)
+dc390_Status_0( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus)
 {
 
     pSRB->TargetStatus = DC390_read8 (ScsiFifo);
@@ -552,7 +551,7 @@ dc390_Status_0( PACB pACB, PSRB pSRB, PUCHAR psstatus)
 }
 
 static void
-dc390_MsgOut_0( PACB pACB, PSRB pSRB, PUCHAR psstatus)
+dc390_MsgOut_0( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus)
 {
     if( pSRB->SRBState & (SRB_UNEXPECT_RESEL+SRB_ABORT_SENT) )
        *psstatus = SCSI_NOP0;
@@ -561,7 +560,7 @@ dc390_MsgOut_0( PACB pACB, PSRB pSRB, PUCHAR psstatus)
 
 
 static void __inline__
-dc390_reprog (PACB pACB, PDCB pDCB)
+dc390_reprog (struct dc390_acb* pACB, struct dc390_dcb* pDCB)
 {
   DC390_write8 (Sync_Period, pDCB->SyncPeriod);
   DC390_write8 (Sync_Offset, pDCB->SyncOffset);
@@ -573,7 +572,7 @@ dc390_reprog (PACB pACB, PDCB pDCB)
 
 #ifdef DC390_DEBUG0
 static void
-dc390_printMsg (UCHAR *MsgBuf, UCHAR len)
+dc390_printMsg (u8 *MsgBuf, u8 len)
 {
   int i;
   printk (" %02x", MsgBuf[0]);
@@ -587,7 +586,7 @@ dc390_printMsg (UCHAR *MsgBuf, UCHAR len)
 
 /* reject_msg */
 static void __inline__
-dc390_MsgIn_reject (PACB pACB, PSRB pSRB)
+dc390_MsgIn_reject (struct dc390_acb* pACB, struct dc390_srb* pSRB)
 {
   pSRB->MsgOutBuf[0] = MESSAGE_REJECT;
   pSRB->MsgCnt = 1; DC390_ENABLE_MSGOUT;
@@ -596,18 +595,18 @@ dc390_MsgIn_reject (PACB pACB, PSRB pSRB)
 
 /* abort command */
 static void __inline__
-dc390_EnableMsgOut_Abort ( PACB pACB, PSRB pSRB )
+dc390_EnableMsgOut_Abort ( struct dc390_acb* pACB, struct dc390_srb* pSRB )
 {
     pSRB->MsgOutBuf[0] = ABORT; 
     pSRB->MsgCnt = 1; DC390_ENABLE_MSGOUT;
     pSRB->pSRBDCB->DCBFlag &= ~ABORT_DEV_;
 }
 
-static PSRB
-dc390_MsgIn_QTag (PACB pACB, PDCB pDCB, UCHAR tag)
+static struct dc390_srb*
+dc390_MsgIn_QTag (struct dc390_acb* pACB, struct dc390_dcb* pDCB, u8 tag)
 {
-  PSRB lastSRB = pDCB->pGoingLast;
-  PSRB pSRB = pDCB->pGoingSRB;
+  struct dc390_srb* lastSRB = pDCB->pGoingLast;
+  struct dc390_srb* pSRB = pDCB->pGoingSRB;
 
   if (pSRB)
     {
@@ -645,9 +644,9 @@ dc390_MsgIn_QTag (PACB pACB, PDCB pDCB, UCHAR tag)
 
 /* set async transfer mode */
 static void 
-dc390_MsgIn_set_async (PACB pACB, PSRB pSRB)
+dc390_MsgIn_set_async (struct dc390_acb* pACB, struct dc390_srb* pSRB)
 {
-  PDCB pDCB = pSRB->pSRBDCB;
+  struct dc390_dcb* pDCB = pSRB->pSRBDCB;
   if (!(pSRB->SRBState & DO_SYNC_NEGO)) 
     printk (KERN_INFO "DC390: Target %i initiates Non-Sync?\n", pDCB->TargetID);
   pSRB->SRBState &= ~DO_SYNC_NEGO;
@@ -663,13 +662,13 @@ dc390_MsgIn_set_async (PACB pACB, PSRB pSRB)
 
 /* set sync transfer mode */
 static void
-dc390_MsgIn_set_sync (PACB pACB, PSRB pSRB)
+dc390_MsgIn_set_sync (struct dc390_acb* pACB, struct dc390_srb* pSRB)
 {
-  UCHAR bval;
-  USHORT wval, wval1;
-  PDCB pDCB = pSRB->pSRBDCB;
-  UCHAR oldsyncperiod = pDCB->SyncPeriod;
-  UCHAR oldsyncoffset = pDCB->SyncOffset;
+  u8 bval;
+  u16 wval, wval1;
+  struct dc390_dcb* pDCB = pSRB->pSRBDCB;
+  u8 oldsyncperiod = pDCB->SyncPeriod;
+  u8 oldsyncoffset = pDCB->SyncOffset;
   
   if (!(pSRB->SRBState & DO_SYNC_NEGO))
     {
@@ -702,7 +701,7 @@ dc390_MsgIn_set_sync (PACB pACB, PSRB pSRB)
   pDCB->SyncOffset |= pSRB->MsgInBuf[4];
   pDCB->NegoPeriod = pSRB->MsgInBuf[3];
 
-  wval = (USHORT) pSRB->MsgInBuf[3];
+  wval = (u16) pSRB->MsgInBuf[3];
   wval = wval << 2; wval -= 3; wval1 = wval / 25;      /* compute speed */
   if( (wval1 * 25) != wval) wval1++;
   bval = FAST_CLK+FAST_SCSI;   /* fast clock / fast scsi */
@@ -722,7 +721,7 @@ dc390_MsgIn_set_sync (PACB pACB, PSRB pSRB)
     }
 
   pDCB->CtrlR3 = bval;
-  pDCB->SyncPeriod = (UCHAR)wval1;
+  pDCB->SyncPeriod = (u8)wval1;
   
   if ((oldsyncperiod != wval1 || oldsyncoffset != pDCB->SyncOffset) && pDCB->TargetLUN == 0)
     {
@@ -738,20 +737,20 @@ dc390_MsgIn_set_sync (PACB pACB, PSRB pSRB)
 /* handle RESTORE_PTR */
 /* I presume, this command is already mapped, so, have to remap. */
 static void 
-dc390_restore_ptr (PACB pACB, PSRB pSRB)
+dc390_restore_ptr (struct dc390_acb* pACB, struct dc390_srb* pSRB)
 {
-    Scsi_Cmnd* pcmd = pSRB->pcmd;
-    PSGL psgl;
+    struct scsi_cmnd *pcmd = pSRB->pcmd;
+    struct scatterlist *psgl;
     pSRB->TotalXferredLen = 0;
     pSRB->SGIndex = 0;
     if (pcmd->use_sg) {
-       pSRB->pSegmentList = (PSGL) pcmd->request_buffer;
+       pSRB->pSegmentList = (struct scatterlist *)pcmd->request_buffer;
        psgl = pSRB->pSegmentList;
        //dc390_pci_sync(pSRB);
 
-       while (pSRB->TotalXferredLen + (ULONG) sg_dma_len(psgl) < pSRB->Saved_Ptr)
+       while (pSRB->TotalXferredLen + (unsigned long) sg_dma_len(psgl) < pSRB->Saved_Ptr)
        {
-           pSRB->TotalXferredLen += (ULONG) sg_dma_len(psgl);
+           pSRB->TotalXferredLen += (unsigned long) sg_dma_len(psgl);
            pSRB->SGIndex++;
            if( pSRB->SGIndex < pSRB->SGcount )
            {
@@ -773,7 +772,7 @@ dc390_restore_ptr (PACB pACB, PSRB pSRB)
 
        sg_dma_len(&pSRB->Segmentx) = pcmd->request_bufflen - pSRB->Saved_Ptr;
        pSRB->SGcount = 1;
-       pSRB->pSegmentList = (PSGL) &pSRB->Segmentx;
+       pSRB->pSegmentList = (struct scatterlist *) &pSRB->Segmentx;
     } else {
         pSRB->SGcount = 0;
         printk (KERN_INFO "DC390: RESTORE_PTR message for Transfer without Scatter-Gather ??\n");
@@ -792,8 +791,8 @@ dc390_restore_ptr (PACB pACB, PSRB pSRB)
 /* The old implementation was correct. Sigh! */
 
 /* Check if the message is complete */
-static UCHAR __inline__
-dc390_MsgIn_complete (UCHAR *msgbuf, UINT len)
+static u8 __inline__
+dc390_MsgIn_complete (u8 *msgbuf, u32 len)
 { 
   if (*msgbuf == EXTENDED_MESSAGE)
   {
@@ -809,9 +808,9 @@ dc390_MsgIn_complete (UCHAR *msgbuf, UINT len)
 
 /* read and eval received messages */
 static void
-dc390_MsgIn_0( PACB pACB, PSRB pSRB, PUCHAR psstatus)
+dc390_MsgIn_0( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus)
 {
-    PDCB   pDCB = pACB->pActiveDCB;
+    struct dc390_dcb*   pDCB = pACB->pActiveDCB;
 
     /* Read the msg */
 
@@ -856,7 +855,7 @@ dc390_MsgIn_0( PACB pACB, PSRB pSRB, PUCHAR psstatus)
            // nothing has to be done
          case COMMAND_COMPLETE: break;
            
-           // SAVE POINTER may be ignored as we have the PSRB associated with the
+           // SAVE POINTER may be ignored as we have the struct dc390_srb* associated with the
            // scsi command. Thanks, Gerard, for pointing it out.
          case SAVE_POINTERS: 
            pSRB->Saved_Ptr = pSRB->TotalXferredLen;
@@ -883,11 +882,11 @@ dc390_MsgIn_0( PACB pACB, PSRB pSRB, PUCHAR psstatus)
 
 
 static void
-dc390_DataIO_Comm( PACB pACB, PSRB pSRB, UCHAR ioDir)
+dc390_DataIO_Comm( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 ioDir)
 {
-    PSGL   psgl;
-    ULONG  lval;
-    PDCB   pDCB = pACB->pActiveDCB;
+    struct scatterlist *psgl;
+    unsigned long  lval;
+    struct dc390_dcb*   pDCB = pACB->pActiveDCB;
 
     if (pSRB == pACB->pTmpSRB)
     {
@@ -913,11 +912,11 @@ dc390_DataIO_Comm( PACB pACB, PSRB pSRB, UCHAR ioDir)
        }
        lval = pSRB->SGToBeXferLen;
        DEBUG1(printk (KERN_DEBUG " DC390: Start transfer: %li bytes (address %08lx)\n", lval, pSRB->SGBusAddr));
-       DC390_write8 (CtcReg_Low, (UCHAR) lval);
+       DC390_write8 (CtcReg_Low, (u8) lval);
        lval >>= 8;
-       DC390_write8 (CtcReg_Mid, (UCHAR) lval);
+       DC390_write8 (CtcReg_Mid, (u8) lval);
        lval >>= 8;
-       DC390_write8 (CtcReg_High, (UCHAR) lval);
+       DC390_write8 (CtcReg_High, (u8) lval);
 
        DC390_write32 (DMA_XferCnt, pSRB->SGToBeXferLen);
        DC390_write32 (DMA_XferAddr, pSRB->SGBusAddr);
@@ -956,36 +955,36 @@ dc390_DataIO_Comm( PACB pACB, PSRB pSRB, UCHAR ioDir)
 
 
 static void
-dc390_DataOutPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus)
+dc390_DataOutPhase( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus)
 {
     dc390_DataIO_Comm (pACB, pSRB, WRITE_DIRECTION);
 }
 
 static void
-dc390_DataInPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus)
+dc390_DataInPhase( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus)
 {
     dc390_DataIO_Comm (pACB, pSRB, READ_DIRECTION);
 }
 
 static void
-dc390_CommandPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus)
+dc390_CommandPhase( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus)
 {
-    PDCB   pDCB;
-    UCHAR  i, cnt;
-    PUCHAR ptr;
+    struct dc390_dcb*   pDCB;
+    u8  i, cnt;
+    u8     *ptr;
 
     DC390_write8 (ScsiCmd, RESET_ATN_CMD);
     DC390_write8 (ScsiCmd, CLEAR_FIFO_CMD);
     if( !(pSRB->SRBFlag & AUTO_REQSENSE) )
     {
-       cnt = (UCHAR) pSRB->pcmd->cmd_len;
-       ptr = (PUCHAR) pSRB->pcmd->cmnd;
+       cnt = (u8) pSRB->pcmd->cmd_len;
+       ptr = (u8 *) pSRB->pcmd->cmnd;
        for(i=0; i < cnt; i++)
            DC390_write8 (ScsiFifo, *(ptr++));
     }
     else
     {
-       UCHAR bval = 0;
+       u8 bval = 0;
        DC390_write8 (ScsiFifo, REQUEST_SENSE);
        pDCB = pACB->pActiveDCB;
        DC390_write8 (ScsiFifo, pDCB->TargetLUN << 5);
@@ -1000,7 +999,7 @@ dc390_CommandPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus)
 }
 
 static void
-dc390_StatusPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus)
+dc390_StatusPhase( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus)
 {
     DC390_write8 (ScsiCmd, CLEAR_FIFO_CMD);
     pSRB->SRBState = SRB_STATUS;
@@ -1009,11 +1008,11 @@ dc390_StatusPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus)
 }
 
 static void
-dc390_MsgOutPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus)
+dc390_MsgOutPhase( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus)
 {
-    UCHAR   bval, i, cnt;
-    PUCHAR  ptr;
-    PDCB    pDCB;
+    u8   bval, i, cnt;
+    u8     *ptr;
+    struct dc390_dcb*    pDCB;
 
     DC390_write8 (ScsiCmd, CLEAR_FIFO_CMD);
     pDCB = pACB->pActiveDCB;
@@ -1022,7 +1021,7 @@ dc390_MsgOutPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus)
        cnt = pSRB->MsgCnt;
        if( cnt )
        {
-           ptr = (PUCHAR) pSRB->MsgOutBuf;
+           ptr = (u8 *) pSRB->MsgOutBuf;
            for(i=0; i < cnt; i++)
                DC390_write8 (ScsiFifo, *(ptr++));
            pSRB->MsgCnt = 0;
@@ -1062,7 +1061,7 @@ mop1:
 }
 
 static void
-dc390_MsgInPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus)
+dc390_MsgInPhase( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus)
 {
     DC390_write8 (ScsiCmd, CLEAR_FIFO_CMD);
     if( !(pSRB->SRBState & SRB_MSGIN) )
@@ -1075,21 +1074,21 @@ dc390_MsgInPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus)
 }
 
 static void
-dc390_Nop_0( PACB pACB, PSRB pSRB, PUCHAR psstatus)
+dc390_Nop_0( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus)
 {
 }
 
 static void
-dc390_Nop_1( PACB pACB, PSRB pSRB, PUCHAR psstatus)
+dc390_Nop_1( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus)
 {
 }
 
 
 static void
-dc390_SetXferRate( PACB pACB, PDCB pDCB )
+dc390_SetXferRate( struct dc390_acb* pACB, struct dc390_dcb* pDCB )
 {
-    UCHAR  bval, i, cnt;
-    PDCB   ptr;
+    u8  bval, i, cnt;
+    struct dc390_dcb*   ptr;
 
     if( !(pDCB->TargetLUN) )
     {
@@ -1117,11 +1116,11 @@ dc390_SetXferRate( PACB pACB, PDCB pDCB )
 
 
 static void
-dc390_Disconnect( PACB pACB )
+dc390_Disconnect( struct dc390_acb* pACB )
 {
-    PDCB   pDCB;
-    PSRB   pSRB, psrb;
-    UCHAR  i, cnt;
+    struct dc390_dcb *pDCB;
+    struct dc390_srb *pSRB, *psrb;
+    u8  i, cnt;
 
     DEBUG0(printk(KERN_INFO "DISC,"));
 
@@ -1198,11 +1197,11 @@ disc1:
 
 
 static void
-dc390_Reselect( PACB pACB )
+dc390_Reselect( struct dc390_acb* pACB )
 {
-    PDCB   pDCB;
-    PSRB   pSRB;
-    UCHAR  id, lun;
+    struct dc390_dcb*   pDCB;
+    struct dc390_srb*   pSRB;
+    u8  id, lun;
 
     DEBUG0(printk(KERN_INFO "RSEL,"));
     pACB->Connected = 1;
@@ -1283,10 +1282,10 @@ dc390_Reselect( PACB pACB )
     DC390_write8 (ScsiCmd, MSG_ACCEPTED_CMD);  /* ;to release the /ACK signal */
 }
 
-static UCHAR __inline__
+static u8 __inline__
 dc390_tagq_blacklist (char* name)
 {
-   UCHAR i;
+   u8 i;
    for(i=0; i<BADDEVCNT; i++)
      if (memcmp (name, dc390_baddevname1[i], 28) == 0)
        return 1;
@@ -1295,7 +1294,7 @@ dc390_tagq_blacklist (char* name)
    
 
 static void 
-dc390_disc_tagq_set (PDCB pDCB, PSCSI_INQDATA ptr)
+dc390_disc_tagq_set (struct dc390_dcb* pDCB, PSCSI_INQDATA ptr)
 {
    /* Check for SCSI format (ANSI and Response data format) */
    if ( (ptr->Vers & 0x07) >= 2 || (ptr->RDF & 0x0F) == 2 )
@@ -1317,9 +1316,9 @@ dc390_disc_tagq_set (PDCB pDCB, PSCSI_INQDATA ptr)
 
 
 static void 
-dc390_add_dev (PACB pACB, PDCB pDCB, PSCSI_INQDATA ptr)
+dc390_add_dev (struct dc390_acb* pACB, struct dc390_dcb* pDCB, PSCSI_INQDATA ptr)
 {
-   UCHAR bval1 = ptr->DevType & SCSI_DEVTYPE;
+   u8 bval1 = ptr->DevType & SCSI_DEVTYPE;
    pDCB->DevType = bval1;
    /* if (bval1 == TYPE_DISK || bval1 == TYPE_MOD) */
        dc390_disc_tagq_set (pDCB, ptr);
@@ -1327,22 +1326,24 @@ dc390_add_dev (PACB pACB, PDCB pDCB, PSCSI_INQDATA ptr)
 
 
 static void
-dc390_SRBdone( PACB pACB, PDCB pDCB, PSRB pSRB )
+dc390_SRBdone( struct dc390_acb* pACB, struct dc390_dcb* pDCB, struct dc390_srb* pSRB )
 {
-    UCHAR  bval, status, i;
-    PSCSICMD pcmd;
+    u8  bval, status, i;
+    struct scsi_cmnd *pcmd;
     PSCSI_INQDATA  ptr;
-    PSGL   ptr2;
-    ULONG  swlval;
+    struct scatterlist *ptr2;
+    unsigned long  swlval;
 
     pcmd = pSRB->pcmd;
     /* KG: Moved pci_unmap here */
     dc390_pci_unmap(pSRB);
 
     status = pSRB->TargetStatus;
-    ptr = (PSCSI_INQDATA) (pcmd->request_buffer);
-    if( pcmd->use_sg )
-       ptr = (PSCSI_INQDATA) (page_address(((PSGL) ptr)->page) + ((PSGL) ptr)->offset);
+    if (pcmd->use_sg) {
+           ptr2 = (struct scatterlist *) (pcmd->request_buffer);
+           ptr = (PSCSI_INQDATA) (page_address(ptr2->page) + ptr2->offset);
+    } else
+           ptr = (PSCSI_INQDATA) (pcmd->request_buffer);
        
     DEBUG0(printk (" SRBdone (%02x,%08x), SRB %p, pid %li\n", status, pcmd->result,\
                pSRB, pcmd->pid));
@@ -1379,7 +1380,7 @@ dc390_SRBdone( PACB pACB, PDCB pDCB, PSRB pSRB )
        }
        if(pSRB->RetryCnt == 0)
        {
-           //(UINT)(pSRB->pcmd->cmnd[0]) = pSRB->Segment0[0];
+           //(u32)(pSRB->pcmd->cmnd[0]) = pSRB->Segment0[0];
            pSRB->TotalXferredLen = pSRB->SavedTotXLen;
            if( (pSRB->TotalXferredLen) &&
                (pSRB->TotalXferredLen >= pcmd->underflow) )
@@ -1387,7 +1388,7 @@ dc390_SRBdone( PACB pACB, PDCB pDCB, PSRB pSRB )
            else
                  pcmd->result = MK_RES_LNX(DRIVER_SENSE,DID_OK,0,CHECK_CONDITION);
                  REMOVABLEDEBUG(printk(KERN_INFO "Cmd=%02x,Result=%08x,XferL=%08x\n",pSRB->pcmd->cmnd[0],\
-                       (UINT) pcmd->result, (UINT) pSRB->TotalXferredLen));
+                       (u32) pcmd->result, (u32) pSRB->TotalXferredLen));
            goto ckc_e;
        }
        else /* Retry */
@@ -1395,19 +1396,17 @@ dc390_SRBdone( PACB pACB, PDCB pDCB, PSRB pSRB )
            pSRB->RetryCnt--;
            pSRB->AdaptStatus = 0;
            pSRB->TargetStatus = 0;
-           //*((PUINT) &(pSRB->CmdBlock[0])) = pSRB->Segment0[0];
-           //*((PUINT) &(pSRB->CmdBlock[4])) = pSRB->Segment0[1];
            /* Don't retry on TEST_UNIT_READY */
            if( pSRB->pcmd->cmnd[0] == TEST_UNIT_READY /* || pSRB->pcmd->cmnd[0] == START_STOP */)
            {
                pcmd->result = MK_RES_LNX(DRIVER_SENSE,DID_OK,0,CHECK_CONDITION);
                REMOVABLEDEBUG(printk(KERN_INFO "Cmd=%02x, Result=%08x, XferL=%08x\n",pSRB->pcmd->cmnd[0],\
-                      (UINT) pcmd->result, (UINT) pSRB->TotalXferredLen));
+                      (u32) pcmd->result, (u32) pSRB->TotalXferredLen));
                goto ckc_e;
            }
            SET_RES_DRV(pcmd->result,DRIVER_SENSE);
            pcmd->use_sg         = pSRB->SavedSGCount;
-           //pSRB->ScsiCmdLen   = (UCHAR) (pSRB->Segment1[0] >> 8);
+           //pSRB->ScsiCmdLen   = (u8) (pSRB->Segment1[0] >> 8);
            DEBUG0 (printk ("DC390: RETRY pid %li (%02x), target %02i-%02i\n", pcmd->pid, pcmd->cmnd[0], pcmd->device->id, pcmd->device->lun));
            pSRB->SGIndex = 0;
            pSRB->TotalXferredLen = 0;
@@ -1437,14 +1436,14 @@ dc390_SRBdone( PACB pACB, PDCB pDCB, PSRB pSRB )
                    ptr2++;
                }
                REMOVABLEDEBUG(printk(KERN_INFO "XferredLen=%08x,NotXferLen=%08x\n",\
-                       (UINT) pSRB->TotalXferredLen, (UINT) swlval));
+                       (u32) pSRB->TotalXferredLen, (u32) swlval));
            }
            dc390_RequestSense( pACB, pDCB, pSRB );
            return;
        }
        else if( status_byte(status) == QUEUE_FULL )
        {
-           bval = (UCHAR) pDCB->GoingSRBCnt;
+           bval = (u8) pDCB->GoingSRBCnt;
            bval--;
            pDCB->MaxCommand = bval;
            dc390_freetag (pDCB, pSRB);
@@ -1569,12 +1568,12 @@ ckc_e:
 
 /* Remove all SRBs from Going list and inform midlevel */
 static void
-dc390_DoingSRB_Done( PACB pACB, PSCSICMD cmd )
+dc390_DoingSRB_Done(struct dc390_acb* pACB, struct scsi_cmnd *cmd)
 {
-    PDCB   pDCB, pdcb;
-    PSRB   psrb, psrb2;
-    UCHAR  i;
-    PSCSICMD pcmd;
+    struct dc390_dcb *pDCB, *pdcb;
+    struct dc390_srb *psrb, *psrb2;
+    u8  i;
+    struct scsi_cmnd *pcmd;
 
     pDCB = pACB->pLinkDCB;
     pdcb = pDCB;
@@ -1610,7 +1609,7 @@ dc390_DoingSRB_Done( PACB pACB, PSCSICMD cmd )
 
 
 static void
-dc390_ResetSCSIBus( PACB pACB )
+dc390_ResetSCSIBus( struct dc390_acb* pACB )
 {
     //DC390_write8 (ScsiCmd, RST_DEVICE_CMD);
     //udelay (250);
@@ -1625,7 +1624,7 @@ dc390_ResetSCSIBus( PACB pACB )
 }
 
 static void
-dc390_ScsiRstDetect( PACB pACB )
+dc390_ScsiRstDetect( struct dc390_acb* pACB )
 {
     printk ("DC390: Rst_Detect: laststat = %08x\n", dc390_laststatus);
     //DEBUG0(printk(KERN_INFO "RST_DETECT,"));
@@ -1658,9 +1657,9 @@ dc390_ScsiRstDetect( PACB pACB )
 
 
 static void __inline__
-dc390_RequestSense( PACB pACB, PDCB pDCB, PSRB pSRB )
+dc390_RequestSense( struct dc390_acb* pACB, struct dc390_dcb* pDCB, struct dc390_srb* pSRB )
 {
-    PSCSICMD  pcmd;
+    struct scsi_cmnd *pcmd;
 
     pcmd = pSRB->pcmd;
 
@@ -1668,9 +1667,9 @@ dc390_RequestSense( PACB pACB, PDCB pDCB, PSRB pSRB )
            pcmd->cmnd[0], pDCB->TargetID, pDCB->TargetLUN));
 
     pSRB->SRBFlag |= AUTO_REQSENSE;
-    //pSRB->Segment0[0] = (UINT) pSRB->CmdBlock[0];
-    //pSRB->Segment0[1] = (UINT) pSRB->CmdBlock[4];
-    //pSRB->Segment1[0] = ((UINT)(pcmd->cmd_len) << 8) + pSRB->SGcount;
+    //pSRB->Segment0[0] = (u32) pSRB->CmdBlock[0];
+    //pSRB->Segment0[1] = (u32) pSRB->CmdBlock[4];
+    //pSRB->Segment1[0] = ((u32)(pcmd->cmd_len) << 8) + pSRB->SGcount;
     //pSRB->Segment1[1] = pSRB->TotalXferredLen;
     pSRB->SavedSGCount = pcmd->use_sg;
     pSRB->SavedTotXLen = pSRB->TotalXferredLen;
@@ -1683,8 +1682,8 @@ dc390_RequestSense( PACB pACB, PDCB pDCB, PSRB pSRB )
 
     //pSRB->CmdBlock[0] = REQUEST_SENSE;
     //pSRB->CmdBlock[1] = pDCB->TargetLUN << 5;
-    //(USHORT) pSRB->CmdBlock[2] = 0;
-    //(USHORT) pSRB->CmdBlock[4] = sizeof(pcmd->sense_buffer);
+    //(u16) pSRB->CmdBlock[2] = 0;
+    //(u16) pSRB->CmdBlock[4] = sizeof(pcmd->sense_buffer);
     //pSRB->ScsiCmdLen = 6;
 
     pSRB->TotalXferredLen = 0;
@@ -1698,7 +1697,7 @@ dc390_RequestSense( PACB pACB, PDCB pDCB, PSRB pSRB )
 
 
 static void __inline__
-dc390_InvalidCmd( PACB pACB )
+dc390_InvalidCmd( struct dc390_acb* pACB )
 {
     if( pACB->pActiveDCB->pActiveSRB->SRBState & (SRB_START_+SRB_MSGOUT) )
        DC390_write8 (ScsiCmd, CLEAR_FIFO_CMD);
index adaa428931b5b094f1a68a0abc1e0c287ebc6416..239d5c0e580f718f366456fce02111f65d3a899d 100644 (file)
 #endif
 #define DCBDEBUG1(x) C_NOP
 
-/* Includes */
+#include <linux/config.h>
 #include <linux/module.h>
-#include <asm/dma.h>
-#include <asm/io.h>
-#include <asm/system.h>
 #include <linux/delay.h>
 #include <linux/signal.h>
 #include <linux/sched.h>
 #include <linux/pci.h>
 #include <linux/proc_fs.h>
 #include <linux/string.h>
-#include <linux/ctype.h>
 #include <linux/mm.h>
-#include <linux/config.h>
-#include <linux/version.h>
 #include <linux/blkdev.h>
 #include <linux/timer.h>
 #include <linux/interrupt.h>
+#include <linux/init.h>
+#include <linux/spinlock.h>
+#include <asm/io.h>
 
+#if 0
+#include <scsi/scsi.h>
+#include <scsi/scsi_cmnd.h>
+#include <scsi/scsi_device.h>
+#else
 #include "scsi.h"
+#endif
 #include <scsi/scsi_host.h>
-#include <linux/stat.h>
 #include <scsi/scsicam.h>
 
 #include "dc390.h"
 
 #define PCI_DEVICE_ID_AMD53C974        PCI_DEVICE_ID_AMD_SCSI
 
-/* Locking */
-
-/* Note: Starting from 2.1.9x, the mid-level scsi code issues a 
- * spinlock_irqsave (&io_request_lock) before calling the driver's 
- * routines, so we don't need to lock, except in the IRQ handler.
- * The policy 3, let the midlevel scsi code do the io_request_locks
- * and us locking on a driver specific lock, shouldn't hurt anybody; it
- * just causes a minor performance degradation for setting the locks.
- */
-
-/* spinlock things
- * level 3: lock on both adapter specific locks and (global) io_request_lock
- * level 2: lock on adapter specific locks only
- * level 1: rely on the locking of the mid level code (io_request_lock)
- * undef  : traditional save_flags; cli; restore_flags;
- */
-
-#include <linux/init.h>
-#include <linux/spinlock.h>
 
-static struct pci_device_id tmscsim_pci_tbl[] = {
+ static struct pci_device_id tmscsim_pci_tbl[] = {
        {
                .vendor         = PCI_VENDOR_ID_AMD,
                .device         = PCI_DEVICE_ID_AMD53C974,
@@ -283,62 +266,47 @@ static struct pci_device_id tmscsim_pci_tbl[] = {
 };
 MODULE_DEVICE_TABLE(pci, tmscsim_pci_tbl);
 
-/* These macros are used for uniform access to 2.0.x and 2.1.x PCI config space*/
-
-#define PDEV pdev
-#define PDEVDECL struct pci_dev *pdev
-#define PDEVDECL0 struct pci_dev *pdev = NULL
-#define PDEVDECL1 struct pci_dev *pdev
-#define PDEVSET pACB->pdev=pdev
-#define PDEVSET1 pdev=pACB->pdev
-#define PCI_WRITE_CONFIG_BYTE(pd, rv, bv) pci_write_config_byte (pd, rv, bv)
-#define PCI_READ_CONFIG_BYTE(pd, rv, bv) pci_read_config_byte (pd, rv, bv)
-#define PCI_WRITE_CONFIG_WORD(pd, rv, bv) pci_write_config_word (pd, rv, bv)
-#define PCI_READ_CONFIG_WORD(pd, rv, bv) pci_read_config_word (pd, rv, bv)
-#define PCI_PRESENT (1)
-#define PCI_GET_IO_AND_IRQ do{io_port = pci_resource_start (pdev, 0); irq = pdev->irq;} while(0)
-
 #include "tmscsim.h"
 
-static UCHAR dc390_StartSCSI( PACB pACB, PDCB pDCB, PSRB pSRB );
-static void dc390_DataOut_0( PACB pACB, PSRB pSRB, PUCHAR psstatus);
-static void dc390_DataIn_0( PACB pACB, PSRB pSRB, PUCHAR psstatus);
-static void dc390_Command_0( PACB pACB, PSRB pSRB, PUCHAR psstatus);
-static void dc390_Status_0( PACB pACB, PSRB pSRB, PUCHAR psstatus);
-static void dc390_MsgOut_0( PACB pACB, PSRB pSRB, PUCHAR psstatus);
-static void dc390_MsgIn_0( PACB pACB, PSRB pSRB, PUCHAR psstatus);
-static void dc390_DataOutPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus);
-static void dc390_DataInPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus);
-static void dc390_CommandPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus);
-static void dc390_StatusPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus);
-static void dc390_MsgOutPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus);
-static void dc390_MsgInPhase( PACB pACB, PSRB pSRB, PUCHAR psstatus);
-static void dc390_Nop_0( PACB pACB, PSRB pSRB, PUCHAR psstatus);
-static void dc390_Nop_1( PACB pACB, PSRB pSRB, PUCHAR psstatus);
-
-static void dc390_SetXferRate( PACB pACB, PDCB pDCB );
-static void dc390_Disconnect( PACB pACB );
-static void dc390_Reselect( PACB pACB );
-static void dc390_SRBdone( PACB pACB, PDCB pDCB, PSRB pSRB );
-static void dc390_DoingSRB_Done( PACB pACB, PSCSICMD cmd );
-static void dc390_ScsiRstDetect( PACB pACB );
-static void dc390_ResetSCSIBus( PACB pACB );
-static void __inline__ dc390_RequestSense( PACB pACB, PDCB pDCB, PSRB pSRB );
-static void __inline__ dc390_InvalidCmd( PACB pACB );
-static void __inline__ dc390_EnableMsgOut_Abort (PACB, PSRB);
+static u8 dc390_StartSCSI( struct dc390_acb* pACB, struct dc390_dcb* pDCB, struct dc390_srb* pSRB );
+static void dc390_DataOut_0( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus);
+static void dc390_DataIn_0( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus);
+static void dc390_Command_0( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus);
+static void dc390_Status_0( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus);
+static void dc390_MsgOut_0( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus);
+static void dc390_MsgIn_0( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus);
+static void dc390_DataOutPhase( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus);
+static void dc390_DataInPhase( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus);
+static void dc390_CommandPhase( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus);
+static void dc390_StatusPhase( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus);
+static void dc390_MsgOutPhase( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus);
+static void dc390_MsgInPhase( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus);
+static void dc390_Nop_0( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus);
+static void dc390_Nop_1( struct dc390_acb* pACB, struct dc390_srb* pSRB, u8 *psstatus);
+
+static void dc390_SetXferRate( struct dc390_acb* pACB, struct dc390_dcb* pDCB );
+static void dc390_Disconnect( struct dc390_acb* pACB );
+static void dc390_Reselect( struct dc390_acb* pACB );
+static void dc390_SRBdone( struct dc390_acb* pACB, struct dc390_dcb* pDCB, struct dc390_srb* pSRB );
+static void dc390_DoingSRB_Done( struct dc390_acb* pACB, struct scsi_cmnd * cmd);
+static void dc390_ScsiRstDetect( struct dc390_acb* pACB );
+static void dc390_ResetSCSIBus( struct dc390_acb* pACB );
+static void __inline__ dc390_RequestSense( struct dc390_acb* pACB, struct dc390_dcb* pDCB, struct dc390_srb* pSRB );
+static void __inline__ dc390_InvalidCmd( struct dc390_acb* pACB );
+static void __inline__ dc390_EnableMsgOut_Abort (struct dc390_acb*, struct dc390_srb*);
 static irqreturn_t do_DC390_Interrupt( int, void *, struct pt_regs *);
 
-static int    dc390_initAdapter( PSH psh, ULONG io_port, UCHAR Irq, UCHAR index );
-static void   dc390_updateDCB (PACB pACB, PDCB pDCB);
+static int    dc390_initAdapter(struct Scsi_Host *psh, unsigned long io_port, u8 Irq, u8 index );
+static void   dc390_updateDCB (struct dc390_acb* pACB, struct dc390_dcb* pDCB);
 
 static int DC390_proc_info (struct Scsi_Host *shpnt, char *buffer, char **start,
                            off_t offset, int length, int inout);
 
-static PACB    dc390_pACB_start= NULL;
-static PACB    dc390_pACB_current = NULL;
-static ULONG   dc390_lastabortedpid = 0;
-static UINT    dc390_laststatus = 0;
-static UCHAR   dc390_adapterCnt = 0;
+static struct dc390_acb*       dc390_pACB_start= NULL;
+static struct dc390_acb*       dc390_pACB_current = NULL;
+static unsigned long   dc390_lastabortedpid = 0;
+static u32     dc390_laststatus = 0;
+static u8      dc390_adapterCnt = 0;
 
 /* Startup values, to be overriden on the commandline */
 static int tmscsim[] = {-2, -2, -2, -2, -2, -2};
@@ -351,7 +319,7 @@ MODULE_DESCRIPTION("SCSI host adapter driver for Tekram DC390 and other AMD53C97
 MODULE_LICENSE("GPL");
 MODULE_SUPPORTED_DEVICE("sd,sr,sg,st");
 
-static PVOID dc390_phase0[]={
+static void *dc390_phase0[]={
        dc390_DataOut_0,
        dc390_DataIn_0,
        dc390_Command_0,
@@ -363,7 +331,7 @@ static PVOID dc390_phase0[]={
        dc390_Nop_1
        };
 
-static PVOID dc390_phase1[]={
+static void *dc390_phase1[]={
        dc390_DataOutPhase,
        dc390_DataInPhase,
        dc390_CommandPhase,
@@ -402,15 +370,15 @@ static char* dc390_p1_str[] = {
 #endif   
 
 /* Devices erroneously pretending to be able to do TagQ */
-static UCHAR  dc390_baddevname1[2][28] ={
+static u8  dc390_baddevname1[2][28] ={
        "SEAGATE ST3390N         9546",
        "HP      C3323-300       4269"};
 #define BADDEVCNT      2
 
 static char*  dc390_adapname = "DC390";
-static UCHAR  dc390_eepromBuf[MAX_ADAPTER_NUM][EE_LEN];
-static UCHAR  dc390_clock_period1[] = {4, 5, 6, 7, 8, 10, 13, 20};
-static UCHAR  dc390_clock_speed[] = {100,80,67,57,50, 40, 31, 20};
+static u8  dc390_eepromBuf[MAX_ADAPTER_NUM][EE_LEN];
+static u8  dc390_clock_period1[] = {4, 5, 6, 7, 8, 10, 13, 20};
+static u8  dc390_clock_speed[] = {100,80,67,57,50, 40, 31, 20};
 
 /***********************************************************************
  * Functions for access to DC390 EEPROM
@@ -419,46 +387,45 @@ static UCHAR  dc390_clock_speed[] = {100,80,67,57,50, 40, 31, 20};
  **********************************************************************/
 
 
-static void __devinit dc390_EnDisableCE( UCHAR mode, PDEVDECL, PUCHAR regval )
+static void __devinit dc390_EnDisableCE(u8 mode, struct pci_dev *pdev, u8 *regval)
 {
-    UCHAR bval;
+    u8 bval;
 
     bval = 0;
     if(mode == ENABLE_CE)
        *regval = 0xc0;
     else
        *regval = 0x80;
-    PCI_WRITE_CONFIG_BYTE(PDEV, *regval, bval);
+    pci_write_config_byte(pdev, *regval, bval);
     if(mode == DISABLE_CE)
-        PCI_WRITE_CONFIG_BYTE(PDEV, *regval, bval);
+        pci_write_config_byte(pdev, *regval, bval);
     udelay(160);
 }
 
 
 /* Override EEprom values with explicitly set values */
-static void __devinit dc390_EEprom_Override (UCHAR index)
+static void __devinit dc390_EEprom_Override (u8 index)
 {
-    PUCHAR ptr;
-    UCHAR  id;
-    ptr = (PUCHAR) dc390_eepromBuf[index];
+    u8 *ptr = (u8 *) dc390_eepromBuf[index];
+    u8 id;
     
     /* Adapter Settings */
     if (tmscsim[0] != -2)
-       ptr[EE_ADAPT_SCSI_ID] = (UCHAR)tmscsim[0];      /* Adapter ID */
+       ptr[EE_ADAPT_SCSI_ID] = (u8)tmscsim[0]; /* Adapter ID */
     if (tmscsim[3] != -2)
-       ptr[EE_MODE2] = (UCHAR)tmscsim[3];
+       ptr[EE_MODE2] = (u8)tmscsim[3];
     if (tmscsim[5] != -2)
        ptr[EE_DELAY] = tmscsim[5];                     /* Reset delay */
     if (tmscsim[4] != -2)
-       ptr[EE_TAG_CMD_NUM] = (UCHAR)tmscsim[4];        /* Tagged Cmds */
+       ptr[EE_TAG_CMD_NUM] = (u8)tmscsim[4];   /* Tagged Cmds */
     
     /* Device Settings */
     for (id = 0; id < MAX_SCSI_ID; id++)
     {
        if (tmscsim[2] != -2)
-               ptr[id<<2] = (UCHAR)tmscsim[2];         /* EE_MODE1 */
+               ptr[id<<2] = (u8)tmscsim[2];            /* EE_MODE1 */
        if (tmscsim[1] != -2)
-               ptr[(id<<2) + 1] = (UCHAR)tmscsim[1];   /* EE_Speed */
+               ptr[(id<<2) + 1] = (u8)tmscsim[1];      /* EE_Speed */
     }
 }
 
@@ -527,36 +494,36 @@ static int __init dc390_setup (char *str)
 __setup("tmscsim=", dc390_setup);
 #endif
 
-static void __devinit dc390_EEpromOutDI( PDEVDECL, PUCHAR regval, UCHAR Carry )
+static void __devinit dc390_EEpromOutDI(struct pci_dev *pdev, u8 *regval, u8 Carry)
 {
-    UCHAR bval;
+    u8 bval;
 
     bval = 0;
     if(Carry)
     {
        bval = 0x40;
        *regval = 0x80;
-       PCI_WRITE_CONFIG_BYTE(PDEV, *regval, bval);
+       pci_write_config_byte(pdev, *regval, bval);
     }
     udelay(160);
     bval |= 0x80;
-    PCI_WRITE_CONFIG_BYTE(PDEV, *regval, bval);
+    pci_write_config_byte(pdev, *regval, bval);
     udelay(160);
     bval = 0;
-    PCI_WRITE_CONFIG_BYTE(PDEV, *regval, bval);
+    pci_write_config_byte(pdev, *regval, bval);
     udelay(160);
 }
 
 
-static UCHAR __devinit dc390_EEpromInDO( PDEVDECL )
+static u8 __devinit dc390_EEpromInDO(struct pci_dev *pdev)
 {
-    UCHAR bval;
+    u8 bval;
 
-    PCI_WRITE_CONFIG_BYTE(PDEV, 0x80, 0x80);
+    pci_write_config_byte(pdev, 0x80, 0x80);
     udelay(160);
-    PCI_WRITE_CONFIG_BYTE(PDEV, 0x80, 0x40);
+    pci_write_config_byte(pdev, 0x80, 0x40);
     udelay(160);
-    PCI_READ_CONFIG_BYTE(PDEV, 0x00, &bval);
+    pci_read_config_byte(pdev, 0x00, &bval);
     if(bval == 0x22)
        return(1);
     else
@@ -564,68 +531,68 @@ static UCHAR __devinit dc390_EEpromInDO( PDEVDECL )
 }
 
 
-static USHORT __devinit dc390_EEpromGetData1( PDEVDECL )
+static u16 __devinit dc390_EEpromGetData1(struct pci_dev *pdev)
 {
-    UCHAR i;
-    UCHAR carryFlag;
-    USHORT wval;
+    u8 i;
+    u8 carryFlag;
+    u16 wval;
 
     wval = 0;
     for(i=0; i<16; i++)
     {
        wval <<= 1;
-       carryFlag = dc390_EEpromInDO(PDEV);
+       carryFlag = dc390_EEpromInDO(pdev);
        wval |= carryFlag;
     }
     return(wval);
 }
 
 
-static void __devinit dc390_Prepare( PDEVDECL, PUCHAR regval, UCHAR EEpromCmd )
+static void __devinit dc390_Prepare(struct pci_dev *pdev, u8 *regval, u8 EEpromCmd)
 {
-    UCHAR i,j;
-    UCHAR carryFlag;
+    u8 i,j;
+    u8 carryFlag;
 
     carryFlag = 1;
     j = 0x80;
     for(i=0; i<9; i++)
     {
-       dc390_EEpromOutDI(PDEV,regval,carryFlag);
+       dc390_EEpromOutDI(pdev, regval, carryFlag);
        carryFlag = (EEpromCmd & j) ? 1 : 0;
        j >>= 1;
     }
 }
 
 
-static void __devinit dc390_ReadEEprom( PDEVDECL, PUSHORT ptr)
+static void __devinit dc390_ReadEEprom(struct pci_dev *pdev, u16 *ptr)
 {
-    UCHAR   regval,cmd;
-    UCHAR   i;
+    u8   regval,cmd;
+    u8   i;
 
     cmd = EEPROM_READ;
     for(i=0; i<0x40; i++)
     {
-       dc390_EnDisableCE(ENABLE_CE, PDEV, &regval);
-       dc390_Prepare(PDEV, &regval, cmd++);
-       *ptr++ = dc390_EEpromGetData1(PDEV);
-       dc390_EnDisableCE(DISABLE_CE, PDEV, &regval);
+       dc390_EnDisableCE(ENABLE_CE, pdev, &regval);
+       dc390_Prepare(pdev, &regval, cmd++);
+       *ptr++ = dc390_EEpromGetData1(pdev);
+       dc390_EnDisableCE(DISABLE_CE, pdev, &regval);
     }
 }
 
 
-static void __devinit dc390_interpret_delay (UCHAR index)
+static void __devinit dc390_interpret_delay (u8 index)
 {
     char interpd [] = {1,3,5,10,16,30,60,120};
     dc390_eepromBuf[index][EE_DELAY] = interpd [dc390_eepromBuf[index][EE_DELAY]];
 }
 
-static UCHAR __devinit dc390_CheckEEpromCheckSum( PDEVDECL, UCHAR index )
+static u8 __devinit dc390_CheckEEpromCheckSum(struct pci_dev *pdev, u8 index)
 {
-    UCHAR  i;
+    u8  i;
     char  EEbuf[128];
-    USHORT wval, *ptr = (PUSHORT)EEbuf;
+    u16 wval, *ptr = (u16 *)EEbuf;
 
-    dc390_ReadEEprom( PDEV, ptr );
+    dc390_ReadEEprom(pdev, ptr);
     memcpy (dc390_eepromBuf[index], EEbuf, EE_ADAPT_SCSI_ID);
     memcpy (&dc390_eepromBuf[index][EE_ADAPT_SCSI_ID], 
            &EEbuf[REAL_EE_ADAPT_SCSI_ID], EE_LEN - EE_ADAPT_SCSI_ID);
@@ -643,9 +610,9 @@ static UCHAR __devinit dc390_CheckEEpromCheckSum( PDEVDECL, UCHAR index )
  * (DCBs, SRBs, Queueing)
  *
  **********************************************************************/
-static PDCB __inline__ dc390_findDCB ( PACB pACB, UCHAR id, UCHAR lun)
+static struct dc390_dcb __inline__ *dc390_findDCB ( struct dc390_acb* pACB, u8 id, u8 lun)
 {
-   PDCB pDCB = pACB->pLinkDCB; if (!pDCB) return 0;
+   struct dc390_dcb* pDCB = pACB->pLinkDCB; if (!pDCB) return 0;
    while (pDCB->TargetID != id || pDCB->TargetLUN != lun)
      {
        pDCB = pDCB->pNextDCB;
@@ -675,26 +642,10 @@ static PDCB __inline__ dc390_findDCB ( PACB pACB, UCHAR id, UCHAR lun)
  * Lists are managed using two pointers and eventually a counter
  */
 
-
-#if 0
-/* Look for a SCSI cmd in a SRB queue */
-static PSRB dc390_find_cmd_in_SRBq (PSCSICMD cmd, PSRB queue)
-{
-    PSRB q = queue;
-    while (q)
-    {
-       if (q->pcmd == cmd) return q;
-       q = q->pNextSRB;
-       if (q == queue) return 0;
-    }
-    return q;
-}
-#endif
-
 /* Return next free SRB */
-static __inline__ PSRB dc390_Free_get ( PACB pACB )
+static __inline__ struct dc390_srb* dc390_Free_get ( struct dc390_acb* pACB )
 {
-    PSRB   pSRB;
+    struct dc390_srb*   pSRB;
 
     pSRB = pACB->pFreeSRB;
     DEBUG0(printk ("DC390: Get Free SRB %p\n", pSRB));
@@ -708,7 +659,7 @@ static __inline__ PSRB dc390_Free_get ( PACB pACB )
 }
 
 /* Insert SRB oin top of free list */
-static __inline__ void dc390_Free_insert (PACB pACB, PSRB pSRB)
+static __inline__ void dc390_Free_insert (struct dc390_acb* pACB, struct dc390_srb* pSRB)
 {
     DEBUG0(printk ("DC390: Free SRB %p\n", pSRB));
     pSRB->pNextSRB = pACB->pFreeSRB;
@@ -717,7 +668,7 @@ static __inline__ void dc390_Free_insert (PACB pACB, PSRB pSRB)
 
 
 /* Inserts a SRB to the top of the Waiting list */
-static __inline__ void dc390_Waiting_insert ( PDCB pDCB, PSRB pSRB )
+static __inline__ void dc390_Waiting_insert ( struct dc390_dcb* pDCB, struct dc390_srb* pSRB )
 {
     DEBUG0(printk ("DC390: Insert pSRB %p cmd %li to Waiting\n", pSRB, pSRB->pcmd->pid));
     pSRB->pNextSRB = pDCB->pWaitingSRB;
@@ -729,7 +680,7 @@ static __inline__ void dc390_Waiting_insert ( PDCB pDCB, PSRB pSRB )
 
 
 /* Queue SRB to waiting list */
-static __inline__ void dc390_Waiting_append ( PDCB pDCB, PSRB pSRB)
+static __inline__ void dc390_Waiting_append ( struct dc390_dcb* pDCB, struct dc390_srb* pSRB)
 {
        DEBUG0(printk ("DC390: Append pSRB %p cmd %li to Waiting\n", pSRB, pSRB->pcmd->pid));
     if( pDCB->pWaitingSRB )
@@ -743,7 +694,7 @@ static __inline__ void dc390_Waiting_append ( PDCB pDCB, PSRB pSRB)
     pDCB->pDCBACB->CmdInQ++;
 }
 
-static __inline__ void dc390_Going_append (PDCB pDCB, PSRB pSRB)
+static __inline__ void dc390_Going_append (struct dc390_dcb* pDCB, struct dc390_srb* pSRB)
 {
     pDCB->GoingSRBCnt++;
     DEBUG0(printk("DC390: Append SRB %p to Going\n", pSRB));
@@ -758,14 +709,14 @@ static __inline__ void dc390_Going_append (PDCB pDCB, PSRB pSRB)
     pSRB->pNextSRB = NULL;
 }
 
-static __inline__ void dc390_Going_remove (PDCB pDCB, PSRB pSRB)
+static __inline__ void dc390_Going_remove (struct dc390_dcb* pDCB, struct dc390_srb* pSRB)
 {
        DEBUG0(printk("DC390: Remove SRB %p from Going\n", pSRB));
    if (pSRB == pDCB->pGoingSRB)
        pDCB->pGoingSRB = pSRB->pNextSRB;
    else
      {
-       PSRB psrb = pDCB->pGoingSRB;
+       struct dc390_srb* psrb = pDCB->pGoingSRB;
        while (psrb && psrb->pNextSRB != pSRB)
          psrb = psrb->pNextSRB;
        if (!psrb) 
@@ -778,7 +729,7 @@ static __inline__ void dc390_Going_remove (PDCB pDCB, PSRB pSRB)
 }
 
 /* Moves SRB from Going list to the top of Waiting list */
-static void dc390_Going_to_Waiting ( PDCB pDCB, PSRB pSRB )
+static void dc390_Going_to_Waiting ( struct dc390_dcb* pDCB, struct dc390_srb* pSRB )
 {
     DEBUG0(printk(KERN_INFO "DC390: Going_to_Waiting (SRB %p) pid = %li\n", pSRB, pSRB->pcmd->pid));
     /* Remove SRB from Going */
@@ -789,7 +740,7 @@ static void dc390_Going_to_Waiting ( PDCB pDCB, PSRB pSRB )
 }
 
 /* Moves first SRB from Waiting list to Going list */
-static __inline__ void dc390_Waiting_to_Going ( PDCB pDCB, PSRB pSRB )
+static __inline__ void dc390_Waiting_to_Going ( struct dc390_dcb* pDCB, struct dc390_srb* pSRB )
 {      
        /* Remove from waiting list */
        DEBUG0(printk("DC390: Remove SRB %p from head of Waiting\n", pSRB));
@@ -801,7 +752,7 @@ static __inline__ void dc390_Waiting_to_Going ( PDCB pDCB, PSRB pSRB )
 
 static void DC390_waiting_timed_out (unsigned long ptr);
 /* Sets the timer to wake us up */
-static void dc390_waiting_timer (PACB pACB, unsigned long to)
+static void dc390_waiting_timer (struct dc390_acb* pACB, unsigned long to)
 {
        if (timer_pending (&pACB->Waiting_Timer)) return;
        init_timer (&pACB->Waiting_Timer);
@@ -816,10 +767,10 @@ static void dc390_waiting_timer (PACB pACB, unsigned long to)
 
 
 /* Send the next command from the waiting list to the bus */
-static void dc390_Waiting_process ( PACB pACB )
+static void dc390_Waiting_process ( struct dc390_acb* pACB )
 {
-    PDCB   ptr, ptr1;
-    PSRB   pSRB;
+    struct dc390_dcb *ptr, *ptr1;
+    struct dc390_srb *pSRB;
 
     if( (pACB->pActiveDCB) || (pACB->ACBFlag & (RESET_DETECT+RESET_DONE+RESET_DEV) ) )
        return;
@@ -854,7 +805,7 @@ static void dc390_Waiting_process ( PACB pACB )
 /* Wake up waiting queue */
 static void DC390_waiting_timed_out (unsigned long ptr)
 {
-       PACB pACB = (PACB)ptr;
+       struct dc390_acb* pACB = (struct dc390_acb*)ptr;
        unsigned long iflags;
        DEBUG0(printk ("DC390: Debug: Waiting queue woken up by timer!\n"));
        spin_lock_irqsave(pACB->pScsiHost->host_lock, iflags);
@@ -863,15 +814,15 @@ static void DC390_waiting_timed_out (unsigned long ptr)
 }
 
 /***********************************************************************
- * Function: static void dc390_SendSRB (PACB pACB, PSRB pSRB)
+ * Function: static void dc390_SendSRB (struct dc390_acb* pACB, struct dc390_srb* pSRB)
  *
  * Purpose: Send SCSI Request Block (pSRB) to adapter (pACB)
  *
  ***********************************************************************/
 
-static void dc390_SendSRB( PACB pACB, PSRB pSRB )
+static void dc390_SendSRB( struct dc390_acb* pACB, struct dc390_srb* pSRB )
 {
-    PDCB   pDCB;
+    struct dc390_dcb*   pDCB;
 
     pDCB = pSRB->pSRBDCB;
     if( (pDCB->MaxCommand <= pDCB->GoingSRBCnt) || (pACB->pActiveDCB) ||
@@ -913,10 +864,10 @@ static struct scatterlist* dc390_sg_build_single(struct scatterlist *sg, void *a
 }
 
 /* Create pci mapping */
-static int dc390_pci_map (PSRB pSRB)
+static int dc390_pci_map (struct dc390_srb* pSRB)
 {
        int error = 0;
-       Scsi_Cmnd *pcmd = pSRB->pcmd;
+       struct scsi_cmnd *pcmd = pSRB->pcmd;
        struct pci_dev *pdev = pSRB->pSRBDCB->pDCBACB->pdev;
        dc390_cmd_scp_t* cmdp = ((dc390_cmd_scp_t*)(&pcmd->SCp));
 
@@ -933,9 +884,9 @@ static int dc390_pci_map (PSRB pSRB)
                DEBUG1(printk("%s(): Mapped sense buffer %p at %x\n", __FUNCTION__, pcmd->sense_buffer, cmdp->saved_dma_handle));
        /* Map SG list */
        } else if (pcmd->use_sg) {
-               pSRB->pSegmentList      = (PSGL) pcmd->request_buffer;
+               pSRB->pSegmentList      = (struct scatterlist *) pcmd->request_buffer;
                pSRB->SGcount           = pci_map_sg(pdev, pSRB->pSegmentList, pcmd->use_sg,
-                                                    scsi_to_pci_dma_dir(pcmd->sc_data_direction));
+                                                    pcmd->sc_data_direction);
                /* TODO: error handling */
                if (!pSRB->SGcount)
                        error = 1;
@@ -945,7 +896,7 @@ static int dc390_pci_map (PSRB pSRB)
        } else if (pcmd->request_buffer && pcmd->request_bufflen) {
                pSRB->pSegmentList      = dc390_sg_build_single(&pSRB->Segmentx, pcmd->request_buffer, pcmd->request_bufflen);
                pSRB->SGcount           = pci_map_sg(pdev, pSRB->pSegmentList, 1,
-                                                    scsi_to_pci_dma_dir(pcmd->sc_data_direction));
+                                                    pcmd->sc_data_direction);
                cmdp->saved_dma_handle  = sg_dma_address(pSRB->pSegmentList);
 
                /* TODO: error handling */
@@ -960,9 +911,9 @@ static int dc390_pci_map (PSRB pSRB)
 }
 
 /* Remove pci mapping */
-static void dc390_pci_unmap (PSRB pSRB)
+static void dc390_pci_unmap (struct dc390_srb* pSRB)
 {
-       Scsi_Cmnd* pcmd = pSRB->pcmd;
+       struct scsi_cmnd *pcmd = pSRB->pcmd;
        struct pci_dev *pdev = pSRB->pSRBDCB->pDCBACB->pdev;
        DEBUG1(dc390_cmd_scp_t* cmdp = ((dc390_cmd_scp_t*)(&pcmd->SCp)));
 
@@ -970,24 +921,24 @@ static void dc390_pci_unmap (PSRB pSRB)
                pci_unmap_sg(pdev, &pSRB->Segmentx, 1, DMA_FROM_DEVICE);
                DEBUG1(printk("%s(): Unmapped sense buffer at %x\n", __FUNCTION__, cmdp->saved_dma_handle));
        } else if (pcmd->use_sg) {
-               pci_unmap_sg(pdev, pcmd->request_buffer, pcmd->use_sg, scsi_to_pci_dma_dir(pcmd->sc_data_direction));
+               pci_unmap_sg(pdev, pcmd->request_buffer, pcmd->use_sg, pcmd->sc_data_direction);
                DEBUG1(printk("%s(): Unmapped SG at %p with %d elements\n", __FUNCTION__, pcmd->request_buffer, pcmd->use_sg));
        } else if (pcmd->request_buffer && pcmd->request_bufflen) {
-               pci_unmap_sg(pdev, &pSRB->Segmentx, 1, scsi_to_pci_dma_dir(pcmd->sc_data_direction));
+               pci_unmap_sg(pdev, &pSRB->Segmentx, 1, pcmd->sc_data_direction);
                DEBUG1(printk("%s(): Unmapped request buffer at %x\n", __FUNCTION__, cmdp->saved_dma_handle));
        }
 }
 
 
 /***********************************************************************
- * Function: static void dc390_BuildSRB (Scsi_Cmd *pcmd, PDCB pDCB, 
- *                                      PSRB pSRB)
+ * Function: static void dc390_BuildSRB (Scsi_Cmd *pcmd, struct dc390_dcb* pDCB, 
+ *                                      struct dc390_srb* pSRB)
  *
  * Purpose: Prepare SRB for being sent to Device DCB w/ command *pcmd
  *
  ***********************************************************************/
 
-static void dc390_BuildSRB (Scsi_Cmnd* pcmd, PDCB pDCB, PSRB pSRB)
+static void dc390_BuildSRB (struct scsi_cmnd *pcmd, struct dc390_dcb* pDCB, struct dc390_srb* pSRB)
 {
     pSRB->pSRBDCB = pDCB;
     pSRB->pcmd = pcmd;
@@ -1015,8 +966,8 @@ static void dc390_BuildSRB (Scsi_Cmnd* pcmd, PDCB pDCB, PSRB pSRB)
 }
 
 /***********************************************************************
- * Function : static int DC390_queue_command (Scsi_Cmnd *cmd,
- *                                            void (*done)(Scsi_Cmnd *))
+ * Function : static int DC390_queue_command (struct scsi_cmnd *cmd,
+ *                                            void (*done)(struct scsi_cmnd *))
  *
  * Purpose : enqueues a SCSI command
  *
@@ -1033,11 +984,12 @@ static void dc390_BuildSRB (Scsi_Cmnd* pcmd, PDCB pDCB, PSRB pSRB)
  *
  ***********************************************************************/
 
-static int DC390_queue_command (Scsi_Cmnd *cmd, void (* done)(Scsi_Cmnd *))
+static int DC390_queue_command(struct scsi_cmnd *cmd,
+               void (* done)(struct scsi_cmnd *))
 {
-    PDCB   pDCB = (PDCB) cmd->device->hostdata;
-    PSRB   pSRB;
-    PACB   pACB = (PACB) cmd->device->host->hostdata;
+    struct dc390_dcb*   pDCB = (struct dc390_dcb*) cmd->device->hostdata;
+    struct dc390_srb*   pSRB;
+    struct dc390_acb*   pACB = (struct dc390_acb*) cmd->device->host->hostdata;
 
     DEBUG0(/*  if(pACB->scan_devices) */       \
        printk(KERN_INFO "DC390: Queue Cmd=%02x,Tgt=%d,LUN=%d (pid=%li), buffer=%p\n",\
@@ -1181,7 +1133,7 @@ static int DC390_bios_param (struct scsi_device *sdev, struct block_device *bdev
                             sector_t capacity, int geom[])
 {
     int heads, sectors, cylinders;
-    PACB pACB = (PACB) sdev->host->hostdata;
+    struct dc390_acb* pACB = (struct dc390_acb*) sdev->host->hostdata;
     int ret_code = -1;
     int size = capacity;
     unsigned char *buf;
@@ -1221,9 +1173,11 @@ static int DC390_bios_param (struct scsi_device *sdev, struct block_device *bdev
 }
 #endif
 
-static void dc390_dumpinfo (PACB pACB, PDCB pDCB, PSRB pSRB)
+static void dc390_dumpinfo (struct dc390_acb* pACB, struct dc390_dcb* pDCB, struct dc390_srb* pSRB)
 {
-    USHORT pstat; PDEVDECL1;
+    struct pci_dev *pdev;
+    u16 pstat;
+
     if (!pDCB) pDCB = pACB->pActiveDCB;
     if (!pSRB && pDCB) pSRB = pDCB->pActiveSRB;
 
@@ -1257,14 +1211,16 @@ static void dc390_dumpinfo (PACB pACB, PDCB pDCB, PSRB pSRB)
            DC390_read32(DMA_Wk_ByteCntr), DC390_read32(DMA_Wk_AddrCntr),
            DC390_read8(DMA_Status), DC390_read32(DMA_ScsiBusCtrl));
     DC390_write32 (DMA_ScsiBusCtrl, EN_INT_ON_PCI_ABORT);
-    PDEVSET1; PCI_READ_CONFIG_WORD(PDEV, PCI_STATUS, &pstat);
+
+    pdev = pACB->pdev;
+    pci_read_config_word(pdev, PCI_STATUS, &pstat);
     printk ("DC390: Register dump: PCI Status: %04x\n", pstat);
     printk ("DC390: In case of driver trouble read linux/Documentation/scsi/tmscsim.txt\n");
 }
 
 
 /***********************************************************************
- * Function : int DC390_abort (Scsi_Cmnd *cmd)
+ * Function : int DC390_abort (struct scsi_cmnd *cmd)
  *
  * Purpose : Abort an errant SCSI command
  *
@@ -1275,14 +1231,14 @@ static void dc390_dumpinfo (PACB pACB, PDCB pDCB, PSRB pSRB)
  * Status: Buggy !
  ***********************************************************************/
 
-static int DC390_abort (Scsi_Cmnd *cmd)
+static int DC390_abort (struct scsi_cmnd *cmd)
 {
-    PDCB  pDCB = (PDCB) cmd->device->hostdata;
-    PSRB  pSRB, psrb;
-    UINT  count, i;
+    struct dc390_dcb *pDCB = (struct dc390_dcb*) cmd->device->hostdata;
+    struct dc390_srb *pSRB, *psrb;
+    u32  count, i;
     int   status;
-    //ULONG sbac;
-    PACB  pACB = (PACB) cmd->device->host->hostdata;
+    //unsigned long sbac;
+    struct dc390_acb *pACB = (struct dc390_acb*) cmd->device->host->hostdata;
 
     printk ("DC390: Abort command (pid %li, Device %02i-%02i)\n",
            cmd->pid, cmd->device->id, cmd->device->lun);
@@ -1406,9 +1362,9 @@ ABO_X:
 }
 
 
-static void dc390_ResetDevParam( PACB pACB )
+static void dc390_ResetDevParam( struct dc390_acb* pACB )
 {
-    PDCB   pDCB, pdcb;
+    struct dc390_dcb *pDCB, *pdcb;
 
     pDCB = pACB->pLinkDCB;
     if (! pDCB) return;
@@ -1431,11 +1387,11 @@ static void dc390_ResetDevParam( PACB pACB )
 
 #if 0
 /* Moves all SRBs from Going to Waiting for all DCBs */
-static void dc390_RecoverSRB( PACB pACB )
+static void dc390_RecoverSRB( struct dc390_acb* pACB )
 {
-    PDCB   pDCB, pdcb;
-    PSRB   psrb, psrb2;
-    UINT   cnt, i;
+    struct dc390_dcb *pDCB, *pdcb;
+    struct dc390_srb *psrb, *psrb2;
+    u32   cnt, i;
 
     pDCB = pACB->pLinkDCB;
     if( !pDCB ) return;
@@ -1470,7 +1426,7 @@ static void dc390_RecoverSRB( PACB pACB )
 #endif
 
 /***********************************************************************
- * Function : int DC390_reset (Scsi_Cmnd *cmd, ...)
+ * Function : int DC390_reset (struct scsi_cmnd *cmd, ...)
  *
  * Purpose : perform a hard reset on the SCSI bus
  *
@@ -1480,10 +1436,10 @@ static void dc390_RecoverSRB( PACB pACB )
  * Returns : 0 on success.
  ***********************************************************************/
 
-static int DC390_reset (Scsi_Cmnd *cmd)
+static int DC390_reset (struct scsi_cmnd *cmd)
 {
-    UCHAR   bval;
-    PACB    pACB = (PACB) cmd->device->host->hostdata;
+    u8   bval;
+    struct dc390_acb*    pACB = (struct dc390_acb*) cmd->device->host->hostdata;
 
     printk(KERN_INFO "DC390: RESET ... ");
 
@@ -1526,7 +1482,7 @@ static int DC390_reset (Scsi_Cmnd *cmd)
  * Purpose :  Set the configuration dependent DCB parameters
  ***********************************************************************/
 
-static void dc390_updateDCB (PACB pACB, PDCB pDCB)
+static void dc390_updateDCB (struct dc390_acb* pACB, struct dc390_dcb* pDCB)
 {
   pDCB->SyncMode &= EN_TAG_QUEUEING | SYNC_NEGO_DONE /*| EN_ATN_STOP*/;
   if (pDCB->DevMode & TAG_QUEUEING_) {
@@ -1558,15 +1514,15 @@ static void dc390_updateDCB (PACB pACB, PDCB pDCB)
  * Inputs : psrb - pointer to this scsi request block structure
  ***********************************************************************/
 
-static void __inline__ dc390_initSRB( PSRB psrb )
+static void __inline__ dc390_initSRB( struct dc390_srb* psrb )
 {
   /* psrb->PhysSRB = virt_to_phys( psrb ); */
 }
 
 
-static void dc390_linkSRB( PACB pACB )
+static void dc390_linkSRB( struct dc390_acb* pACB )
 {
-    UINT   count, i;
+    u32   count, i;
 
     count = pACB->SRBCount;
     for( i=0; i<count; i++)
@@ -1589,10 +1545,10 @@ static void dc390_linkSRB( PACB pACB )
  *         io_port, Irq, index: Resources and adapter index
  ***********************************************************************/
 
-static void __devinit dc390_initACB (PSH psh, ULONG io_port, UCHAR Irq, UCHAR index)
+static void __devinit dc390_initACB (struct Scsi_Host *psh, unsigned long io_port, u8 Irq, u8 index)
 {
-    PACB    pACB;
-    UCHAR   i;
+    struct dc390_acb*    pACB;
+    u8   i;
 
     psh->can_queue = MAX_CMD_QUEUE;
     psh->cmd_per_lun = MAX_CMD_PER_LUN;
@@ -1605,10 +1561,10 @@ static void __devinit dc390_initACB (PSH psh, ULONG io_port, UCHAR Irq, UCHAR in
     psh->dma_channel = -1;
     psh->last_reset = jiffies;
        
-    pACB = (PACB) psh->hostdata;
+    pACB = (struct dc390_acb*) psh->hostdata;
 
     pACB->pScsiHost = psh;
-    pACB->IOPortBase = (USHORT) io_port;
+    pACB->IOPortBase = (u16) io_port;
     pACB->IRQLevel = Irq;
 
     DEBUG0(printk (KERN_INFO "DC390: Adapter index %i, ID %i, IO 0x%08x, IRQ 0x%02x\n",        \
@@ -1660,13 +1616,13 @@ static void __devinit dc390_initACB (PSH psh, ULONG io_port, UCHAR Irq, UCHAR in
  * Outputs: 0 on success, -1 on error
  ***********************************************************************/
 
-static int __devinit dc390_initAdapter (PSH psh, ULONG io_port, UCHAR Irq, UCHAR index)
+static int __devinit dc390_initAdapter (struct Scsi_Host *psh, unsigned long io_port, u8 Irq, u8 index)
 {
-    PACB   pACB, pACB2;
-    UCHAR  dstate;
+    struct dc390_acb *pACB, *pACB2;
+    u8  dstate;
     int    i;
     
-    pACB = (PACB) psh->hostdata;
+    pACB = (struct dc390_acb*) psh->hostdata;
 
     if (request_region (io_port, psh->n_io_port, "tmscsim") == NULL) {
        printk(KERN_ERR "DC390: register IO ports error!\n");
@@ -1731,13 +1687,14 @@ static int __devinit dc390_initAdapter (PSH psh, ULONG io_port, UCHAR Irq, UCHAR
 }
 
 
-static void __devinit dc390_set_pci_cfg (PDEVDECL)
+static void __devinit dc390_set_pci_cfg (struct pci_dev *pdev)
 {
-       USHORT cmd;
-       PCI_READ_CONFIG_WORD (PDEV, PCI_COMMAND, &cmd);
+       u16 cmd;
+
+       pci_read_config_word(pdev, PCI_COMMAND, &cmd);
        cmd |= PCI_COMMAND_SERR | PCI_COMMAND_PARITY | PCI_COMMAND_IO;
-       PCI_WRITE_CONFIG_WORD (PDEV, PCI_COMMAND, cmd);
-       PCI_WRITE_CONFIG_WORD (PDEV, PCI_STATUS, (PCI_STATUS_SIG_SYSTEM_ERROR | PCI_STATUS_DETECTED_PARITY));
+       pci_write_config_word(pdev, PCI_COMMAND, cmd);
+       pci_write_config_word(pdev, PCI_STATUS, (PCI_STATUS_SIG_SYSTEM_ERROR | PCI_STATUS_DETECTED_PARITY));
 }
 
 /**
@@ -1748,15 +1705,15 @@ static void __devinit dc390_set_pci_cfg (PDEVDECL)
  */
 static int dc390_slave_alloc(struct scsi_device *scsi_device)
 {
-       PACB pACB = (PACB) scsi_device->host->hostdata;
-       PDCB pDCB, pDCB2 = 0;
+       struct dc390_acb *pACB = (struct dc390_acb*) scsi_device->host->hostdata;
+       struct dc390_dcb *pDCB, *pDCB2 = 0;
        uint id = scsi_device->id;
        uint lun = scsi_device->lun;
 
-       pDCB = kmalloc(sizeof(DC390_DCB), GFP_KERNEL);
+       pDCB = kmalloc(sizeof(struct dc390_dcb), GFP_KERNEL);
        if (!pDCB)
                return -ENOMEM;
-       memset(pDCB, 0, sizeof(DC390_DCB));
+       memset(pDCB, 0, sizeof(struct dc390_dcb));
 
        if (!pACB->DCBCnt++) {
                pACB->pLinkDCB = pDCB;
@@ -1816,9 +1773,9 @@ static int dc390_slave_alloc(struct scsi_device *scsi_device)
  */
 static void dc390_slave_destroy(struct scsi_device *scsi_device)
 {
-       PACB pACB = (PACB) scsi_device->host->hostdata;
-       PDCB pDCB = (PDCB) scsi_device->hostdata;
-       PDCB pPrevDCB = pACB->pLinkDCB;
+       struct dc390_acb* pACB = (struct dc390_acb*) scsi_device->host->hostdata;
+       struct dc390_dcb* pDCB = (struct dc390_dcb*) scsi_device->hostdata;
+       struct dc390_dcb* pPrevDCB = pACB->pLinkDCB;
 
        pACB->scan_devices = 0;
 
@@ -1853,12 +1810,12 @@ static void dc390_slave_destroy(struct scsi_device *scsi_device)
 
 static int dc390_slave_configure(struct scsi_device *scsi_device)
 {
-       PACB pACB = (PACB) scsi_device->host->hostdata;
+       struct dc390_acb* pACB = (struct dc390_acb*) scsi_device->host->hostdata;
        pACB->scan_devices = 0;
        return 0;
 }
 
-static Scsi_Host_Template driver_template = {
+static struct scsi_host_template driver_template = {
        .module                 = THIS_MODULE,
        .proc_name              = "tmscsim", 
        .proc_info              = DC390_proc_info,
@@ -1883,7 +1840,7 @@ static int __devinit dc390_init_one(struct pci_dev *dev,
        struct Scsi_Host *scsi_host;
        unsigned long io_port;
        u8 irq;
-       PACB  pACB;
+       struct dc390_acb*  pACB;
        int ret = -ENOMEM;
 
        if (pci_enable_device(dev))
@@ -1893,11 +1850,11 @@ static int __devinit dc390_init_one(struct pci_dev *dev,
        irq = dev->irq;
 
        /* allocate scsi host information (includes out adapter) */
-       scsi_host = scsi_host_alloc(&driver_template, sizeof(struct _ACB));
+       scsi_host = scsi_host_alloc(&driver_template, sizeof(struct dc390_acb));
        if (!scsi_host)
                goto nomem;
 
-       pACB = (PACB) scsi_host->hostdata;
+       pACB = (struct dc390_acb*) scsi_host->hostdata;
 
        if (dc390_CheckEEpromCheckSum (dev, dc390_adapterCnt)) {
                int speed;
@@ -1910,13 +1867,13 @@ static int __devinit dc390_init_one(struct pci_dev *dev,
                printk(KERN_INFO "DC390: Used defaults: AdaptID=%i, SpeedIdx=%i (%i.%i MHz),"
                       " DevMode=0x%02x, AdaptMode=0x%02x, TaggedCmnds=%i (%i), DelayReset=%is\n", 
                       tmscsim[0], tmscsim[1], speed/10, speed%10,
-                      (UCHAR)tmscsim[2], (UCHAR)tmscsim[3], tmscsim[4], 2 << (tmscsim[4]), tmscsim[5]);
+                      (u8)tmscsim[2], (u8)tmscsim[3], tmscsim[4], 2 << (tmscsim[4]), tmscsim[5]);
        } else {
                dc390_check_for_safe_settings();
                dc390_EEprom_Override(dc390_adapterCnt);
        }
 
-       DEBUG0(printk(KERN_INFO "DC390: pSH = %8x, Index %02i\n", (UINT) scsi_host, dc390_adapterCnt));
+       DEBUG0(printk(KERN_INFO "DC390: pSH = %8x, Index %02i\n", (u32) scsi_host, dc390_adapterCnt));
 
        dc390_initACB(scsi_host, io_port, irq, dc390_adapterCnt);
 
@@ -1959,7 +1916,7 @@ static void __devexit dc390_remove_one(struct pci_dev *dev)
 {
        struct Scsi_Host *scsi_host = pci_get_drvdata(dev);
        unsigned long iflags;
-       PACB pACB = (PACB) scsi_host->hostdata;
+       struct dc390_acb* pACB = (struct dc390_acb*) scsi_host->hostdata;
        u8 bval;
 
        scsi_remove_host(scsi_host);
@@ -2014,19 +1971,19 @@ static int DC390_proc_info (struct Scsi_Host *shpnt, char *buffer, char **start,
 {
   int dev, spd, spd1;
   char *pos = buffer;
-  PACB pACB;
-  PDCB pDCB;
+  struct dc390_acb* pACB;
+  struct dc390_dcb* pDCB;
 
   pACB = dc390_pACB_start;
 
-  while(pACB != (PACB)-1)
+  while(pACB != (struct dc390_acb*)-1)
      {
        if (shpnt == pACB->pScsiHost)
                break;
        pACB = pACB->pNextACB;
      }
 
-  if (pACB == (PACB)-1) return(-ESRCH);
+  if (pACB == (struct dc390_acb*)-1) return(-ESRCH);
 
   if(inout) /* Has data been written to the file ? */
       return -ENOSYS;
@@ -2087,7 +2044,7 @@ static int DC390_proc_info (struct Scsi_Host *shpnt, char *buffer, char **start,
        
     for (dev = 0; dev < pACB->DCBCnt; dev++)
     {
-       PSRB pSRB;
+       struct dc390_srb* pSRB;
        if (pDCB->WaitSRBCnt) 
                    SPRINTF ("DCB (%02i-%i): Waiting: %i:", pDCB->TargetID, pDCB->TargetLUN,
                             pDCB->WaitSRBCnt);
index 7f3ad6216243881c98f0a912f42a47b346bcd89d..62e9f879149a50bc9c1d52f3c01660f290acf623 100644 (file)
@@ -29,215 +29,167 @@ typedef u16               USHORT; /* 16 bits */
 typedef u32            UINT;   /* 32 bits */
 typedef unsigned long  ULONG;  /* 32/64 bits */
 
-typedef UCHAR          *PUCHAR;
-typedef USHORT         *PUSHORT;
-typedef UINT           *PUINT;
-typedef ULONG          *PULONG;
-typedef Scsi_Host_Template     *PSHT;
-typedef struct Scsi_Host       *PSH;
-typedef Scsi_Device    *PSCSIDEV;
-typedef Scsi_Cmnd      *PSCSICMD;
-typedef void           *PVOID;
-typedef struct scatterlist  *PSGL, SGL;
-
-
-/*;-----------------------------------------------------------------------*/
-typedef  struct  _SyncMsg
-{
-UCHAR          ExtendMsg;
-UCHAR          ExtMsgLen;
-UCHAR          SyncXferReq;
-UCHAR          Period;
-UCHAR          ReqOffset;
-} SyncMsg;
-/*;-----------------------------------------------------------------------*/
-typedef  struct  _Capacity
-{
-ULONG          BlockCount;
-ULONG          BlockLength;
-} Capacity;
-/*;-----------------------------------------------------------------------*/
-typedef  struct  _SGentry
-{
-ULONG          SGXferDataPtr;
-ULONG          SGXferDataLen;
-} SGentry;
-
-typedef  struct  _SGentry1
-{
-ULONG          SGXLen;
-ULONG          SGXPtr;
-} SGentry1, *PSGE;
-
 
 /*
 ;-----------------------------------------------------------------------
 ; SCSI Request Block
 ;-----------------------------------------------------------------------
 */
-struct _SRB
+struct dc390_srb
 {
-//UCHAR                CmdBlock[12];
+//u8           CmdBlock[12];
 
-struct _SRB    *pNextSRB;
-struct _DCB    *pSRBDCB;
-PSCSICMD       pcmd;
-PSGL           pSegmentList;
+struct dc390_srb       *pNextSRB;
+struct dc390_dcb       *pSRBDCB;
+struct scsi_cmnd       *pcmd;
+struct scatterlist     *pSegmentList;
 
 /* 0x10: */
-SGL            Segmentx;       /* make a one entry of S/G list table */
+struct scatterlist Segmentx;   /* make a one entry of S/G list table */
 
 /* 0x1c: */
-ULONG          SGBusAddr;      /*;a segment starting address as seen by AM53C974A*/
-ULONG          SGToBeXferLen;  /*; to be xfer length */
-ULONG          TotalXferredLen;
-ULONG          SavedTotXLen;
-UINT           SRBState;
+unsigned long  SGBusAddr;      /*;a segment starting address as seen by AM53C974A*/
+unsigned long  SGToBeXferLen;  /*; to be xfer length */
+unsigned long  TotalXferredLen;
+unsigned long  SavedTotXLen;
+u32            SRBState;
 
 /* 0x30: */
-UCHAR          SRBStatus;
-UCHAR          SRBFlag;        /*; b0-AutoReqSense,b6-Read,b7-write */
+u8             SRBStatus;
+u8             SRBFlag;        /*; b0-AutoReqSense,b6-Read,b7-write */
                                /*; b4-settimeout,b5-Residual valid */
-UCHAR          AdaptStatus;
-UCHAR          TargetStatus;
+u8             AdaptStatus;
+u8             TargetStatus;
 
-UCHAR          ScsiPhase;
-UCHAR          TagNumber;
-UCHAR          SGIndex;
-UCHAR          SGcount;
+u8             ScsiPhase;
+u8             TagNumber;
+u8             SGIndex;
+u8             SGcount;
 
 /* 0x38: */
-UCHAR          MsgCnt;
-UCHAR          EndMessage;
-UCHAR          RetryCnt;
-UCHAR          SavedSGCount;                   
+u8             MsgCnt;
+u8             EndMessage;
+u8             RetryCnt;
+u8             SavedSGCount;                   
 
-ULONG          Saved_Ptr;
+unsigned long  Saved_Ptr;
 
 /* 0x40: */
-UCHAR          MsgInBuf[6];
-UCHAR          MsgOutBuf[6];
+u8             MsgInBuf[6];
+u8             MsgOutBuf[6];
 
-//UCHAR                IORBFlag;       /*;81h-Reset, 2-retry */
+//u8           IORBFlag;       /*;81h-Reset, 2-retry */
 /* 0x4c: */
 };
 
 
-typedef  struct  _SRB   DC390_SRB, *PSRB;
-
 /*
 ;-----------------------------------------------------------------------
 ; Device Control Block
 ;-----------------------------------------------------------------------
 */
-struct _DCB
+struct dc390_dcb
 {
-struct _DCB    *pNextDCB;
-struct _ACB    *pDCBACB;
-
-/* Aborted Commands */
-//PSCSICMD     AboIORBhead;
-//PSCSICMD     AboIORBtail;
-//ULONG                AboIORBcnt;
+struct dc390_dcb       *pNextDCB;
+struct dc390_acb       *pDCBACB;
 
 /* 0x08: */
 /* Queued SRBs */
-PSRB           pWaitingSRB;
-PSRB           pWaitLast;
-PSRB           pGoingSRB;
-PSRB           pGoingLast;
-PSRB           pActiveSRB;
-UCHAR          WaitSRBCnt;     /* Not used */
-UCHAR          GoingSRBCnt;
+struct dc390_srb       *pWaitingSRB;
+struct dc390_srb       *pWaitLast;
+struct dc390_srb       *pGoingSRB;
+struct dc390_srb       *pGoingLast;
+struct dc390_srb       *pActiveSRB;
+u8             WaitSRBCnt;     /* Not used */
+u8             GoingSRBCnt;
 
-UCHAR          DevType;
-UCHAR          MaxCommand;
+u8             DevType;
+u8             MaxCommand;
 
 /* 0x20: */
-UINT           TagMask;
+u32            TagMask;
 
-UCHAR          TargetID;       /*; SCSI Target ID  (SCSI Only) */
-UCHAR          TargetLUN;      /*; SCSI Log.  Unit (SCSI Only) */
-UCHAR          DevMode;
-UCHAR          DCBFlag;
+u8             TargetID;       /*; SCSI Target ID  (SCSI Only) */
+u8             TargetLUN;      /*; SCSI Log.  Unit (SCSI Only) */
+u8             DevMode;
+u8             DCBFlag;
 
-UCHAR          CtrlR1;
-UCHAR          CtrlR3;
-UCHAR          CtrlR4;
-UCHAR          Inquiry7;
+u8             CtrlR1;
+u8             CtrlR3;
+u8             CtrlR4;
+u8             Inquiry7;
 
 /* 0x2c: */
-UCHAR          SyncMode;       /*; 0:async mode */
-UCHAR          NegoPeriod;     /*;for nego. */
-UCHAR          SyncPeriod;     /*;for reg. */
-UCHAR          SyncOffset;     /*;for reg. and nego.(low nibble) */
+u8             SyncMode;       /*; 0:async mode */
+u8             NegoPeriod;     /*;for nego. */
+u8             SyncPeriod;     /*;for reg. */
+u8             SyncOffset;     /*;for reg. and nego.(low nibble) */
 
 /* 0x30:*/
-//UCHAR                InqDataBuf[8];
-//UCHAR                CapacityBuf[8];
+//u8           InqDataBuf[8];
+//u8           CapacityBuf[8];
 ///* 0x40: */
 };
 
-typedef  struct  _DCB   DC390_DCB, *PDCB;
+
 /*
 ;-----------------------------------------------------------------------
 ; Adapter Control Block
 ;-----------------------------------------------------------------------
 */
-struct _ACB
+struct dc390_acb
 {
-PSH            pScsiHost;
-struct _ACB    *pNextACB;
-USHORT         IOPortBase;
-UCHAR          IRQLevel;
-UCHAR          status;
-
-UCHAR          SRBCount;
-UCHAR          AdapterIndex;   /*; nth Adapter this driver */
-UCHAR          DCBCnt;
-
-UCHAR          TagMaxNum;
-UCHAR          ACBFlag;
-UCHAR          Gmode2;
-UCHAR          scan_devices;
-
-PDCB           pLinkDCB;
-PDCB           pLastDCB;
-PDCB           pDCBRunRobin;
-
-PDCB           pActiveDCB;
-PSRB           pFreeSRB;
-PSRB           pTmpSRB;
-
-UCHAR          msgin123[4];
-UCHAR          DCBmap[MAX_SCSI_ID];
-UCHAR          Connected;
-UCHAR          pad;
+struct Scsi_Host *pScsiHost;
+struct dc390_acb       *pNextACB;
+u16            IOPortBase;
+u8             IRQLevel;
+u8             status;
+
+u8             SRBCount;
+u8             AdapterIndex;   /*; nth Adapter this driver */
+u8             DCBCnt;
+
+u8             TagMaxNum;
+u8             ACBFlag;
+u8             Gmode2;
+u8             scan_devices;
+
+struct dc390_dcb       *pLinkDCB;
+struct dc390_dcb       *pLastDCB;
+struct dc390_dcb       *pDCBRunRobin;
+
+struct dc390_dcb       *pActiveDCB;
+struct dc390_srb       *pFreeSRB;
+struct dc390_srb       *pTmpSRB;
+
+u8             msgin123[4];
+u8             DCBmap[MAX_SCSI_ID];
+u8             Connected;
+u8             pad;
 
 #if defined(USE_SPINLOCKS) && USE_SPINLOCKS > 1 && (defined(CONFIG_SMP) || DEBUG_SPINLOCKS > 0)
 spinlock_t     lock;
 #endif
-UCHAR          sel_timeout;
-UCHAR          glitch_cfg;
+u8             sel_timeout;
+u8             glitch_cfg;
 
-UCHAR          MsgLen;
-UCHAR          Ignore_IRQ;     /* Not used */
+u8             MsgLen;
+u8             Ignore_IRQ;     /* Not used */
 
-PDEVDECL1;                     /* Pointer to PCI cfg. space */
+struct pci_dev *pdev;
 
-ULONG          Cmds;
-UINT           SelLost;
-UINT           SelConn;
-UINT           CmdInQ;
-UINT           CmdOutOfSRB;
+unsigned long  Cmds;
+u32            SelLost;
+u32            SelConn;
+u32            CmdInQ;
+u32            CmdOutOfSRB;
        
 struct timer_list      Waiting_Timer;
 
-DC390_SRB      TmpSRB;
-DC390_SRB      SRB_array[MAX_SRB_CNT];         /* 50 SRBs */
+struct dc390_srb       TmpSRB;
+struct dc390_srb       SRB_array[MAX_SRB_CNT];         /* 50 SRBs */
 };
 
-typedef  struct  _ACB   DC390_ACB, *PACB;
 
 /*;-----------------------------------------------------------------------*/
 
@@ -402,17 +354,17 @@ typedef struct {
 
 typedef struct _SCSIInqData { /* INQUIRY */
 
-       UCHAR    DevType;               /* Periph Qualifier & Periph Dev Type*/
-       UCHAR    RMB_TypeMod;           /* rem media bit & Dev Type Modifier */
-       UCHAR    Vers;                  /* ISO, ECMA, & ANSI versions        */
-       UCHAR    RDF;                   /* AEN, TRMIOP, & response data format*/
-       UCHAR    AddLen;                /* length of additional data         */
-       UCHAR    Res1;                  /* reserved                          */
-       UCHAR    Res2;                  /* reserved                          */
-       UCHAR    Flags;                 /* RelADr,Wbus32,Wbus16,Sync,etc.    */
-       UCHAR    VendorID[8];           /* Vendor Identification             */
-       UCHAR    ProductID[16];         /* Product Identification            */
-       UCHAR    ProductRev[4];         /* Product Revision                  */
+       u8       DevType;               /* Periph Qualifier & Periph Dev Type*/
+       u8       RMB_TypeMod;           /* rem media bit & Dev Type Modifier */
+       u8       Vers;                  /* ISO, ECMA, & ANSI versions        */
+       u8       RDF;                   /* AEN, TRMIOP, & response data format*/
+       u8       AddLen;                /* length of additional data         */
+       u8       Res1;                  /* reserved                          */
+       u8       Res2;                  /* reserved                          */
+       u8       Flags;                 /* RelADr,Wbus32,Wbus16,Sync,etc.    */
+       u8       VendorID[8];           /* Vendor Identification             */
+       u8       ProductID[16];         /* Product Identification            */
+       u8       ProductRev[4];         /* Product Revision                  */
 
 
 } SCSI_INQDATA, *PSCSI_INQDATA;
@@ -461,10 +413,10 @@ typedef struct    _SCSIInqData { /* INQUIRY */
 */
 typedef  struct  _EEprom
 {
-UCHAR  EE_MODE1;
-UCHAR  EE_SPEED;
-UCHAR  xx1;
-UCHAR  xx2;
+u8     EE_MODE1;
+u8     EE_SPEED;
+u8     xx1;
+u8     xx2;
 } EEprom, *PEEprom;
 
 #define REAL_EE_ADAPT_SCSI_ID 64
@@ -676,7 +628,7 @@ UCHAR       xx2;
        (inb (pACB->IOPortBase + (address)))
 
 #define DC390_read8_(address, base)            \
-       (inb ((USHORT)(base) + (address)))
+       (inb ((u16)(base) + (address)))
 
 #define DC390_read16(address)                  \
        (inw (pACB->IOPortBase + (address)))
@@ -688,7 +640,7 @@ UCHAR       xx2;
        outb ((value), pACB->IOPortBase + (address))
 
 #define DC390_write8_(address,value,base)      \
-       outb ((value), (USHORT)(base) + (address))
+       outb ((value), (u16)(base) + (address))
 
 #define DC390_write16(address,value)           \
        outw ((value), pACB->IOPortBase + (address))