aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/aic7xxx/aic7xxx_osm.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-29 20:22:03 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-29 20:22:03 -0400
commita6ce22a5f61ba838b43763bf1e5be399f9dee4d0 (patch)
tree2abed83e85724bd45c5b0b842b9ce36d1c4ca160 /drivers/scsi/aic7xxx/aic7xxx_osm.c
parent4e950f6f0189f65f8bf069cf2272649ef418f5e4 (diff)
parent09120a8cd38dbdb0c9a59ff8456cf88b510e6baa (diff)
Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6: (28 commits) [SCSI] mpt fusion: Changes in mptctl.c for logging support [SCSI] mpt fusion: Changes in mptfc.c mptlan.c mptsas.c and mptspi.c for logging support [SCSI] mpt fusion: Changes in mptscsih.c for logging support [SCSI] mpt fusion: Changes in mptbase.c for logging support [SCSI] mpt fusion: logging support in Kconfig, Makefile, mptbase.h and addition of mptdebug.h [SCSI] libsas: Fix potential NULL dereference in sas_smp_get_phy_events() [SCSI] bsg: Fix build for CONFIG_BLOCK=n [SCSI] aacraid: fix Sunrise Lake reset handling [SCSI] aacraid: add SCSI SYNCHONIZE_CACHE range checking [SCSI] add easyRAID to the no report luns blacklist [SCSI] advansys: lindent and other large, uninteresting changes [SCSI] aic79xx, aic7xxx: Fix incorrect width setting [SCSI] qla2xxx: fix to honor ignored parameters in sysfs attributes [SCSI] aacraid: draw line in sand, sundry cleanup and version update [SCSI] iscsi_tcp: Turn off bounce buffers [SCSI] libiscsi: fix cmd seqeunce number checking [SCSI] iscsi_tcp, ib_iser Enable module refcounting for iscsi host template [SCSI] libiscsi: make sure session is not blocked when removing host [SCSI] libsas: Remove PCI dependencies [SCSI] simscsi: convert to use the data buffer accessors ...
Diffstat (limited to 'drivers/scsi/aic7xxx/aic7xxx_osm.c')
-rw-r--r--drivers/scsi/aic7xxx/aic7xxx_osm.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/drivers/scsi/aic7xxx/aic7xxx_osm.c b/drivers/scsi/aic7xxx/aic7xxx_osm.c
index 1803ab6fc21c..2e9c38f2e8a6 100644
--- a/drivers/scsi/aic7xxx/aic7xxx_osm.c
+++ b/drivers/scsi/aic7xxx/aic7xxx_osm.c
@@ -2317,8 +2317,13 @@ static void ahc_linux_set_period(struct scsi_target *starget, int period)
2317 2317
2318 if (period < 9) 2318 if (period < 9)
2319 period = 9; /* 12.5ns is our minimum */ 2319 period = 9; /* 12.5ns is our minimum */
2320 if (period == 9) 2320 if (period == 9) {
2321 ppr_options |= MSG_EXT_PPR_DT_REQ; 2321 if (spi_max_width(starget))
2322 ppr_options |= MSG_EXT_PPR_DT_REQ;
2323 else
2324 /* need wide for DT and need DT for 12.5 ns */
2325 period = 10;
2326 }
2322 2327
2323 ahc_compile_devinfo(&devinfo, shost->this_id, starget->id, 0, 2328 ahc_compile_devinfo(&devinfo, shost->this_id, starget->id, 0,
2324 starget->channel + 'A', ROLE_INITIATOR); 2329 starget->channel + 'A', ROLE_INITIATOR);
@@ -2381,7 +2386,7 @@ static void ahc_linux_set_dt(struct scsi_target *starget, int dt)
2381 unsigned long flags; 2386 unsigned long flags;
2382 struct ahc_syncrate *syncrate; 2387 struct ahc_syncrate *syncrate;
2383 2388
2384 if (dt) { 2389 if (dt && spi_max_width(starget)) {
2385 ppr_options |= MSG_EXT_PPR_DT_REQ; 2390 ppr_options |= MSG_EXT_PPR_DT_REQ;
2386 if (!width) 2391 if (!width)
2387 ahc_linux_set_width(starget, 1); 2392 ahc_linux_set_width(starget, 1);