Take the Diag/Activity-LED of the HBA out of diagnostic mode on PM resume after successful PM resume from standby and HBA restart,
it remained always on before. If something fails before complete recovery, it should remain on, since it is a diagnostics LED,
reason for the used higher layer for the clear.
Signed-off-by: thomas.schorpp@xxxxxxxxx
--- drivers/scsi/aic7xxx/aic7xxx_core.c 2008-10-03 13:53:39.000000000 +0200
+++ drivers/scsi/aic7xxx/aic7xxx_core.c 2008-10-03 14:26:04.000000000 +0200
@@ -814,6 +814,7 @@
static void
ahc_restart(struct ahc_softc *ahc)
{
+ uint8_t sblkctl;
ahc_pause(ahc);
@@ -868,6 +869,12 @@
ahc_outb(ahc, SEQADDR0, 0);
ahc_outb(ahc, SEQADDR1, 0);
+ /*
+ * Take the LED out of diagnostic mode on PM resume, too
+ */
+ sblkctl = ahc_inb(ahc, SBLKCTL);
+ ahc_outb(ahc, SBLKCTL, (sblkctl & ~(DIAGLEDEN|DIAGLEDON)));
+
ahc_unpause(ahc);
}