RE: [PARPORT] Printer works in 2.0.36 but no in 2.2.x


Tim Waugh (tim@cyberelk.demon.co.uk)
Fri, 30 Apr 1999 22:02:35 +0100 (GMT)


On Fri, 30 Apr 1999, Juha Sahakangas wrote:

> Polling-mode with FIFO:

(it doesn't use the FIFO if it can't use interrupts)

> lp0 out of paper

Yes, that's pretty much what I'd expect. The tmw tree isn't all that
different to 2.2.7 for that code path.

> Um, now it actually prints something, but certainly not what i "asked"
> it to print, but first one blank page (this may be wrong settin in
> printcap) some strange high-ascii characters. I printed "testi" and
> the output was (this is small e with two dots on top it if you have
> different charset)E(black box here)9u

Weird. It's the right number of characters but they're just wrong?

You could try using PIO rather than DMA by specifying "dma=none" as a
module parameter to parport_pc, along with the base address and irq. I'd
expect it to do exactly the same thing though.

Well, here's a patch against 2.2.7-tmw1. It changes the behaviour of
printer in the absence of interrupts. The idea is that we don't require
the paper-out and on-line signals to be in any particular state, just
nBusy and nFault. Let me know if this is any better.

Andrea, did I see a mail a few weeks ago about needing an LP_CAREFUL ioctl
still? Could this be related to that case?

Tim.
*/

--- linux/drivers/misc/parport_ieee1284_ops.c~ Fri Apr 30 21:56:40 1999
+++ linux/drivers/misc/parport_ieee1284_ops.c Fri Apr 30 21:57:31 1999
@@ -124,12 +124,9 @@
         while (count < len) {
                 long expire = jiffies + dev->timeout;
                 long wait = (HZ + 99) / 100;
- unsigned char mask = (PARPORT_STATUS_PAPEROUT
- | PARPORT_STATUS_SELECT
- | PARPORT_STATUS_ERROR
+ unsigned char mask = (PARPORT_STATUS_ERROR
                                       | PARPORT_STATUS_BUSY);
- unsigned char val = (PARPORT_STATUS_SELECT
- | PARPORT_STATUS_ERROR
+ unsigned char val = (PARPORT_STATUS_ERROR
                                      | PARPORT_STATUS_BUSY);
 
                 /* Write the character to the data lines. */

-- 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 Fri 30 Apr 1999 - 17:24:47 EDT