Re: [PARPORT] Seagate ftape problem, more stuff


Claus-Justus Heine (claus@math1.rwth-aachen.de)
01 Nov 1998 17:10:16 +0100


mawali@news.icns.com writes:

> Will I have to move to 2.1 kernel to get my 63200P working, I see that
> kernel has support for it
>
> Ftape (QIC-80/Travan) support (CONFIG_FTAPE) [N/y/m/?] ?
>
> CONFIG_FTAPE:
>
> If you have a tape drive that is connected to your floppy
> controller, say Y here.
>
> Some tape drives (like the Seagate "Tape Store 3200" or the Iomega
> "Ditto 3200" or the Exabyte "Eagle TR-3") come with a "high speed"
> controller of their own. These drives (and their companion
> controllers) are also supported if you say Y here.

No, forget it. This means internal floppy (tape) controllers. It will
not help you to upgrade to v2.1. In fact, the ftape contained in Linux
v2.1 is ftape-3.04d, the first version of ftape that might support
your hardware is 4.00, currently 4.02 is the latest (stable) version.

> I posted it yesterday but I think it got lost

Nope, I just can't reply instantly to every email. There are several
hundret ftape related messages on linux-tape@vger.rutgers.edu which I
wasn't able to read safe to reply to. Luckily linux-tape is a very
well behaved mailing list, other people help if I can't :-)

> I have a Seagate 63200P which is a parallel port ftape drive, I believe
> compatible with ditto 3200. I have RedHat-5.0/egcs linux 2.0.34. I
> installed ftape device with this in my conf.modules
[snip]
> Oct 29 10:00:30 mawali kernel: [084] fdc-io.c (fdc_register) - Probing
> for bpck-fdc tape drive slot 0.
> Oct 29 10:00:30 mawali kernel: [085] 0 bpck-fdc.c (bpck_fdc_probe) -
> Bpck parallel port tape drive interface for ftape v4.02 08/29/98.
> Oct 29 10:00:30 mawali kernel: [086] bpck-fdc.c (bpck_fdc_query_proto)
> - Got 0xd8, expected either 0xc0 or 0x40.
> Oct 29 10:00:30 mawali kernel: [087] 0 bpck-fdc.c (bpck_fdc_detect) -
> can't find bpck interface for ftape id 0.
> Oct 29 10:00:30 mawali kernel: [088] 0 bpck-fdc.c (bpck_fdc_detect) -
> ft_parport_probe(fdc, &bpck->parinfo) failed: -6.

Tim Jones had sent me feedback that ftape-4.x doesn't seem to work
with Seagate drives. Mmmh.

First, try to load the driver with

alias char-major-27 zftape
options ftape ft_fdc_driver=bpck-fdc,none,none,none
options bpck-fdc ft_fdc_base=0x378 ft_fdc_irq=7

Ideally, bpck-fdc should find IO base and IRQ channel itself, but this
way we can concentrate on the real problem which seems to be that
ftape fails to wake up the parallel port tape drive.

Next, please check the parallel port you have the drive connected to
really is located at 0x378 and uses IRQ 7.

Then please check that it works with DOS or Windows, if you can run
either of them on your box.

> Oct 29 10:00:30 mawali kernel: [086] bpck-fdc.c (bpck_fdc_query_proto)
> - Got 0xd8, expected either 0xc0 or 0x40.

This essentially means that your parallel port tape drive doesn't
respond which means (AFAIK) that ftape failed to send the proper magic
wakeup sequence to the drive.

In case you are familiar with DOSEmu, you could try to produce an IO
trace log with the DOS software that comes with your drive.

However, as a first step I'd suggest the following. From the analysis
of the IO trace logs which Grant had sent me, and from the trace logs
I have produced myself, I'd say that the DOS driver of my Iomega Ditto
3200 tries several known wakeup methods and then picks the first one
that succeeds. Maybe.

I have tried to put the other methods which I'm not using into a silly
function called "bpck_fdc_test_something()". So, please edit
bpck-fdc.c and change the "#if 0 ... #endif" around that function to
"#if 1 ... #endif". This should be around line 1232.

Then there is another "#if 0" around line 1591 where I try to call the
test function. Please change it to "#if 1", too.

This will produce three debugging messages that start with

"r1(): 0x...."

Maybe this gives some hints. If you have problems with the procedure
suggested above I'll send you a patch for bpck-fdc.c or the entire
modified source code.

If this doesn't work I'd suggest that you produce an IO trace log
using DOSEmu. I'll give you detailed instructions how to do this. It
will be, however, a little bit trick to pusuade your DOS tape driver
to work with DOSEmu. Most probably there will be "division by zero"
traps caused by DOSEmu's coarse grained timer emulation ("coarse"
compared to the hardware timer, DOSEmu hardly could do better AFAIK).

Good luck

Claus

-- 
  Claus-Justus Heine             
  heine@math1.rwth-aachen.de
  http://www.math1.rwth-aachen.de/~heine/

Ftape - the Linux Floppy Tape Project WWW : http://www.math1.rwth-aachen.de/~heine/ftape/ Mailing-list: linux-tape@vger.rutgers.edu

-- To unsubscribe, send mail to: linux-parport-request@torque.net -- -- with the single word "unsubscribe" in the body of the message. --



This archive was generated by hypermail 2.0b3 on Wed 30 Dec 1998 - 10:18:43 EST