> > will ppdev know to do the above if I set IEEE1284_MODE_EPP on this
> > machine?
>
> Yes -- it calls parport_write, which calls port->epp_write_data, which
> parport_pc sets to parport_pc_ecpepp_write_data (look at
> parport_ECPEPP_supported).
well I've gotten things to work.. after hours of messing around deep in
parport_pc, parport, and ppdev... and using a logic analyzer...
it is these ^$*&^#& Compaq Deskpro Pentium 100s we are using as sort of
"dumb terminals" for our parallel-port board.
First, I had to hard-wire the driver to use ECPEPP mode, because for some
reason the tests for it didn't autodetect it.
That still didn't work, but I noticed that the direct EPP assembly code I
used under Linux only worked after running some "SPP simulating EPP
writes" code that I had.
So I tracked it down to the following:
before an EPP read you have to do a "outb(4,0x37A);" and things work fine.
So if I change parport_ecpepp_write_data to be
frob_econtrol (port, 0xe0, ECR_EPP << 5);
outb(4,0x37A);
written = parport_pc_epp_write_data (port, buf, length, flags);
frob_econtrol (port, 0xe0, ECR_PS2 << 5);
return written;
it works fine. (vs 2.3.99-pre4)
AHHHHHHHHHHH!!!
I guess I can just use hacked-together modules that do this in our
lab.. does anyone have any reason why these machines would behave this
way?
Vince
____________
\ /\ /\ / Vince Weaver
\/__\/__\/ weave@eng.umd.edu http://www.glue.umd.edu/~weave
-- 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 2b29 : Tue Apr 11 2000 - 19:20:08 EDT