Re: sym/ncr53c8xx phase error: Some progress

Gerard Roudier (groudier@club-internet.fr)
Sun, 9 May 1999 23:27:57 +0200 (MET DST)


I have tried to find some explanations about the phase changes your
hard disk seems to experience.

The SPI2 standard says nothing about, but the latest SPI3 describes
some exception handling in COMMAND phase that, if your drive behaves
as described in that document, may explain the phase changes.

Note that the below behaviour described by latest SPI3 is quite legal for
SCSI-2 and can be used by any SCSI-2 device, even some old one.

Basically, a target that detects a PARITY ERROR in COMMAND phase may elect
to switch to MESSAGE IN phase and send a RESTORE POINTERS message (that
will have the effect of a no-op), and then enter again the COMMAND phase
(this behaviour may explain 'phase change 2-7' driver messages)

After some exhausted number of retries, the target may switch to STATUS
phase and report CHECK CONDITION with sense 'ABORTED COMMAND'.
(this behaviour may explain 'phase change 2-3' driver messages.

Could you boot your system using the following boot options:
sym53c8xx=debug:0x10
or
ncr53c8xx=debug:0x10
(depending on the driver you are using)

With this debug flag, the driver will report any not GOOD status and also
print to the log the sense data sent by a target device after a CHECK
CONDITION status.

Let me know if the driver prints out some additionnal messages with
'debug:0x10' option when your system experience phase changes. Thanks.

Regards,
Gérard.

On Fri, 7 May 1999, Shaw Carruthers wrote:

> On Fri, 7 May 1999, Gerard Roudier wrote:
>
> >
> >
> > On Fri, 7 May 1999, Shaw Carruthers wrote:
> >
> > > Looking at the source code of ncr53c8xx.c at line 7525 I see:
> > >
> > > #if 0
> > > case 3: /* STATUS phase */
> > > nxtdsp = NCB_SCRIPT_PHYS (np, dispatch);
> > > break;
> > > #endif
>
> > >
> > > So code to handle these errors seems to be disabled. I tried enabling it
> > > but I still got the problem.
> >
> > No, it is not.
> >
> > The PHASE number is the _interrupted_ phase, so you should have read:
> >
>
> Thank you for taking the time to explain this, I misread the code.
>
> --
> Shaw Carruthers - shaw@shawc.demon.co.uk
> London SW14 7JW UK
> This is not a sig( with homage to Magritte).
>
>
>
>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/