diff options
author | Hannes Reinecke <hare@suse.de> | 2006-01-24 04:44:38 -0500 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.(none)> | 2006-01-31 15:39:48 -0500 |
commit | 3fb086126462c2de06dddaec58981d8827be100d (patch) | |
tree | eaa3e79ef84f8a68246e0ba68a1d048b03e9acd4 /drivers/scsi/aic7xxx/aic79xx_pci.c | |
parent | 53467e636b7beb350c307cc88323aae4676577f2 (diff) |
[SCSI] aic79xx: SLOWCRC fix
This patch introduces the SLOWCRC handling for certain buggy chipsets.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/aic7xxx/aic79xx_pci.c')
-rw-r--r-- | drivers/scsi/aic7xxx/aic79xx_pci.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/scsi/aic7xxx/aic79xx_pci.c b/drivers/scsi/aic7xxx/aic79xx_pci.c index 196a6344b037..757242e522c2 100644 --- a/drivers/scsi/aic7xxx/aic79xx_pci.c +++ b/drivers/scsi/aic7xxx/aic79xx_pci.c | |||
@@ -38,7 +38,7 @@ | |||
38 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE | 38 | * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
39 | * POSSIBILITY OF SUCH DAMAGES. | 39 | * POSSIBILITY OF SUCH DAMAGES. |
40 | * | 40 | * |
41 | * $Id: //depot/aic7xxx/aic7xxx/aic79xx_pci.c#89 $ | 41 | * $Id: //depot/aic7xxx/aic7xxx/aic79xx_pci.c#92 $ |
42 | */ | 42 | */ |
43 | 43 | ||
44 | #ifdef __linux__ | 44 | #ifdef __linux__ |
@@ -950,12 +950,19 @@ ahd_aic790X_setup(struct ahd_softc *ahd) | |||
950 | if ((ahd->flags & AHD_HP_BOARD) == 0) | 950 | if ((ahd->flags & AHD_HP_BOARD) == 0) |
951 | AHD_SET_SLEWRATE(ahd, AHD_SLEWRATE_DEF_REVA); | 951 | AHD_SET_SLEWRATE(ahd, AHD_SLEWRATE_DEF_REVA); |
952 | } else { | 952 | } else { |
953 | /* This is revision B and newer. */ | ||
954 | extern uint32_t aic79xx_slowcrc; | ||
953 | u_int devconfig1; | 955 | u_int devconfig1; |
954 | 956 | ||
955 | ahd->features |= AHD_RTI|AHD_NEW_IOCELL_OPTS | 957 | ahd->features |= AHD_RTI|AHD_NEW_IOCELL_OPTS |
956 | | AHD_NEW_DFCNTRL_OPTS|AHD_FAST_CDB_DELIVERY; | 958 | | AHD_NEW_DFCNTRL_OPTS|AHD_FAST_CDB_DELIVERY |
959 | | AHD_BUSFREEREV_BUG; | ||
957 | ahd->bugs |= AHD_LQOOVERRUN_BUG|AHD_EARLY_REQ_BUG; | 960 | ahd->bugs |= AHD_LQOOVERRUN_BUG|AHD_EARLY_REQ_BUG; |
958 | 961 | ||
962 | /* If the user requested the the SLOWCRC bit to be set. */ | ||
963 | if (aic79xx_slowcrc) | ||
964 | ahd->features |= AHD_AIC79XXB_SLOWCRC; | ||
965 | |||
959 | /* | 966 | /* |
960 | * Some issues have been resolved in the 7901B. | 967 | * Some issues have been resolved in the 7901B. |
961 | */ | 968 | */ |