]> git.karo-electronics.de Git - linux-beck.git/commitdiff
firewire: sbp2: use scsi_dma_(un)map
authorClemens Ladisch <clemens@ladisch.de>
Fri, 18 May 2012 16:40:19 +0000 (18:40 +0200)
committerStefan Richter <stefanr@s5r6.in-berlin.de>
Mon, 21 May 2012 19:42:51 +0000 (21:42 +0200)
Use the scsi_dma_map/scsi_dma_unmap helper to simplify the code
a little.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
drivers/firewire/sbp2.c

index 2e202d3bf84dc52e464ced73d24248475d4209e4..6ffaef3307e8302517cd83d1c6d30746a1bcd307 100644 (file)
@@ -1296,10 +1296,7 @@ static struct fw_driver sbp2_driver = {
 static void sbp2_unmap_scatterlist(struct device *card_device,
                                   struct sbp2_command_orb *orb)
 {
-       if (scsi_sg_count(orb->cmd))
-               dma_unmap_sg(card_device, scsi_sglist(orb->cmd),
-                            scsi_sg_count(orb->cmd),
-                            orb->cmd->sc_data_direction);
+       scsi_dma_unmap(orb->cmd);
 
        if (orb->request.misc & cpu_to_be32(COMMAND_ORB_PAGE_TABLE_PRESENT))
                dma_unmap_single(card_device, orb->page_table_bus,
@@ -1405,9 +1402,8 @@ static int sbp2_map_scatterlist(struct sbp2_command_orb *orb,
        struct scatterlist *sg = scsi_sglist(orb->cmd);
        int i, n;
 
-       n = dma_map_sg(device->card->device, sg, scsi_sg_count(orb->cmd),
-                      orb->cmd->sc_data_direction);
-       if (n == 0)
+       n = scsi_dma_map(orb->cmd);
+       if (n <= 0)
                goto fail;
 
        /*
@@ -1453,8 +1449,7 @@ static int sbp2_map_scatterlist(struct sbp2_command_orb *orb,
        return 0;
 
  fail_page_table:
-       dma_unmap_sg(device->card->device, scsi_sglist(orb->cmd),
-                    scsi_sg_count(orb->cmd), orb->cmd->sc_data_direction);
+       scsi_dma_unmap(orb->cmd);
  fail:
        return -ENOMEM;
 }