Date: Tue, 13 Jun 2000 12:16:59 -0400 (EDT) From: Todd Cohen <cohentl@clarkson.edu> To: Grard Roudier <groudier@club-internet.fr> Cc: freebsd-stable@FreeBSD.ORG, freebsd-scsi@FreeBSD.ORG Subject: Re: Problem with newer sym driver on a Tekram DC-390U2W controller Message-ID: <Pine.GSO.4.10.10006131214170.3957-100000@sirius.clarkson.edu> In-Reply-To: <Pine.BSF.4.21.0006131803220.202-100000@reticent.troll.no>
next in thread | previous in thread | raw e-mail | index | archive | help
Different but related question, are the DC-315U cards supported?
On Tue, 13 Jun 2000, Bradley T. Hughes wrote:
> On Tue, 13 Jun 2000, Gérard Roudier wrote:
>
> >
> > Hello,
> >
> > Thanks for the report and sorry for the breakage. Unfortunately I haven't
> > any Tekram board and so, risk of device setup breakage is more likely to
> > happen for these boards due to their proprietary NVRAM layout. Tekram use
> > to speak highly of their success under notably Linux and seem to want to
> > provide their own drivers. May-be, for this reason, they never sent me any
> > of their SYM53C8XX based SCSI boards for driver testing.
>
> i tried tekram's drivers, but my machine would reboot itself randomly for
> some odd reason... the sym driver has proven much more stable
>
> > Well. I have an explanation of the breakage. The table used by the driver
> > to translate the NVRAM sync. tag to sync. factor is probably wrong. The
> > values seem to be rather ((sync. period)/4 in nano-seconds) than true SCSI
> > sync. factors.
> >
> > Here it the offending table:
> >
> > static u_char Tekram_sync[16] =
> > {25,31,37,43, 50,62,75,125, 12,15,18,21, 6,7,9,10};
> >
> > The below preliminar patch should work-around the problem:
> >
> > --- sym_hipd.c.0613 Tue Jun 13 14:58:18 2000
> > +++ sym_hipd.c Tue Jun 13 15:17:54 2000
> > @@ -2960,11 +2960,15 @@
> > sym_nvram_setup_target (np, i, nvram);
> >
> > /*
> > - * For now, guess PPR support from the period.
> > + * For now, guess PPR/DT support from the period
> > + * and BUS width.
> > */
> > - if (tp->tinfo.user.period <= 9) {
> > - tp->tinfo.user.options |= PPR_OPT_DT;
> > - tp->tinfo.user.offset = np->maxoffs_dt;
> > + if (np->features & FE_ULTRA3) {
> > + if (tp->tinfo.user.period <= 9 &&
> > + tp->tinfo.user.width == BUS_16_BIT) {
> > + tp->tinfo.user.options |= PPR_OPT_DT;
> > + tp->tinfo.user.offset = np->maxoffs_dt;
> > + }
> > }
> >
> > if (!tp->usrtags)
> > ----------------------- Cut there ----------------------
>
> after applying this to the 1.6.1 driver from -CURRENT, everything works
> great
>
> [snip]
>
> --
> Bradley T. Hughes <bhughes@trolltech.com>
> Waldemar Thranes gt. 98B N-0175 Oslo, Norway
> Office: +47 21 60 48 92
> Mobile: +47 92 01 97 81
>
>
>
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-scsi" in the body of the message
>
---------------------------------------------------
http://www.clarkson.edu/~cohentl
"Sometimes crazy things happen in circuits." - Muku, 1999
"The answers to lifes problems aren't at the bottom of bottles, they're on
TV" - Homer J. Simpson
---------------------------------------------------
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-scsi" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.4.10.10006131214170.3957-100000>
