diff options
author | James Bottomley <James.Bottomley@HansenPartnership.com> | 2009-06-13 13:19:05 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2009-06-15 11:09:35 -0400 |
commit | ea4431906d86686e541de527915ccbe556761b16 (patch) | |
tree | ee24a3c6fb76443a11ab38fa2c87a4afa88788a1 /drivers/scsi/aic7xxx | |
parent | 4aa312b96f3220103e60c32740452a336dab6260 (diff) |
[SCSI] aic79xx: make driver respect nvram for IU and QAS settings
This patch allows the Adaptec firmware to pass on its values for Packetize and
QAS. To do this, the settings max_iu and max_qas have been introduced into
the SPI transport class and populated from the adaptec NVram tables. Domain
validation in the SPI transport class will respect the max settings when
configuring to the highest possible speed for testing.
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/aic7xxx')
-rw-r--r-- | drivers/scsi/aic7xxx/aic79xx_osm.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/drivers/scsi/aic7xxx/aic79xx_osm.c b/drivers/scsi/aic7xxx/aic79xx_osm.c index 0f829b3b8ab..75b23317bd2 100644 --- a/drivers/scsi/aic7xxx/aic79xx_osm.c +++ b/drivers/scsi/aic7xxx/aic79xx_osm.c | |||
@@ -627,19 +627,15 @@ ahd_linux_target_alloc(struct scsi_target *starget) | |||
627 | starget->id, &tstate); | 627 | starget->id, &tstate); |
628 | 628 | ||
629 | if ((flags & CFPACKETIZED) == 0) { | 629 | if ((flags & CFPACKETIZED) == 0) { |
630 | /* Do not negotiate packetized transfers */ | 630 | /* don't negotiate packetized (IU) transfers */ |
631 | spi_rd_strm(starget) = 0; | 631 | spi_max_iu(starget) = 0; |
632 | spi_pcomp_en(starget) = 0; | ||
633 | spi_rti(starget) = 0; | ||
634 | spi_wr_flow(starget) = 0; | ||
635 | spi_hold_mcs(starget) = 0; | ||
636 | } else { | 632 | } else { |
637 | if ((ahd->features & AHD_RTI) == 0) | 633 | if ((ahd->features & AHD_RTI) == 0) |
638 | spi_rti(starget) = 0; | 634 | spi_rti(starget) = 0; |
639 | } | 635 | } |
640 | 636 | ||
641 | if ((flags & CFQAS) == 0) | 637 | if ((flags & CFQAS) == 0) |
642 | spi_qas(starget) = 0; | 638 | spi_max_qas(starget) = 0; |
643 | 639 | ||
644 | /* Transinfo values have been set to BIOS settings */ | 640 | /* Transinfo values have been set to BIOS settings */ |
645 | spi_max_width(starget) = (flags & CFWIDEB) ? 1 : 0; | 641 | spi_max_width(starget) = (flags & CFWIDEB) ? 1 : 0; |