]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/scsi/3w-xxxx.c
[SCSI] qla2xxx: Add support for host supported speeds FC transport attribute.
[linux-2.6-omap-h63xx.git] / drivers / scsi / 3w-xxxx.c
index 59716ebeb10c1a5c100d42d5941f18e2ba1769ff..adb98a297210f08b8f8b3d3d4003e7aae7dabb35 100644 (file)
@@ -1463,18 +1463,10 @@ static void tw_transfer_internal(TW_Device_Extension *tw_dev, int request_id,
                                 void *data, unsigned int len)
 {
        struct scsi_cmnd *cmd = tw_dev->srb[request_id];
-       void *buf;
-       unsigned int transfer_len;
-       unsigned long flags = 0;
-       struct scatterlist *sg = scsi_sglist(cmd);
+       unsigned long flags;
 
        local_irq_save(flags);
-       buf = kmap_atomic(sg_page(sg), KM_IRQ0) + sg->offset;
-       transfer_len = min(sg->length, len);
-
-       memcpy(buf, data, transfer_len);
-
-       kunmap_atomic(buf - sg->offset, KM_IRQ0);
+       scsi_sg_copy_from_buffer(cmd, data, len);
        local_irq_restore(flags);
 }
 
@@ -2261,7 +2253,6 @@ static struct scsi_host_template driver_template = {
        .max_sectors            = TW_MAX_SECTORS,
        .cmd_per_lun            = TW_MAX_CMDS_PER_LUN,  
        .use_clustering         = ENABLE_CLUSTERING,
-       .use_sg_chaining        = ENABLE_SG_CHAINING,
        .shost_attrs            = tw_host_attrs,
        .emulated               = 1
 };
@@ -2295,8 +2286,6 @@ static int __devinit tw_probe(struct pci_dev *pdev, const struct pci_device_id *
        }
        tw_dev = (TW_Device_Extension *)host->hostdata;
 
-       memset(tw_dev, 0, sizeof(TW_Device_Extension));
-
        /* Save values to device extension */
        tw_dev->host = host;
        tw_dev->tw_pci_dev = pdev;