diff options
-rw-r--r-- | drivers/scsi/aic7xxx/aic79xx_osm.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/scsi/aic7xxx/aic79xx_osm.c b/drivers/scsi/aic7xxx/aic79xx_osm.c index 982a74a145f7..40f32bb23972 100644 --- a/drivers/scsi/aic7xxx/aic79xx_osm.c +++ b/drivers/scsi/aic7xxx/aic79xx_osm.c | |||
@@ -2440,6 +2440,7 @@ static void ahd_linux_set_dt(struct scsi_target *starget, int dt) | |||
2440 | unsigned int ppr_options = tinfo->goal.ppr_options | 2440 | unsigned int ppr_options = tinfo->goal.ppr_options |
2441 | & ~MSG_EXT_PPR_DT_REQ; | 2441 | & ~MSG_EXT_PPR_DT_REQ; |
2442 | unsigned int period = tinfo->goal.period; | 2442 | unsigned int period = tinfo->goal.period; |
2443 | unsigned int width = tinfo->goal.width; | ||
2443 | unsigned long flags; | 2444 | unsigned long flags; |
2444 | 2445 | ||
2445 | #ifdef AHD_DEBUG | 2446 | #ifdef AHD_DEBUG |
@@ -2449,8 +2450,8 @@ static void ahd_linux_set_dt(struct scsi_target *starget, int dt) | |||
2449 | #endif | 2450 | #endif |
2450 | if (dt) { | 2451 | if (dt) { |
2451 | ppr_options |= MSG_EXT_PPR_DT_REQ; | 2452 | ppr_options |= MSG_EXT_PPR_DT_REQ; |
2452 | if (period > 9) | 2453 | if (!width) |
2453 | period = 9; /* at least 12.5ns for DT */ | 2454 | ahd_linux_set_width(starget, 1); |
2454 | } else { | 2455 | } else { |
2455 | if (period <= 9) | 2456 | if (period <= 9) |
2456 | period = 10; /* If resetting DT, period must be >= 25ns */ | 2457 | period = 10; /* If resetting DT, period must be >= 25ns */ |