aic79xx: set precompensation
Subsystems (2)
PATCH 2/4 aic79xx: set precompensation
Hi all,
we really should update the IOCELL chip whenever we change the precompensation.
Cheers,
Hannes
Signature · 4 lines
Dr. Hannes Reinecke [email protected] SuSE Linux Products GmbH S390 & zSeries Maxfeldstraße 5 +49 911 74053 688 90409 Nürnberg http://www.suse.de
From: Hannes Reinecke <[email protected]>
Date: Mon Oct 23 11:02:57 2006 +0200
Subject: aic79xx: Set precompensation correctly
aic79xx has a special 'iocell' chip which handles the precompensation. If it's set via DV we should make sure to set the chip correctly, too.
Signed-off-by Hannes Reinecke <[email protected]>
---
drivers/scsi/aic7xxx/aic79xx_osm.c | 16 +++++++++++++++- 1 files changed, 15 insertions(+), 1 deletions(-)
2f3de401cc38fa20f861470c035a7d088bc23ede
drivers/scsi/aic7xxx/aic79xx_osm.c +15 -1
@@ -2634,8 +2634,22 @@ #ifdef AHD_DEBUG pcomp ? "Enable" : "Disable");#endif -if (pcomp) +if (pcomp) { +uint8_t precomp; + +if (ahd->unit <ARRAY_SIZE (aic79xx_iocell_info)) { +struct ahd_linux_iocell_opts *iocell_opts; + + iocell_opts = &aic79xx_iocell_info[ahd->unit]; + precomp = iocell_opts->precomp; + }else { + precomp =AIC79XX_DEFAULT_PRECOMP ; + } ppr_options |=MSG_EXT_PPR_PCOMP_EN ; +AHD_SET_PRECOMP (ahd, precomp); + }else { +AHD_SET_PRECOMP (ahd,0 ); + }ahd_compile_devinfo (&devinfo, shost->this_id, starget->id,0 , starget->channel +'A' ,ROLE_INITIATOR );
Signature · 1 line
1.3.1