diff options
Diffstat (limited to 'drivers/scsi/aacraid/linit.c')
-rw-r--r-- | drivers/scsi/aacraid/linit.c | 32 |
1 files changed, 17 insertions, 15 deletions
diff --git a/drivers/scsi/aacraid/linit.c b/drivers/scsi/aacraid/linit.c index e80d2a0c46af..7232e7326ded 100644 --- a/drivers/scsi/aacraid/linit.c +++ b/drivers/scsi/aacraid/linit.c | |||
@@ -275,9 +275,9 @@ static const char *aac_info(struct Scsi_Host *shost) | |||
275 | 275 | ||
276 | /** | 276 | /** |
277 | * aac_get_driver_ident | 277 | * aac_get_driver_ident |
278 | * @devtype: index into lookup table | 278 | * @devtype: index into lookup table |
279 | * | 279 | * |
280 | * Returns a pointer to the entry in the driver lookup table. | 280 | * Returns a pointer to the entry in the driver lookup table. |
281 | */ | 281 | */ |
282 | 282 | ||
283 | struct aac_driver_ident* aac_get_driver_ident(int devtype) | 283 | struct aac_driver_ident* aac_get_driver_ident(int devtype) |
@@ -1004,32 +1004,32 @@ static const struct file_operations aac_cfg_fops = { | |||
1004 | 1004 | ||
1005 | static struct scsi_host_template aac_driver_template = { | 1005 | static struct scsi_host_template aac_driver_template = { |
1006 | .module = THIS_MODULE, | 1006 | .module = THIS_MODULE, |
1007 | .name = "AAC", | 1007 | .name = "AAC", |
1008 | .proc_name = AAC_DRIVERNAME, | 1008 | .proc_name = AAC_DRIVERNAME, |
1009 | .info = aac_info, | 1009 | .info = aac_info, |
1010 | .ioctl = aac_ioctl, | 1010 | .ioctl = aac_ioctl, |
1011 | #ifdef CONFIG_COMPAT | 1011 | #ifdef CONFIG_COMPAT |
1012 | .compat_ioctl = aac_compat_ioctl, | 1012 | .compat_ioctl = aac_compat_ioctl, |
1013 | #endif | 1013 | #endif |
1014 | .queuecommand = aac_queuecommand, | 1014 | .queuecommand = aac_queuecommand, |
1015 | .bios_param = aac_biosparm, | 1015 | .bios_param = aac_biosparm, |
1016 | .shost_attrs = aac_attrs, | 1016 | .shost_attrs = aac_attrs, |
1017 | .slave_configure = aac_slave_configure, | 1017 | .slave_configure = aac_slave_configure, |
1018 | .change_queue_depth = aac_change_queue_depth, | 1018 | .change_queue_depth = aac_change_queue_depth, |
1019 | .sdev_attrs = aac_dev_attrs, | 1019 | .sdev_attrs = aac_dev_attrs, |
1020 | .eh_abort_handler = aac_eh_abort, | 1020 | .eh_abort_handler = aac_eh_abort, |
1021 | .eh_host_reset_handler = aac_eh_reset, | 1021 | .eh_host_reset_handler = aac_eh_reset, |
1022 | .can_queue = AAC_NUM_IO_FIB, | 1022 | .can_queue = AAC_NUM_IO_FIB, |
1023 | .this_id = MAXIMUM_NUM_CONTAINERS, | 1023 | .this_id = MAXIMUM_NUM_CONTAINERS, |
1024 | .sg_tablesize = 16, | 1024 | .sg_tablesize = 16, |
1025 | .max_sectors = 128, | 1025 | .max_sectors = 128, |
1026 | #if (AAC_NUM_IO_FIB > 256) | 1026 | #if (AAC_NUM_IO_FIB > 256) |
1027 | .cmd_per_lun = 256, | 1027 | .cmd_per_lun = 256, |
1028 | #else | 1028 | #else |
1029 | .cmd_per_lun = AAC_NUM_IO_FIB, | 1029 | .cmd_per_lun = AAC_NUM_IO_FIB, |
1030 | #endif | 1030 | #endif |
1031 | .use_clustering = ENABLE_CLUSTERING, | 1031 | .use_clustering = ENABLE_CLUSTERING, |
1032 | .emulated = 1, | 1032 | .emulated = 1, |
1033 | }; | 1033 | }; |
1034 | 1034 | ||
1035 | static void __aac_shutdown(struct aac_dev * aac) | 1035 | static void __aac_shutdown(struct aac_dev * aac) |
@@ -1039,6 +1039,8 @@ static void __aac_shutdown(struct aac_dev * aac) | |||
1039 | aac_send_shutdown(aac); | 1039 | aac_send_shutdown(aac); |
1040 | aac_adapter_disable_int(aac); | 1040 | aac_adapter_disable_int(aac); |
1041 | free_irq(aac->pdev->irq, aac); | 1041 | free_irq(aac->pdev->irq, aac); |
1042 | if (aac->msi) | ||
1043 | pci_disable_msi(aac->pdev); | ||
1042 | } | 1044 | } |
1043 | 1045 | ||
1044 | static int __devinit aac_probe_one(struct pci_dev *pdev, | 1046 | static int __devinit aac_probe_one(struct pci_dev *pdev, |
@@ -1254,7 +1256,7 @@ static struct pci_driver aac_pci_driver = { | |||
1254 | .id_table = aac_pci_tbl, | 1256 | .id_table = aac_pci_tbl, |
1255 | .probe = aac_probe_one, | 1257 | .probe = aac_probe_one, |
1256 | .remove = __devexit_p(aac_remove_one), | 1258 | .remove = __devexit_p(aac_remove_one), |
1257 | .shutdown = aac_shutdown, | 1259 | .shutdown = aac_shutdown, |
1258 | }; | 1260 | }; |
1259 | 1261 | ||
1260 | static int __init aac_init(void) | 1262 | static int __init aac_init(void) |
@@ -1271,7 +1273,7 @@ static int __init aac_init(void) | |||
1271 | aac_cfg_major = register_chrdev( 0, "aac", &aac_cfg_fops); | 1273 | aac_cfg_major = register_chrdev( 0, "aac", &aac_cfg_fops); |
1272 | if (aac_cfg_major < 0) { | 1274 | if (aac_cfg_major < 0) { |
1273 | printk(KERN_WARNING | 1275 | printk(KERN_WARNING |
1274 | "aacraid: unable to register \"aac\" device.\n"); | 1276 | "aacraid: unable to register \"aac\" device.\n"); |
1275 | } | 1277 | } |
1276 | 1278 | ||
1277 | return 0; | 1279 | return 0; |