Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-for-linus-2.6

+41 -42
+1 -1
drivers/fc4/fc.c
··· 1004 1004 return FAILED; 1005 1005 } 1006 1006 fc->rst_pkt->eh_state = SCSI_STATE_UNUSED; 1007 - return SUCCESS; 1008 1007 #endif 1008 + return SUCCESS; 1009 1009 } 1010 1010 1011 1011 static int __fcp_scsi_host_reset(Scsi_Cmnd *SCpnt)
+11 -13
drivers/scsi/aic7xxx/aic7xxx_osm.c
··· 1264 1264 } 1265 1265 switch ((dev->flags & (AHC_DEV_Q_BASIC|AHC_DEV_Q_TAGGED))) { 1266 1266 case AHC_DEV_Q_BASIC: 1267 - scsi_adjust_queue_depth(sdev, 1268 - MSG_SIMPLE_TASK, 1269 - dev->openings + dev->active); 1267 + scsi_set_tag_type(sdev, MSG_SIMPLE_TAG); 1268 + scsi_activate_tcq(sdev, dev->openings + dev->active); 1270 1269 break; 1271 1270 case AHC_DEV_Q_TAGGED: 1272 - scsi_adjust_queue_depth(sdev, 1273 - MSG_ORDERED_TASK, 1274 - dev->openings + dev->active); 1271 + scsi_set_tag_type(sdev, MSG_ORDERED_TAG); 1272 + scsi_activate_tcq(sdev, dev->openings + dev->active); 1275 1273 break; 1276 1274 default: 1277 1275 /* ··· 1278 1280 * serially on the controller/device. This should 1279 1281 * remove some latency. 1280 1282 */ 1281 - scsi_adjust_queue_depth(sdev, 1282 - /*NON-TAGGED*/0, 1283 - /*queue depth*/2); 1283 + scsi_deactivate_tcq(sdev, 2); 1284 1284 break; 1285 1285 } 1286 1286 } ··· 1631 1635 spi_period(starget) = tinfo->curr.period; 1632 1636 spi_width(starget) = tinfo->curr.width; 1633 1637 spi_offset(starget) = tinfo->curr.offset; 1634 - spi_dt(starget) = tinfo->curr.ppr_options & MSG_EXT_PPR_DT_REQ; 1635 - spi_qas(starget) = tinfo->curr.ppr_options & MSG_EXT_PPR_QAS_REQ; 1636 - spi_iu(starget) = tinfo->curr.ppr_options & MSG_EXT_PPR_IU_REQ; 1638 + spi_dt(starget) = tinfo->curr.ppr_options & MSG_EXT_PPR_DT_REQ ? 1 : 0; 1639 + spi_qas(starget) = tinfo->curr.ppr_options & MSG_EXT_PPR_QAS_REQ ? 1 : 0; 1640 + spi_iu(starget) = tinfo->curr.ppr_options & MSG_EXT_PPR_IU_REQ ? 1 : 0; 1637 1641 spi_display_xfer_agreement(starget); 1638 1642 break; 1639 1643 } ··· 2425 2429 unsigned int ppr_options = tinfo->goal.ppr_options 2426 2430 & ~MSG_EXT_PPR_DT_REQ; 2427 2431 unsigned int period = tinfo->goal.period; 2432 + unsigned int width = tinfo->goal.width; 2428 2433 unsigned long flags; 2429 2434 struct ahc_syncrate *syncrate; 2430 2435 2431 2436 if (dt) { 2432 - period = 9; /* 12.5ns is the only period valid for DT */ 2433 2437 ppr_options |= MSG_EXT_PPR_DT_REQ; 2438 + if (!width) 2439 + ahc_linux_set_width(starget, 1); 2434 2440 } else if (period == 9) 2435 2441 period = 10; /* if resetting DT, period must be >= 25ns */ 2436 2442
+1 -1
drivers/scsi/ibmvscsi/srp.h
··· 35 35 enum srp_types { 36 36 SRP_LOGIN_REQ_TYPE = 0x00, 37 37 SRP_LOGIN_RSP_TYPE = 0xC0, 38 - SRP_LOGIN_REJ_TYPE = 0x80, 38 + SRP_LOGIN_REJ_TYPE = 0xC2, 39 39 SRP_I_LOGOUT_TYPE = 0x03, 40 40 SRP_T_LOGOUT_TYPE = 0x80, 41 41 SRP_TSK_MGMT_TYPE = 0x01,
+5 -3
drivers/scsi/ips.c
··· 133 133 /* 6.10.00 - Remove 1G Addressing Limitations */ 134 134 /* 6.11.xx - Get VersionInfo buffer off the stack ! DDTS 60401 */ 135 135 /* 6.11.xx - Make Logical Drive Info structure safe for DMA DDTS 60639 */ 136 - /* 7.10.xx - Add highmem_io flag in SCSI Templete for 2.4 kernels */ 136 + /* 7.10.18 - Add highmem_io flag in SCSI Templete for 2.4 kernels */ 137 137 /* - Fix path/name for scsi_hosts.h include for 2.6 kernels */ 138 138 /* - Fix sort order of 7k */ 139 139 /* - Remove 3 unused "inline" functions */ 140 + /* 7.12.xx - Use STATIC functions whereever possible */ 141 + /* - Clean up deprecated MODULE_PARM calls */ 140 142 /*****************************************************************************/ 141 143 142 144 /* ··· 209 207 /* 210 208 * DRIVER_VER 211 209 */ 212 - #define IPS_VERSION_HIGH "7.10" 213 - #define IPS_VERSION_LOW ".18 " 210 + #define IPS_VERSION_HIGH "7.12" 211 + #define IPS_VERSION_LOW ".02 " 214 212 215 213 #if !defined(__i386__) && !defined(__ia64__) && !defined(__x86_64__) 216 214 #warning "This driver has only been tested on the x86/ia64/x86_64 platforms"
+21 -18
drivers/scsi/ips.h
··· 87 87 #define scsi_set_pci_device(sh,dev) (0) 88 88 #endif 89 89 90 - #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0) 91 - 92 - #ifndef irqreturn_t 93 - typedef void irqreturn_t; 94 - #endif 95 - 90 + #ifndef IRQ_NONE 91 + typedef void irqreturn_t; 96 92 #define IRQ_NONE 97 93 #define IRQ_HANDLED 98 94 #define IRQ_RETVAL(x) 95 + #endif 96 + 97 + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,5,0) 99 98 #define IPS_REGISTER_HOSTS(SHT) scsi_register_module(MODULE_SCSI_HA,SHT) 100 99 #define IPS_UNREGISTER_HOSTS(SHT) scsi_unregister_module(MODULE_SCSI_HA,SHT) 101 100 #define IPS_ADD_HOST(shost,device) ··· 121 122 122 123 #ifndef min 123 124 #define min(x,y) ((x) < (y) ? x : y) 125 + #endif 126 + 127 + #ifndef __iomem /* For clean compiles in earlier kernels without __iomem annotations */ 128 + #define __iomem 124 129 #endif 125 130 126 131 #define pci_dma_hi32(a) ((a >> 16) >> 16) ··· 1209 1206 1210 1207 #define IPS_VER_MAJOR 7 1211 1208 #define IPS_VER_MAJOR_STRING "7" 1212 - #define IPS_VER_MINOR 10 1213 - #define IPS_VER_MINOR_STRING "10" 1214 - #define IPS_VER_BUILD 18 1215 - #define IPS_VER_BUILD_STRING "18" 1216 - #define IPS_VER_STRING "7.10.18" 1209 + #define IPS_VER_MINOR 12 1210 + #define IPS_VER_MINOR_STRING "12" 1211 + #define IPS_VER_BUILD 02 1212 + #define IPS_VER_BUILD_STRING "02" 1213 + #define IPS_VER_STRING "7.12.02" 1217 1214 #define IPS_RELEASE_ID 0x00020000 1218 - #define IPS_BUILD_IDENT 731 1215 + #define IPS_BUILD_IDENT 761 1219 1216 #define IPS_LEGALCOPYRIGHT_STRING "(C) Copyright IBM Corp. 1994, 2002. All Rights Reserved." 1220 1217 #define IPS_ADAPTECCOPYRIGHT_STRING "(c) Copyright Adaptec, Inc. 2002 to 2004. All Rights Reserved." 1221 1218 #define IPS_DELLCOPYRIGHT_STRING "(c) Copyright Dell 2004. All Rights Reserved." ··· 1226 1223 #define IPS_VER_SERVERAID2 "2.88.13" 1227 1224 #define IPS_VER_NAVAJO "2.88.13" 1228 1225 #define IPS_VER_SERVERAID3 "6.10.24" 1229 - #define IPS_VER_SERVERAID4H "7.10.11" 1230 - #define IPS_VER_SERVERAID4MLx "7.10.18" 1231 - #define IPS_VER_SARASOTA "7.10.18" 1232 - #define IPS_VER_MARCO "7.10.18" 1233 - #define IPS_VER_SEBRING "7.10.18" 1234 - #define IPS_VER_KEYWEST "7.10.18" 1226 + #define IPS_VER_SERVERAID4H "7.12.02" 1227 + #define IPS_VER_SERVERAID4MLx "7.12.02" 1228 + #define IPS_VER_SARASOTA "7.12.02" 1229 + #define IPS_VER_MARCO "7.12.02" 1230 + #define IPS_VER_SEBRING "7.12.02" 1231 + #define IPS_VER_KEYWEST "7.12.02" 1235 1232 1236 1233 /* Compatability IDs for various adapters */ 1237 1234 #define IPS_COMPAT_UNKNOWN ""
+2 -6
drivers/scsi/st.c
··· 4149 4149 do_create_driverfs_files(); 4150 4150 return 0; 4151 4151 } 4152 - if (st_sysfs_class) 4153 - class_destroy(st_sysfs_class); 4154 4152 unregister_chrdev_region(MKDEV(SCSI_TAPE_MAJOR, 0), 4155 - 4156 4153 ST_MAX_TAPE_ENTRIES); 4157 4154 } 4155 + class_destroy(st_sysfs_class); 4158 4156 4159 4157 printk(KERN_ERR "Unable to get major %d for SCSI tapes\n", SCSI_TAPE_MAJOR); 4160 4158 return 1; ··· 4160 4162 4161 4163 static void __exit exit_st(void) 4162 4164 { 4163 - if (st_sysfs_class) 4164 - class_destroy(st_sysfs_class); 4165 - st_sysfs_class = NULL; 4166 4165 do_remove_driverfs_files(); 4167 4166 scsi_unregister_driver(&st_template.gendrv); 4168 4167 unregister_chrdev_region(MKDEV(SCSI_TAPE_MAJOR, 0), 4169 4168 ST_MAX_TAPE_ENTRIES); 4169 + class_destroy(st_sysfs_class); 4170 4170 kfree(scsi_tapes); 4171 4171 printk(KERN_INFO "st: Unloaded.\n"); 4172 4172 }