Re: [PARPORT] ECP mode transfers in 2.4.x kernels

From: Tim Waugh (twaugh@redhat.com)
Date: Thu Aug 16 2001 - 13:09:12 EDT

  • Next message: Dave Strauss: "Re: [PARPORT] ECP mode transfers in 2.4.x kernels"

    On Thu, Aug 16, 2001 at 12:52:16PM -0400, Dave Strauss wrote:

    > First problem: once the port is in ECP mode, any call to
    > lp_wait_ready() will fail because the call to lp_check_status() will
    > be wrong because the status lines mean different things in ECP mode.
    > I've gotten around it by getting out of lp_wait_ready() immediately
    > if the device is not in compatibility mode, but I'm not convinced this
    > is the correct thing to do. Perhaps lp_check_status() should be
    > changed instead.

    Yeah, tricky. I guess your solution is about the best though.

    > I've gotten around this in the patch below by always reverting to
    > compatibility mode when the write is completed, but again I'm not
    > sure this is the correct thing.

    It is. We shouldn't ever release the port when it isn't ready for use
    by some other driver (i.e. not in compatibility mode).

    > Third problem: the data transfer rate is still very slow. I'm
    > expecting upwards or 400 Kbytes/sec but and getting only about 50
    > Kbytes/sec. I'm not why this is so.

    Philip found this too I think. Is CONFIG_PARPORT_PC_FIFO enabled in
    your kernel? Does 'dmesg' say that it's using DMA?

    > Fourth problem: I'm getting garbage in the data stream. At this point
    > I haven't been able to characterize it very well beyong the fact that
    > the data reaching the printer is incorrect. I'm not sure if I'm
    > getting extra characters, dropped characters, garbled characters, or
    > all three.

    That's not good. :-/

    Tim.
    */



    -- 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 : Thu Aug 16 2001 - 13:12:55 EDT