aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/scsi/aic7xxx/aic79xx_osm.c18
-rw-r--r--drivers/scsi/aic7xxx/aic7xxx_osm.c20
-rw-r--r--drivers/scsi/aic7xxx/cam.h6
-rw-r--r--drivers/scsi/aic7xxx_old.c8
-rw-r--r--drivers/scsi/arm/fas216.c2
-rw-r--r--drivers/scsi/cpqfcTSinit.c6
-rw-r--r--drivers/scsi/cpqfcTSworker.c16
-rw-r--r--drivers/scsi/ips.c10
-rw-r--r--drivers/scsi/libata-scsi.c12
-rw-r--r--drivers/scsi/pci2000.c16
-rw-r--r--drivers/scsi/qlogicfc.c18
-rw-r--r--drivers/scsi/qlogicisp.c8
-rw-r--r--drivers/scsi/scsi.h15
-rw-r--r--drivers/scsi/sg.c8
14 files changed, 74 insertions, 89 deletions
diff --git a/drivers/scsi/aic7xxx/aic79xx_osm.c b/drivers/scsi/aic7xxx/aic79xx_osm.c
index fb2877c303f0..550c9921691a 100644
--- a/drivers/scsi/aic7xxx/aic79xx_osm.c
+++ b/drivers/scsi/aic7xxx/aic79xx_osm.c
@@ -687,7 +687,7 @@ ahd_linux_unmap_scb(struct ahd_softc *ahd, struct scb *scb)
687 int direction; 687 int direction;
688 688
689 cmd = scb->io_ctx; 689 cmd = scb->io_ctx;
690 direction = scsi_to_pci_dma_dir(cmd->sc_data_direction); 690 direction = cmd->sc_data_direction;
691 ahd_sync_sglist(ahd, scb, BUS_DMASYNC_POSTWRITE); 691 ahd_sync_sglist(ahd, scb, BUS_DMASYNC_POSTWRITE);
692 if (cmd->use_sg != 0) { 692 if (cmd->use_sg != 0) {
693 struct scatterlist *sg; 693 struct scatterlist *sg;
@@ -3338,7 +3338,7 @@ ahd_linux_dv_inq(struct ahd_softc *ahd, struct scsi_cmnd *cmd,
3338 } 3338 }
3339 3339
3340 ahd_linux_dv_fill_cmd(ahd, cmd, devinfo); 3340 ahd_linux_dv_fill_cmd(ahd, cmd, devinfo);
3341 cmd->sc_data_direction = SCSI_DATA_READ; 3341 cmd->sc_data_direction = DMA_FROM_DEVICE;
3342 cmd->cmd_len = 6; 3342 cmd->cmd_len = 6;
3343 cmd->cmnd[0] = INQUIRY; 3343 cmd->cmnd[0] = INQUIRY;
3344 cmd->cmnd[4] = request_length; 3344 cmd->cmnd[4] = request_length;
@@ -3363,7 +3363,7 @@ ahd_linux_dv_tur(struct ahd_softc *ahd, struct scsi_cmnd *cmd,
3363#endif 3363#endif
3364 /* Do a TUR to clear out any non-fatal transitional state */ 3364 /* Do a TUR to clear out any non-fatal transitional state */
3365 ahd_linux_dv_fill_cmd(ahd, cmd, devinfo); 3365 ahd_linux_dv_fill_cmd(ahd, cmd, devinfo);
3366 cmd->sc_data_direction = SCSI_DATA_NONE; 3366 cmd->sc_data_direction = DMA_NONE;
3367 cmd->cmd_len = 6; 3367 cmd->cmd_len = 6;
3368 cmd->cmnd[0] = TEST_UNIT_READY; 3368 cmd->cmnd[0] = TEST_UNIT_READY;
3369} 3369}
@@ -3385,7 +3385,7 @@ ahd_linux_dv_rebd(struct ahd_softc *ahd, struct scsi_cmnd *cmd,
3385 free(targ->dv_buffer, M_DEVBUF); 3385 free(targ->dv_buffer, M_DEVBUF);
3386 targ->dv_buffer = malloc(AHD_REBD_LEN, M_DEVBUF, M_WAITOK); 3386 targ->dv_buffer = malloc(AHD_REBD_LEN, M_DEVBUF, M_WAITOK);
3387 ahd_linux_dv_fill_cmd(ahd, cmd, devinfo); 3387 ahd_linux_dv_fill_cmd(ahd, cmd, devinfo);
3388 cmd->sc_data_direction = SCSI_DATA_READ; 3388 cmd->sc_data_direction = DMA_FROM_DEVICE;
3389 cmd->cmd_len = 10; 3389 cmd->cmd_len = 10;
3390 cmd->cmnd[0] = READ_BUFFER; 3390 cmd->cmnd[0] = READ_BUFFER;
3391 cmd->cmnd[1] = 0x0b; 3391 cmd->cmnd[1] = 0x0b;
@@ -3407,7 +3407,7 @@ ahd_linux_dv_web(struct ahd_softc *ahd, struct scsi_cmnd *cmd,
3407 } 3407 }
3408#endif 3408#endif
3409 ahd_linux_dv_fill_cmd(ahd, cmd, devinfo); 3409 ahd_linux_dv_fill_cmd(ahd, cmd, devinfo);
3410 cmd->sc_data_direction = SCSI_DATA_WRITE; 3410 cmd->sc_data_direction = DMA_TO_DEVICE;
3411 cmd->cmd_len = 10; 3411 cmd->cmd_len = 10;
3412 cmd->cmnd[0] = WRITE_BUFFER; 3412 cmd->cmnd[0] = WRITE_BUFFER;
3413 cmd->cmnd[1] = 0x0a; 3413 cmd->cmnd[1] = 0x0a;
@@ -3429,7 +3429,7 @@ ahd_linux_dv_reb(struct ahd_softc *ahd, struct scsi_cmnd *cmd,
3429 } 3429 }
3430#endif 3430#endif
3431 ahd_linux_dv_fill_cmd(ahd, cmd, devinfo); 3431 ahd_linux_dv_fill_cmd(ahd, cmd, devinfo);
3432 cmd->sc_data_direction = SCSI_DATA_READ; 3432 cmd->sc_data_direction = DMA_FROM_DEVICE;
3433 cmd->cmd_len = 10; 3433 cmd->cmd_len = 10;
3434 cmd->cmnd[0] = READ_BUFFER; 3434 cmd->cmnd[0] = READ_BUFFER;
3435 cmd->cmnd[1] = 0x0a; 3435 cmd->cmnd[1] = 0x0a;
@@ -3455,7 +3455,7 @@ ahd_linux_dv_su(struct ahd_softc *ahd, struct scsi_cmnd *cmd,
3455 } 3455 }
3456#endif 3456#endif
3457 ahd_linux_dv_fill_cmd(ahd, cmd, devinfo); 3457 ahd_linux_dv_fill_cmd(ahd, cmd, devinfo);
3458 cmd->sc_data_direction = SCSI_DATA_NONE; 3458 cmd->sc_data_direction = DMA_NONE;
3459 cmd->cmd_len = 6; 3459 cmd->cmd_len = 6;
3460 cmd->cmnd[0] = START_STOP_UNIT; 3460 cmd->cmnd[0] = START_STOP_UNIT;
3461 cmd->cmnd[4] = le | SSS_START; 3461 cmd->cmnd[4] = le | SSS_START;
@@ -4018,7 +4018,7 @@ ahd_linux_run_device_queue(struct ahd_softc *ahd, struct ahd_linux_device *dev)
4018 int dir; 4018 int dir;
4019 4019
4020 cur_seg = (struct scatterlist *)cmd->request_buffer; 4020 cur_seg = (struct scatterlist *)cmd->request_buffer;
4021 dir = scsi_to_pci_dma_dir(cmd->sc_data_direction); 4021 dir = cmd->sc_data_direction;
4022 nseg = pci_map_sg(ahd->dev_softc, cur_seg, 4022 nseg = pci_map_sg(ahd->dev_softc, cur_seg,
4023 cmd->use_sg, dir); 4023 cmd->use_sg, dir);
4024 scb->platform_data->xfer_len = 0; 4024 scb->platform_data->xfer_len = 0;
@@ -4038,7 +4038,7 @@ ahd_linux_run_device_queue(struct ahd_softc *ahd, struct ahd_linux_device *dev)
4038 int dir; 4038 int dir;
4039 4039
4040 sg = scb->sg_list; 4040 sg = scb->sg_list;
4041 dir = scsi_to_pci_dma_dir(cmd->sc_data_direction); 4041 dir = cmd->sc_data_direction;
4042 addr = pci_map_single(ahd->dev_softc, 4042 addr = pci_map_single(ahd->dev_softc,
4043 cmd->request_buffer, 4043 cmd->request_buffer,
4044 cmd->request_bufflen, dir); 4044 cmd->request_bufflen, dir);
diff --git a/drivers/scsi/aic7xxx/aic7xxx_osm.c b/drivers/scsi/aic7xxx/aic7xxx_osm.c
index 031c6aaa5ca5..35d6de5a4c9d 100644
--- a/drivers/scsi/aic7xxx/aic7xxx_osm.c
+++ b/drivers/scsi/aic7xxx/aic7xxx_osm.c
@@ -693,12 +693,12 @@ ahc_linux_unmap_scb(struct ahc_softc *ahc, struct scb *scb)
693 693
694 sg = (struct scatterlist *)cmd->request_buffer; 694 sg = (struct scatterlist *)cmd->request_buffer;
695 pci_unmap_sg(ahc->dev_softc, sg, cmd->use_sg, 695 pci_unmap_sg(ahc->dev_softc, sg, cmd->use_sg,
696 scsi_to_pci_dma_dir(cmd->sc_data_direction)); 696 cmd->sc_data_direction);
697 } else if (cmd->request_bufflen != 0) { 697 } else if (cmd->request_bufflen != 0) {
698 pci_unmap_single(ahc->dev_softc, 698 pci_unmap_single(ahc->dev_softc,
699 scb->platform_data->buf_busaddr, 699 scb->platform_data->buf_busaddr,
700 cmd->request_bufflen, 700 cmd->request_bufflen,
701 scsi_to_pci_dma_dir(cmd->sc_data_direction)); 701 cmd->sc_data_direction);
702 } 702 }
703} 703}
704 704
@@ -3007,7 +3007,7 @@ ahc_linux_dv_inq(struct ahc_softc *ahc, struct scsi_cmnd *cmd,
3007 } 3007 }
3008 3008
3009 ahc_linux_dv_fill_cmd(ahc, cmd, devinfo); 3009 ahc_linux_dv_fill_cmd(ahc, cmd, devinfo);
3010 cmd->sc_data_direction = SCSI_DATA_READ; 3010 cmd->sc_data_direction = DMA_FROM_DEVICE;
3011 cmd->cmd_len = 6; 3011 cmd->cmd_len = 6;
3012 cmd->cmnd[0] = INQUIRY; 3012 cmd->cmnd[0] = INQUIRY;
3013 cmd->cmnd[4] = request_length; 3013 cmd->cmnd[4] = request_length;
@@ -3032,7 +3032,7 @@ ahc_linux_dv_tur(struct ahc_softc *ahc, struct scsi_cmnd *cmd,
3032#endif 3032#endif
3033 /* Do a TUR to clear out any non-fatal transitional state */ 3033 /* Do a TUR to clear out any non-fatal transitional state */
3034 ahc_linux_dv_fill_cmd(ahc, cmd, devinfo); 3034 ahc_linux_dv_fill_cmd(ahc, cmd, devinfo);
3035 cmd->sc_data_direction = SCSI_DATA_NONE; 3035 cmd->sc_data_direction = DMA_NONE;
3036 cmd->cmd_len = 6; 3036 cmd->cmd_len = 6;
3037 cmd->cmnd[0] = TEST_UNIT_READY; 3037 cmd->cmnd[0] = TEST_UNIT_READY;
3038} 3038}
@@ -3054,7 +3054,7 @@ ahc_linux_dv_rebd(struct ahc_softc *ahc, struct scsi_cmnd *cmd,
3054 free(targ->dv_buffer, M_DEVBUF); 3054 free(targ->dv_buffer, M_DEVBUF);
3055 targ->dv_buffer = malloc(AHC_REBD_LEN, M_DEVBUF, M_WAITOK); 3055 targ->dv_buffer = malloc(AHC_REBD_LEN, M_DEVBUF, M_WAITOK);
3056 ahc_linux_dv_fill_cmd(ahc, cmd, devinfo); 3056 ahc_linux_dv_fill_cmd(ahc, cmd, devinfo);
3057 cmd->sc_data_direction = SCSI_DATA_READ; 3057 cmd->sc_data_direction = DMA_FROM_DEVICE;
3058 cmd->cmd_len = 10; 3058 cmd->cmd_len = 10;
3059 cmd->cmnd[0] = READ_BUFFER; 3059 cmd->cmnd[0] = READ_BUFFER;
3060 cmd->cmnd[1] = 0x0b; 3060 cmd->cmnd[1] = 0x0b;
@@ -3076,7 +3076,7 @@ ahc_linux_dv_web(struct ahc_softc *ahc, struct scsi_cmnd *cmd,
3076 } 3076 }
3077#endif 3077#endif
3078 ahc_linux_dv_fill_cmd(ahc, cmd, devinfo); 3078 ahc_linux_dv_fill_cmd(ahc, cmd, devinfo);
3079 cmd->sc_data_direction = SCSI_DATA_WRITE; 3079 cmd->sc_data_direction = DMA_TO_DEVICE;
3080 cmd->cmd_len = 10; 3080 cmd->cmd_len = 10;
3081 cmd->cmnd[0] = WRITE_BUFFER; 3081 cmd->cmnd[0] = WRITE_BUFFER;
3082 cmd->cmnd[1] = 0x0a; 3082 cmd->cmnd[1] = 0x0a;
@@ -3098,7 +3098,7 @@ ahc_linux_dv_reb(struct ahc_softc *ahc, struct scsi_cmnd *cmd,
3098 } 3098 }
3099#endif 3099#endif
3100 ahc_linux_dv_fill_cmd(ahc, cmd, devinfo); 3100 ahc_linux_dv_fill_cmd(ahc, cmd, devinfo);
3101 cmd->sc_data_direction = SCSI_DATA_READ; 3101 cmd->sc_data_direction = DMA_FROM_DEVICE;
3102 cmd->cmd_len = 10; 3102 cmd->cmd_len = 10;
3103 cmd->cmnd[0] = READ_BUFFER; 3103 cmd->cmnd[0] = READ_BUFFER;
3104 cmd->cmnd[1] = 0x0a; 3104 cmd->cmnd[1] = 0x0a;
@@ -3124,7 +3124,7 @@ ahc_linux_dv_su(struct ahc_softc *ahc, struct scsi_cmnd *cmd,
3124 } 3124 }
3125#endif 3125#endif
3126 ahc_linux_dv_fill_cmd(ahc, cmd, devinfo); 3126 ahc_linux_dv_fill_cmd(ahc, cmd, devinfo);
3127 cmd->sc_data_direction = SCSI_DATA_NONE; 3127 cmd->sc_data_direction = DMA_NONE;
3128 cmd->cmd_len = 6; 3128 cmd->cmd_len = 6;
3129 cmd->cmnd[0] = START_STOP_UNIT; 3129 cmd->cmnd[0] = START_STOP_UNIT;
3130 cmd->cmnd[4] = le | SSS_START; 3130 cmd->cmnd[4] = le | SSS_START;
@@ -3659,7 +3659,7 @@ ahc_linux_run_device_queue(struct ahc_softc *ahc, struct ahc_linux_device *dev)
3659 3659
3660 cur_seg = (struct scatterlist *)cmd->request_buffer; 3660 cur_seg = (struct scatterlist *)cmd->request_buffer;
3661 nseg = pci_map_sg(ahc->dev_softc, cur_seg, cmd->use_sg, 3661 nseg = pci_map_sg(ahc->dev_softc, cur_seg, cmd->use_sg,
3662 scsi_to_pci_dma_dir(cmd->sc_data_direction)); 3662 cmd->sc_data_direction);
3663 end_seg = cur_seg + nseg; 3663 end_seg = cur_seg + nseg;
3664 /* Copy the segments into the SG list. */ 3664 /* Copy the segments into the SG list. */
3665 sg = scb->sg_list; 3665 sg = scb->sg_list;
@@ -3703,7 +3703,7 @@ ahc_linux_run_device_queue(struct ahc_softc *ahc, struct ahc_linux_device *dev)
3703 addr = pci_map_single(ahc->dev_softc, 3703 addr = pci_map_single(ahc->dev_softc,
3704 cmd->request_buffer, 3704 cmd->request_buffer,
3705 cmd->request_bufflen, 3705 cmd->request_bufflen,
3706 scsi_to_pci_dma_dir(cmd->sc_data_direction)); 3706 cmd->sc_data_direction);
3707 scb->platform_data->buf_busaddr = addr; 3707 scb->platform_data->buf_busaddr = addr;
3708 scb->sg_count = ahc_linux_map_seg(ahc, scb, 3708 scb->sg_count = ahc_linux_map_seg(ahc, scb,
3709 sg, addr, 3709 sg, addr,
diff --git a/drivers/scsi/aic7xxx/cam.h b/drivers/scsi/aic7xxx/cam.h
index d40ba0760c76..26f17e3fc45c 100644
--- a/drivers/scsi/aic7xxx/cam.h
+++ b/drivers/scsi/aic7xxx/cam.h
@@ -103,9 +103,9 @@ typedef enum {
103} ac_code; 103} ac_code;
104 104
105typedef enum { 105typedef enum {
106 CAM_DIR_IN = SCSI_DATA_READ, 106 CAM_DIR_IN = DMA_FROM_DEVICE,
107 CAM_DIR_OUT = SCSI_DATA_WRITE, 107 CAM_DIR_OUT = DMA_TO_DEVICE,
108 CAM_DIR_NONE = SCSI_DATA_NONE 108 CAM_DIR_NONE = DMA_NONE,
109} ccb_flags; 109} ccb_flags;
110 110
111#endif /* _AIC7XXX_CAM_H */ 111#endif /* _AIC7XXX_CAM_H */
diff --git a/drivers/scsi/aic7xxx_old.c b/drivers/scsi/aic7xxx_old.c
index a6e7bb0d53f4..9e9d0c40187e 100644
--- a/drivers/scsi/aic7xxx_old.c
+++ b/drivers/scsi/aic7xxx_old.c
@@ -2700,12 +2700,12 @@ aic7xxx_done(struct aic7xxx_host *p, struct aic7xxx_scb *scb)
2700 struct scatterlist *sg; 2700 struct scatterlist *sg;
2701 2701
2702 sg = (struct scatterlist *)cmd->request_buffer; 2702 sg = (struct scatterlist *)cmd->request_buffer;
2703 pci_unmap_sg(p->pdev, sg, cmd->use_sg, scsi_to_pci_dma_dir(cmd->sc_data_direction)); 2703 pci_unmap_sg(p->pdev, sg, cmd->use_sg, cmd->sc_data_direction);
2704 } 2704 }
2705 else if (cmd->request_bufflen) 2705 else if (cmd->request_bufflen)
2706 pci_unmap_single(p->pdev, aic7xxx_mapping(cmd), 2706 pci_unmap_single(p->pdev, aic7xxx_mapping(cmd),
2707 cmd->request_bufflen, 2707 cmd->request_bufflen,
2708 scsi_to_pci_dma_dir(cmd->sc_data_direction)); 2708 cmd->sc_data_direction);
2709 if (scb->flags & SCB_SENSE) 2709 if (scb->flags & SCB_SENSE)
2710 { 2710 {
2711 pci_unmap_single(p->pdev, 2711 pci_unmap_single(p->pdev,
@@ -10228,7 +10228,7 @@ aic7xxx_buildscb(struct aic7xxx_host *p, Scsi_Cmnd *cmd,
10228 10228
10229 sg = (struct scatterlist *)cmd->request_buffer; 10229 sg = (struct scatterlist *)cmd->request_buffer;
10230 scb->sg_length = 0; 10230 scb->sg_length = 0;
10231 use_sg = pci_map_sg(p->pdev, sg, cmd->use_sg, scsi_to_pci_dma_dir(cmd->sc_data_direction)); 10231 use_sg = pci_map_sg(p->pdev, sg, cmd->use_sg, cmd->sc_data_direction);
10232 /* 10232 /*
10233 * Copy the segments into the SG array. NOTE!!! - We used to 10233 * Copy the segments into the SG array. NOTE!!! - We used to
10234 * have the first entry both in the data_pointer area and the first 10234 * have the first entry both in the data_pointer area and the first
@@ -10256,7 +10256,7 @@ aic7xxx_buildscb(struct aic7xxx_host *p, Scsi_Cmnd *cmd,
10256 { 10256 {
10257 unsigned int address = pci_map_single(p->pdev, cmd->request_buffer, 10257 unsigned int address = pci_map_single(p->pdev, cmd->request_buffer,
10258 cmd->request_bufflen, 10258 cmd->request_bufflen,
10259 scsi_to_pci_dma_dir(cmd->sc_data_direction)); 10259 cmd->sc_data_direction);
10260 aic7xxx_mapping(cmd) = address; 10260 aic7xxx_mapping(cmd) = address;
10261 scb->sg_list[0].address = cpu_to_le32(address); 10261 scb->sg_list[0].address = cpu_to_le32(address);
10262 scb->sg_list[0].length = cpu_to_le32(cmd->request_bufflen); 10262 scb->sg_list[0].length = cpu_to_le32(cmd->request_bufflen);
diff --git a/drivers/scsi/arm/fas216.c b/drivers/scsi/arm/fas216.c
index 0a172c1e9f7e..3838f88e1fe0 100644
--- a/drivers/scsi/arm/fas216.c
+++ b/drivers/scsi/arm/fas216.c
@@ -2117,7 +2117,7 @@ request_sense:
2117 SCpnt->SCp.Message = 0; 2117 SCpnt->SCp.Message = 0;
2118 SCpnt->SCp.Status = 0; 2118 SCpnt->SCp.Status = 0;
2119 SCpnt->request_bufflen = sizeof(SCpnt->sense_buffer); 2119 SCpnt->request_bufflen = sizeof(SCpnt->sense_buffer);
2120 SCpnt->sc_data_direction = SCSI_DATA_READ; 2120 SCpnt->sc_data_direction = DMA_FROM_DEVICE;
2121 SCpnt->use_sg = 0; 2121 SCpnt->use_sg = 0;
2122 SCpnt->tag = 0; 2122 SCpnt->tag = 0;
2123 SCpnt->host_scribble = (void *)fas216_rq_sns_done; 2123 SCpnt->host_scribble = (void *)fas216_rq_sns_done;
diff --git a/drivers/scsi/cpqfcTSinit.c b/drivers/scsi/cpqfcTSinit.c
index 2eeb493f5a2b..5674ada6d5c2 100644
--- a/drivers/scsi/cpqfcTSinit.c
+++ b/drivers/scsi/cpqfcTSinit.c
@@ -642,12 +642,12 @@ int cpqfcTS_ioctl( struct scsi_device *ScsiDev, int Cmnd, void *arg)
642 return( -EFAULT); 642 return( -EFAULT);
643 } 643 }
644 } 644 }
645 ScsiPassThruReq->sr_data_direction = SCSI_DATA_WRITE; 645 ScsiPassThruReq->sr_data_direction = DMA_TO_DEVICE;
646 } else if (vendor_cmd->rw_flag == VENDOR_READ_OPCODE) { 646 } else if (vendor_cmd->rw_flag == VENDOR_READ_OPCODE) {
647 ScsiPassThruReq->sr_data_direction = SCSI_DATA_READ; 647 ScsiPassThruReq->sr_data_direction = DMA_FROM_DEVICE;
648 } else 648 } else
649 // maybe this means a bug in the user app 649 // maybe this means a bug in the user app
650 ScsiPassThruReq->sr_data_direction = SCSI_DATA_NONE; 650 ScsiPassThruReq->sr_data_direction = DMA_BIDIRECTIONAL;
651 651
652 ScsiPassThruReq->sr_cmd_len = 0; // set correctly by scsi_do_req() 652 ScsiPassThruReq->sr_cmd_len = 0; // set correctly by scsi_do_req()
653 ScsiPassThruReq->sr_sense_buffer[0] = 0; 653 ScsiPassThruReq->sr_sense_buffer[0] = 0;
diff --git a/drivers/scsi/cpqfcTSworker.c b/drivers/scsi/cpqfcTSworker.c
index a5fd7427e9da..d822ddcc52b2 100644
--- a/drivers/scsi/cpqfcTSworker.c
+++ b/drivers/scsi/cpqfcTSworker.c
@@ -5129,7 +5129,7 @@ cpqfc_undo_SEST_mappings(struct pci_dev *pcidev,
5129 for (i=*sgPages_head; i != NULL ;i = next) 5129 for (i=*sgPages_head; i != NULL ;i = next)
5130 { 5130 {
5131 pci_unmap_single(pcidev, i->busaddr, i->maplen, 5131 pci_unmap_single(pcidev, i->busaddr, i->maplen,
5132 scsi_to_pci_dma_dir(PCI_DMA_TODEVICE)); 5132 PCI_DMA_TODEVICE);
5133 i->busaddr = (dma_addr_t) NULL; 5133 i->busaddr = (dma_addr_t) NULL;
5134 i->maplen = 0L; 5134 i->maplen = 0L;
5135 next = i->next; 5135 next = i->next;
@@ -5195,7 +5195,7 @@ static ULONG build_SEST_sgList(
5195 contigaddr = ulBuff = pci_map_single(pcidev, 5195 contigaddr = ulBuff = pci_map_single(pcidev,
5196 Cmnd->request_buffer, 5196 Cmnd->request_buffer,
5197 Cmnd->request_bufflen, 5197 Cmnd->request_bufflen,
5198 scsi_to_pci_dma_dir(Cmnd->sc_data_direction)); 5198 Cmnd->sc_data_direction);
5199 // printk("ms %p ", ulBuff); 5199 // printk("ms %p ", ulBuff);
5200 } 5200 }
5201 else { 5201 else {
@@ -5224,7 +5224,7 @@ static ULONG build_SEST_sgList(
5224 unsigned long btg; 5224 unsigned long btg;
5225 contigaddr = pci_map_single(pcidev, Cmnd->request_buffer, 5225 contigaddr = pci_map_single(pcidev, Cmnd->request_buffer,
5226 Cmnd->request_bufflen, 5226 Cmnd->request_bufflen,
5227 scsi_to_pci_dma_dir(Cmnd->sc_data_direction)); 5227 Cmnd->sc_data_direction);
5228 5228
5229 // printk("contigaddr = %p, len = %d\n", 5229 // printk("contigaddr = %p, len = %d\n",
5230 // (void *) contigaddr, bytes_to_go); 5230 // (void *) contigaddr, bytes_to_go);
@@ -5247,7 +5247,7 @@ static ULONG build_SEST_sgList(
5247 5247
5248 sgl = (struct scatterlist*)Cmnd->request_buffer; 5248 sgl = (struct scatterlist*)Cmnd->request_buffer;
5249 sg_count = pci_map_sg(pcidev, sgl, Cmnd->use_sg, 5249 sg_count = pci_map_sg(pcidev, sgl, Cmnd->use_sg,
5250 scsi_to_pci_dma_dir(Cmnd->sc_data_direction)); 5250 Cmnd->sc_data_direction);
5251 if( sg_count <= 3 ) { 5251 if( sg_count <= 3 ) {
5252 5252
5253 // we need to be careful here that no individual mapping 5253 // we need to be careful here that no individual mapping
@@ -5400,7 +5400,7 @@ static ULONG build_SEST_sgList(
5400 5400
5401 cpqfc_undo_SEST_mappings(pcidev, contigaddr, 5401 cpqfc_undo_SEST_mappings(pcidev, contigaddr,
5402 Cmnd->request_bufflen, 5402 Cmnd->request_bufflen,
5403 scsi_to_pci_dma_dir(Cmnd->sc_data_direction), 5403 Cmnd->sc_data_direction,
5404 sgl, Cmnd->use_sg, sgPages_head, AllocatedPages+1); 5404 sgl, Cmnd->use_sg, sgPages_head, AllocatedPages+1);
5405 5405
5406 // FIXME: testing shows that if we get here, 5406 // FIXME: testing shows that if we get here,
@@ -5946,7 +5946,7 @@ cpqfc_pci_unmap_extended_sg(struct pci_dev *pcidev,
5946 // for each extended scatter gather region needing unmapping... 5946 // for each extended scatter gather region needing unmapping...
5947 for (i=fcChip->SEST->sgPages[x_ID] ; i != NULL ; i = i->next) 5947 for (i=fcChip->SEST->sgPages[x_ID] ; i != NULL ; i = i->next)
5948 pci_unmap_single(pcidev, i->busaddr, i->maplen, 5948 pci_unmap_single(pcidev, i->busaddr, i->maplen,
5949 scsi_to_pci_dma_dir(PCI_DMA_TODEVICE)); 5949 PCI_DMA_TODEVICE);
5950} 5950}
5951 5951
5952// Called also from cpqfcTScontrol.o, so can't be static 5952// Called also from cpqfcTScontrol.o, so can't be static
@@ -5960,14 +5960,14 @@ cpqfc_pci_unmap(struct pci_dev *pcidev,
5960 if (cmd->use_sg) { // Used scatter gather list for data buffer? 5960 if (cmd->use_sg) { // Used scatter gather list for data buffer?
5961 cpqfc_pci_unmap_extended_sg(pcidev, fcChip, x_ID); 5961 cpqfc_pci_unmap_extended_sg(pcidev, fcChip, x_ID);
5962 pci_unmap_sg(pcidev, cmd->buffer, cmd->use_sg, 5962 pci_unmap_sg(pcidev, cmd->buffer, cmd->use_sg,
5963 scsi_to_pci_dma_dir(cmd->sc_data_direction)); 5963 cmd->sc_data_direction);
5964 // printk("umsg %d\n", cmd->use_sg); 5964 // printk("umsg %d\n", cmd->use_sg);
5965 } 5965 }
5966 else if (cmd->request_bufflen) { 5966 else if (cmd->request_bufflen) {
5967 // printk("ums %p ", fcChip->SEST->u[ x_ID ].IWE.GAddr1); 5967 // printk("ums %p ", fcChip->SEST->u[ x_ID ].IWE.GAddr1);
5968 pci_unmap_single(pcidev, fcChip->SEST->u[ x_ID ].IWE.GAddr1, 5968 pci_unmap_single(pcidev, fcChip->SEST->u[ x_ID ].IWE.GAddr1,
5969 cmd->request_bufflen, 5969 cmd->request_bufflen,
5970 scsi_to_pci_dma_dir(cmd->sc_data_direction)); 5970 cmd->sc_data_direction);
5971 } 5971 }
5972} 5972}
5973 5973
diff --git a/drivers/scsi/ips.c b/drivers/scsi/ips.c
index 47c263e5cd39..fbc2cb6667a1 100644
--- a/drivers/scsi/ips.c
+++ b/drivers/scsi/ips.c
@@ -231,9 +231,9 @@ module_param(ips, charp, 0);
231#endif 231#endif
232 232
233#define IPS_DMA_DIR(scb) ((!scb->scsi_cmd || ips_is_passthru(scb->scsi_cmd) || \ 233#define IPS_DMA_DIR(scb) ((!scb->scsi_cmd || ips_is_passthru(scb->scsi_cmd) || \
234 SCSI_DATA_NONE == scb->scsi_cmd->sc_data_direction) ? \ 234 DMA_NONE == scb->scsi_cmd->sc_data_direction) ? \
235 PCI_DMA_BIDIRECTIONAL : \ 235 PCI_DMA_BIDIRECTIONAL : \
236 scsi_to_pci_dma_dir(scb->scsi_cmd->sc_data_direction)) 236 scb->scsi_cmd->sc_data_direction)
237 237
238#ifdef IPS_DEBUG 238#ifdef IPS_DEBUG
239#define METHOD_TRACE(s, i) if (ips_debug >= (i+10)) printk(KERN_NOTICE s "\n"); 239#define METHOD_TRACE(s, i) if (ips_debug >= (i+10)) printk(KERN_NOTICE s "\n");
@@ -2849,8 +2849,7 @@ ips_next(ips_ha_t * ha, int intr)
2849 2849
2850 sg = SC->request_buffer; 2850 sg = SC->request_buffer;
2851 scb->sg_count = pci_map_sg(ha->pcidev, sg, SC->use_sg, 2851 scb->sg_count = pci_map_sg(ha->pcidev, sg, SC->use_sg,
2852 scsi_to_pci_dma_dir(SC-> 2852 SC->sc_data_direction);
2853 sc_data_direction));
2854 scb->flags |= IPS_SCB_MAP_SG; 2853 scb->flags |= IPS_SCB_MAP_SG;
2855 for (i = 0; i < scb->sg_count; i++) { 2854 for (i = 0; i < scb->sg_count; i++) {
2856 if (ips_fill_scb_sg_single 2855 if (ips_fill_scb_sg_single
@@ -2865,8 +2864,7 @@ ips_next(ips_ha_t * ha, int intr)
2865 pci_map_single(ha->pcidev, 2864 pci_map_single(ha->pcidev,
2866 SC->request_buffer, 2865 SC->request_buffer,
2867 SC->request_bufflen, 2866 SC->request_bufflen,
2868 scsi_to_pci_dma_dir(SC-> 2867 SC->sc_data_direction);
2869 sc_data_direction));
2870 scb->flags |= IPS_SCB_MAP_SINGLE; 2868 scb->flags |= IPS_SCB_MAP_SINGLE;
2871 ips_fill_scb_sg_single(ha, scb->data_busaddr, 2869 ips_fill_scb_sg_single(ha, scb->data_busaddr,
2872 scb, 0, 2870 scb, 0,
diff --git a/drivers/scsi/libata-scsi.c b/drivers/scsi/libata-scsi.c
index 4e5e54a1564b..4c96df060c3b 100644
--- a/drivers/scsi/libata-scsi.c
+++ b/drivers/scsi/libata-scsi.c
@@ -305,7 +305,7 @@ void ata_to_sense_error(struct ata_queued_cmd *qc, u8 drv_stat)
305 sb[0] = 0x70; 305 sb[0] = 0x70;
306 sb[2] = MEDIUM_ERROR; 306 sb[2] = MEDIUM_ERROR;
307 sb[7] = 0x0A; 307 sb[7] = 0x0A;
308 if (cmd->sc_data_direction == SCSI_DATA_READ) { 308 if (cmd->sc_data_direction == DMA_FROM_DEVICE) {
309 sb[12] = 0x11; /* "unrecovered read error" */ 309 sb[12] = 0x11; /* "unrecovered read error" */
310 sb[13] = 0x04; 310 sb[13] = 0x04;
311 } else { 311 } else {
@@ -671,8 +671,8 @@ static void ata_scsi_translate(struct ata_port *ap, struct ata_device *dev,
671 return; 671 return;
672 672
673 /* data is present; dma-map it */ 673 /* data is present; dma-map it */
674 if (cmd->sc_data_direction == SCSI_DATA_READ || 674 if (cmd->sc_data_direction == DMA_FROM_DEVICE ||
675 cmd->sc_data_direction == SCSI_DATA_WRITE) { 675 cmd->sc_data_direction == DMA_TO_DEVICE) {
676 if (unlikely(cmd->request_bufflen < 1)) { 676 if (unlikely(cmd->request_bufflen < 1)) {
677 printk(KERN_WARNING "ata%u(%u): WARNING: zero len r/w req\n", 677 printk(KERN_WARNING "ata%u(%u): WARNING: zero len r/w req\n",
678 ap->id, dev->devno); 678 ap->id, dev->devno);
@@ -1304,7 +1304,7 @@ static unsigned int atapi_xlat(struct ata_queued_cmd *qc, u8 *scsicmd)
1304 struct scsi_cmnd *cmd = qc->scsicmd; 1304 struct scsi_cmnd *cmd = qc->scsicmd;
1305 struct ata_device *dev = qc->dev; 1305 struct ata_device *dev = qc->dev;
1306 int using_pio = (dev->flags & ATA_DFLAG_PIO); 1306 int using_pio = (dev->flags & ATA_DFLAG_PIO);
1307 int nodata = (cmd->sc_data_direction == SCSI_DATA_NONE); 1307 int nodata = (cmd->sc_data_direction == DMA_NONE);
1308 1308
1309 if (!using_pio) 1309 if (!using_pio)
1310 /* Check whether ATAPI DMA is safe */ 1310 /* Check whether ATAPI DMA is safe */
@@ -1316,7 +1316,7 @@ static unsigned int atapi_xlat(struct ata_queued_cmd *qc, u8 *scsicmd)
1316 qc->complete_fn = atapi_qc_complete; 1316 qc->complete_fn = atapi_qc_complete;
1317 1317
1318 qc->tf.flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE; 1318 qc->tf.flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE;
1319 if (cmd->sc_data_direction == SCSI_DATA_WRITE) { 1319 if (cmd->sc_data_direction == DMA_TO_DEVICE) {
1320 qc->tf.flags |= ATA_TFLAG_WRITE; 1320 qc->tf.flags |= ATA_TFLAG_WRITE;
1321 DPRINTK("direction: write\n"); 1321 DPRINTK("direction: write\n");
1322 } 1322 }
@@ -1340,7 +1340,7 @@ static unsigned int atapi_xlat(struct ata_queued_cmd *qc, u8 *scsicmd)
1340 1340
1341#ifdef ATAPI_ENABLE_DMADIR 1341#ifdef ATAPI_ENABLE_DMADIR
1342 /* some SATA bridges need us to indicate data xfer direction */ 1342 /* some SATA bridges need us to indicate data xfer direction */
1343 if (cmd->sc_data_direction != SCSI_DATA_WRITE) 1343 if (cmd->sc_data_direction != DMA_TO_DEVICE)
1344 qc->tf.feature |= ATAPI_DMADIR; 1344 qc->tf.feature |= ATAPI_DMADIR;
1345#endif 1345#endif
1346 } 1346 }
diff --git a/drivers/scsi/pci2000.c b/drivers/scsi/pci2000.c
index d58f303127f5..377a4666b568 100644
--- a/drivers/scsi/pci2000.c
+++ b/drivers/scsi/pci2000.c
@@ -209,7 +209,7 @@ static int BuildSgList (Scsi_Cmnd *SCpnt, PADAPTER2000 padapter, PDEV2000 pdev)
209 if ( SCpnt->use_sg ) 209 if ( SCpnt->use_sg )
210 { 210 {
211 sg = (struct scatterlist *)SCpnt->request_buffer; 211 sg = (struct scatterlist *)SCpnt->request_buffer;
212 zc = pci_map_sg (padapter->pdev, sg, SCpnt->use_sg, scsi_to_pci_dma_dir (SCpnt->sc_data_direction)); 212 zc = pci_map_sg (padapter->pdev, sg, SCpnt->use_sg, SCpnt->sc_data_direction);
213 for ( z = 0; z < zc; z++ ) 213 for ( z = 0; z < zc; z++ )
214 { 214 {
215 pdev->scatGath[z].address = cpu_to_le32 (sg_dma_address (sg)); 215 pdev->scatGath[z].address = cpu_to_le32 (sg_dma_address (sg));
@@ -225,7 +225,9 @@ static int BuildSgList (Scsi_Cmnd *SCpnt, PADAPTER2000 padapter, PDEV2000 pdev)
225 outl (0, padapter->mb3); 225 outl (0, padapter->mb3);
226 return TRUE; 226 return TRUE;
227 } 227 }
228 SCpnt->SCp.have_data_in = pci_map_single (padapter->pdev, SCpnt->request_buffer, SCpnt->request_bufflen, scsi_to_pci_dma_dir (SCpnt->sc_data_direction)); 228 SCpnt->SCp.have_data_in = pci_map_single (padapter->pdev,
229 SCpnt->request_buffer, SCpnt->request_bufflen,
230 SCpnt->sc_data_direction);
229 outl (SCpnt->SCp.have_data_in, padapter->mb2); 231 outl (SCpnt->SCp.have_data_in, padapter->mb2);
230 outl (SCpnt->request_bufflen, padapter->mb3); 232 outl (SCpnt->request_bufflen, padapter->mb3);
231 return TRUE; 233 return TRUE;
@@ -340,11 +342,11 @@ unmapProceed:;
340 } 342 }
341 } 343 }
342 if ( SCpnt->SCp.have_data_in ) 344 if ( SCpnt->SCp.have_data_in )
343 pci_unmap_single (padapter->pdev, SCpnt->SCp.have_data_in, SCpnt->request_bufflen, scsi_to_pci_dma_dir(SCpnt->sc_data_direction)); 345 pci_unmap_single (padapter->pdev, SCpnt->SCp.have_data_in, SCpnt->request_bufflen, SCpnt->sc_data_direction);
344 else 346 else
345 { 347 {
346 if ( SCpnt->use_sg ) 348 if ( SCpnt->use_sg )
347 pci_unmap_sg (padapter->pdev, (struct scatterlist *)SCpnt->request_buffer, SCpnt->use_sg, scsi_to_pci_dma_dir(SCpnt->sc_data_direction)); 349 pci_unmap_sg (padapter->pdev, (struct scatterlist *)SCpnt->request_buffer, SCpnt->use_sg, SCpnt->sc_data_direction);
348 } 350 }
349 351
350irqProceed:; 352irqProceed:;
@@ -495,7 +497,7 @@ int Pci2000_QueueCommand (Scsi_Cmnd *SCpnt, void (*done)(Scsi_Cmnd *))
495 else 497 else
496 { 498 {
497 SCpnt->SCp.have_data_in = pci_map_single (padapter->pdev, SCpnt->request_buffer, SCpnt->request_bufflen, 499 SCpnt->SCp.have_data_in = pci_map_single (padapter->pdev, SCpnt->request_buffer, SCpnt->request_bufflen,
498 scsi_to_pci_dma_dir(SCpnt->sc_data_direction)); 500 SCpnt->sc_data_direction);
499 outl (SCpnt->SCp.have_data_in, padapter->mb2); 501 outl (SCpnt->SCp.have_data_in, padapter->mb2);
500 } 502 }
501 outl (cdb[5], padapter->mb0); 503 outl (cdb[5], padapter->mb0);
@@ -511,13 +513,13 @@ int Pci2000_QueueCommand (Scsi_Cmnd *SCpnt, void (*done)(Scsi_Cmnd *))
511 SCpnt->SCp.have_data_in = pci_map_single (padapter->pdev, 513 SCpnt->SCp.have_data_in = pci_map_single (padapter->pdev,
512 ((struct scatterlist *)SCpnt->request_buffer)->address, 514 ((struct scatterlist *)SCpnt->request_buffer)->address,
513 SCpnt->request_bufflen, 515 SCpnt->request_bufflen,
514 scsi_to_pci_dma_dir (SCpnt->sc_data_direction)); 516 SCpnt->sc_data_direction);
515 } 517 }
516 else 518 else
517 { 519 {
518 SCpnt->SCp.have_data_in = pci_map_single (padapter->pdev, SCpnt->request_buffer, 520 SCpnt->SCp.have_data_in = pci_map_single (padapter->pdev, SCpnt->request_buffer,
519 SCpnt->request_bufflen, 521 SCpnt->request_bufflen,
520 scsi_to_pci_dma_dir (SCpnt->sc_data_direction)); 522 SCpnt->sc_data_direction);
521 } 523 }
522 outl (SCpnt->SCp.have_data_in, padapter->mb2); 524 outl (SCpnt->SCp.have_data_in, padapter->mb2);
523 outl (SCpnt->request_bufflen, padapter->mb3); 525 outl (SCpnt->request_bufflen, padapter->mb3);
diff --git a/drivers/scsi/qlogicfc.c b/drivers/scsi/qlogicfc.c
index 24c1174b0c2f..ddf0f4277ee8 100644
--- a/drivers/scsi/qlogicfc.c
+++ b/drivers/scsi/qlogicfc.c
@@ -1261,7 +1261,7 @@ static int isp2x00_queuecommand(Scsi_Cmnd * Cmnd, void (*done) (Scsi_Cmnd *))
1261 1261
1262 if (Cmnd->use_sg) { 1262 if (Cmnd->use_sg) {
1263 sg = (struct scatterlist *) Cmnd->request_buffer; 1263 sg = (struct scatterlist *) Cmnd->request_buffer;
1264 sg_count = pci_map_sg(hostdata->pci_dev, sg, Cmnd->use_sg, scsi_to_pci_dma_dir(Cmnd->sc_data_direction)); 1264 sg_count = pci_map_sg(hostdata->pci_dev, sg, Cmnd->use_sg, Cmnd->sc_data_direction);
1265 cmd->segment_cnt = cpu_to_le16(sg_count); 1265 cmd->segment_cnt = cpu_to_le16(sg_count);
1266 ds = cmd->dataseg; 1266 ds = cmd->dataseg;
1267 /* fill in first two sg entries: */ 1267 /* fill in first two sg entries: */
@@ -1307,7 +1307,7 @@ static int isp2x00_queuecommand(Scsi_Cmnd * Cmnd, void (*done) (Scsi_Cmnd *))
1307 dma_addr_t busaddr = pci_map_page(hostdata->pci_dev, 1307 dma_addr_t busaddr = pci_map_page(hostdata->pci_dev,
1308 page, offset, 1308 page, offset,
1309 Cmnd->request_bufflen, 1309 Cmnd->request_bufflen,
1310 scsi_to_pci_dma_dir(Cmnd->sc_data_direction)); 1310 Cmnd->sc_data_direction);
1311 Cmnd->SCp.dma_handle = busaddr; 1311 Cmnd->SCp.dma_handle = busaddr;
1312 1312
1313 cmd->dataseg[0].d_base = cpu_to_le32(pci64_dma_lo32(busaddr)); 1313 cmd->dataseg[0].d_base = cpu_to_le32(pci64_dma_lo32(busaddr));
@@ -1320,7 +1320,7 @@ static int isp2x00_queuecommand(Scsi_Cmnd * Cmnd, void (*done) (Scsi_Cmnd *))
1320 cmd->segment_cnt = cpu_to_le16(1); /* Shouldn't this be 0? */ 1320 cmd->segment_cnt = cpu_to_le16(1); /* Shouldn't this be 0? */
1321 } 1321 }
1322 1322
1323 if (Cmnd->sc_data_direction == SCSI_DATA_WRITE) 1323 if (Cmnd->sc_data_direction == DMA_TO_DEVICE)
1324 cmd->control_flags = cpu_to_le16(CFLAG_WRITE); 1324 cmd->control_flags = cpu_to_le16(CFLAG_WRITE);
1325 else 1325 else
1326 cmd->control_flags = cpu_to_le16(CFLAG_READ); 1326 cmd->control_flags = cpu_to_le16(CFLAG_READ);
@@ -1405,13 +1405,13 @@ static void redo_port_db(unsigned long arg)
1405 pci_unmap_sg(hostdata->pci_dev, 1405 pci_unmap_sg(hostdata->pci_dev,
1406 (struct scatterlist *)Cmnd->buffer, 1406 (struct scatterlist *)Cmnd->buffer,
1407 Cmnd->use_sg, 1407 Cmnd->use_sg,
1408 scsi_to_pci_dma_dir(Cmnd->sc_data_direction)); 1408 Cmnd->sc_data_direction);
1409 else if (Cmnd->request_bufflen && 1409 else if (Cmnd->request_bufflen &&
1410 Cmnd->sc_data_direction != PCI_DMA_NONE) { 1410 Cmnd->sc_data_direction != PCI_DMA_NONE) {
1411 pci_unmap_page(hostdata->pci_dev, 1411 pci_unmap_page(hostdata->pci_dev,
1412 Cmnd->SCp.dma_handle, 1412 Cmnd->SCp.dma_handle,
1413 Cmnd->request_bufflen, 1413 Cmnd->request_bufflen,
1414 scsi_to_pci_dma_dir(Cmnd->sc_data_direction)); 1414 Cmnd->sc_data_direction);
1415 } 1415 }
1416 1416
1417 hostdata->handle_ptrs[i]->result = DID_SOFT_ERROR << 16; 1417 hostdata->handle_ptrs[i]->result = DID_SOFT_ERROR << 16;
@@ -1515,13 +1515,13 @@ void isp2x00_intr_handler(int irq, void *dev_id, struct pt_regs *regs)
1515 pci_unmap_sg(hostdata->pci_dev, 1515 pci_unmap_sg(hostdata->pci_dev,
1516 (struct scatterlist *)Cmnd->buffer, 1516 (struct scatterlist *)Cmnd->buffer,
1517 Cmnd->use_sg, 1517 Cmnd->use_sg,
1518 scsi_to_pci_dma_dir(Cmnd->sc_data_direction)); 1518 Cmnd->sc_data_direction);
1519 else if (Cmnd->request_bufflen && 1519 else if (Cmnd->request_bufflen &&
1520 Cmnd->sc_data_direction != PCI_DMA_NONE) 1520 Cmnd->sc_data_direction != PCI_DMA_NONE)
1521 pci_unmap_page(hostdata->pci_dev, 1521 pci_unmap_page(hostdata->pci_dev,
1522 Cmnd->SCp.dma_handle, 1522 Cmnd->SCp.dma_handle,
1523 Cmnd->request_bufflen, 1523 Cmnd->request_bufflen,
1524 scsi_to_pci_dma_dir(Cmnd->sc_data_direction)); 1524 Cmnd->sc_data_direction);
1525 Cmnd->result = 0x0; 1525 Cmnd->result = 0x0;
1526 (*Cmnd->scsi_done) (Cmnd); 1526 (*Cmnd->scsi_done) (Cmnd);
1527 } else 1527 } else
@@ -1569,12 +1569,12 @@ void isp2x00_intr_handler(int irq, void *dev_id, struct pt_regs *regs)
1569 if (Cmnd->use_sg) 1569 if (Cmnd->use_sg)
1570 pci_unmap_sg(hostdata->pci_dev, 1570 pci_unmap_sg(hostdata->pci_dev,
1571 (struct scatterlist *)Cmnd->buffer, Cmnd->use_sg, 1571 (struct scatterlist *)Cmnd->buffer, Cmnd->use_sg,
1572 scsi_to_pci_dma_dir(Cmnd->sc_data_direction)); 1572 Cmnd->sc_data_direction);
1573 else if (Cmnd->request_bufflen && Cmnd->sc_data_direction != PCI_DMA_NONE) 1573 else if (Cmnd->request_bufflen && Cmnd->sc_data_direction != PCI_DMA_NONE)
1574 pci_unmap_page(hostdata->pci_dev, 1574 pci_unmap_page(hostdata->pci_dev,
1575 Cmnd->SCp.dma_handle, 1575 Cmnd->SCp.dma_handle,
1576 Cmnd->request_bufflen, 1576 Cmnd->request_bufflen,
1577 scsi_to_pci_dma_dir(Cmnd->sc_data_direction)); 1577 Cmnd->sc_data_direction);
1578 1578
1579 /* 1579 /*
1580 * if any of the following are true we do not 1580 * if any of the following are true we do not
diff --git a/drivers/scsi/qlogicisp.c b/drivers/scsi/qlogicisp.c
index 71d597a9b0b0..6d29e1b864e2 100644
--- a/drivers/scsi/qlogicisp.c
+++ b/drivers/scsi/qlogicisp.c
@@ -877,7 +877,7 @@ static int isp1020_queuecommand(Scsi_Cmnd *Cmnd, void (*done)(Scsi_Cmnd *))
877 ds = cmd->dataseg; 877 ds = cmd->dataseg;
878 878
879 sg_count = pci_map_sg(hostdata->pci_dev, sg, Cmnd->use_sg, 879 sg_count = pci_map_sg(hostdata->pci_dev, sg, Cmnd->use_sg,
880 scsi_to_pci_dma_dir(Cmnd->sc_data_direction)); 880 Cmnd->sc_data_direction);
881 881
882 cmd->segment_cnt = cpu_to_le16(sg_count); 882 cmd->segment_cnt = cpu_to_le16(sg_count);
883 883
@@ -934,7 +934,7 @@ static int isp1020_queuecommand(Scsi_Cmnd *Cmnd, void (*done)(Scsi_Cmnd *))
934 dma_addr = pci_map_single(hostdata->pci_dev, 934 dma_addr = pci_map_single(hostdata->pci_dev,
935 Cmnd->request_buffer, 935 Cmnd->request_buffer,
936 Cmnd->request_bufflen, 936 Cmnd->request_bufflen,
937 scsi_to_pci_dma_dir(Cmnd->sc_data_direction)); 937 Cmnd->sc_data_direction);
938 Cmnd->SCp.ptr = (char *)(unsigned long) dma_addr; 938 Cmnd->SCp.ptr = (char *)(unsigned long) dma_addr;
939 939
940 cmd->dataseg[0].d_base = 940 cmd->dataseg[0].d_base =
@@ -1067,7 +1067,7 @@ void isp1020_intr_handler(int irq, void *dev_id, struct pt_regs *regs)
1067 pci_unmap_sg(hostdata->pci_dev, 1067 pci_unmap_sg(hostdata->pci_dev,
1068 (struct scatterlist *)Cmnd->buffer, 1068 (struct scatterlist *)Cmnd->buffer,
1069 Cmnd->use_sg, 1069 Cmnd->use_sg,
1070 scsi_to_pci_dma_dir(Cmnd->sc_data_direction)); 1070 Cmnd->sc_data_direction);
1071 else if (Cmnd->request_bufflen) 1071 else if (Cmnd->request_bufflen)
1072 pci_unmap_single(hostdata->pci_dev, 1072 pci_unmap_single(hostdata->pci_dev,
1073#ifdef CONFIG_QL_ISP_A64 1073#ifdef CONFIG_QL_ISP_A64
@@ -1076,7 +1076,7 @@ void isp1020_intr_handler(int irq, void *dev_id, struct pt_regs *regs)
1076 (u32)((long)Cmnd->SCp.ptr), 1076 (u32)((long)Cmnd->SCp.ptr),
1077#endif 1077#endif
1078 Cmnd->request_bufflen, 1078 Cmnd->request_bufflen,
1079 scsi_to_pci_dma_dir(Cmnd->sc_data_direction)); 1079 Cmnd->sc_data_direction);
1080 1080
1081 isp_outw(out_ptr, host, MBOX5); 1081 isp_outw(out_ptr, host, MBOX5);
1082 (*Cmnd->scsi_done)(Cmnd); 1082 (*Cmnd->scsi_done)(Cmnd);
diff --git a/drivers/scsi/scsi.h b/drivers/scsi/scsi.h
index e2360c26ef01..5ee5d80a9931 100644
--- a/drivers/scsi/scsi.h
+++ b/drivers/scsi/scsi.h
@@ -45,21 +45,6 @@ struct scsi_device;
45struct scsi_target; 45struct scsi_target;
46struct scatterlist; 46struct scatterlist;
47 47
48/*
49 * Legacy dma direction interfaces.
50 *
51 * This assumes the pci/sbus dma mapping flags have the same numercial
52 * values as the generic dma-mapping ones. Currently they have but there's
53 * no way to check. Better don't use these interfaces!
54 */
55#define SCSI_DATA_UNKNOWN (DMA_BIDIRECTIONAL)
56#define SCSI_DATA_WRITE (DMA_TO_DEVICE)
57#define SCSI_DATA_READ (DMA_FROM_DEVICE)
58#define SCSI_DATA_NONE (DMA_NONE)
59
60#define scsi_to_pci_dma_dir(scsi_dir) ((int)(scsi_dir))
61#define scsi_to_sbus_dma_dir(scsi_dir) ((int)(scsi_dir))
62
63/* obsolete typedef junk. */ 48/* obsolete typedef junk. */
64#include "scsi_typedefs.h" 49#include "scsi_typedefs.h"
65 50
diff --git a/drivers/scsi/sg.c b/drivers/scsi/sg.c
index ce8332297dfa..7936aafc3d05 100644
--- a/drivers/scsi/sg.c
+++ b/drivers/scsi/sg.c
@@ -747,16 +747,16 @@ sg_common_write(Sg_fd * sfp, Sg_request * srp,
747 switch (hp->dxfer_direction) { 747 switch (hp->dxfer_direction) {
748 case SG_DXFER_TO_FROM_DEV: 748 case SG_DXFER_TO_FROM_DEV:
749 case SG_DXFER_FROM_DEV: 749 case SG_DXFER_FROM_DEV:
750 SRpnt->sr_data_direction = SCSI_DATA_READ; 750 SRpnt->sr_data_direction = DMA_FROM_DEVICE;
751 break; 751 break;
752 case SG_DXFER_TO_DEV: 752 case SG_DXFER_TO_DEV:
753 SRpnt->sr_data_direction = SCSI_DATA_WRITE; 753 SRpnt->sr_data_direction = DMA_TO_DEVICE;
754 break; 754 break;
755 case SG_DXFER_UNKNOWN: 755 case SG_DXFER_UNKNOWN:
756 SRpnt->sr_data_direction = SCSI_DATA_UNKNOWN; 756 SRpnt->sr_data_direction = DMA_BIDIRECTIONAL;
757 break; 757 break;
758 default: 758 default:
759 SRpnt->sr_data_direction = SCSI_DATA_NONE; 759 SRpnt->sr_data_direction = DMA_NONE;
760 break; 760 break;
761 } 761 }
762 SRpnt->upper_private_data = srp; 762 SRpnt->upper_private_data = srp;