[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [Debian]: 2.1.119 und lpd



On Wed, 16 Dec 1998, you wrote:
>> Hast du in den Optionen für den parport bein IRQ NONE angegeben? AFAIK
>> sollte dies gehen.
>Nein.
>Spielt keine Rolle.
>Hab's mit irq=none und irq=7 probiert.
>Dasselbe Ergebnis.
>Erst blinkt die untere LED. Dann nach ca. 5 Sek. die obere und dabei bleibts
>dann...
>
>Das kann doch nicht sein!
>
>Ach, hatte ich das schon gesagt: HP DeskJet 870 Cxi
>Und hat vorher funktioniert.

Ich weiß nicht mit Sicherheit, ob das helfen könnte aber Du könntest es mal 
versuchen, das modul lp.o mit der option TRUST_IRQ von tunelp.
Ich hab's ganz zufällig entdeckt als der Kernel 2.1.131 mir das auf der 
Konsole meldete. Hier ist der entsprechende Ausschnitt aus den Kernelsourcen 
(linux/drivers/char/lp.c):
* LP OPTIMIZATIONS
 *
 * - TRUST_IRQ flag
 * 
 * Epson Stylus Color, HP and many other new printers want the TRUST_IRQ flag
 * set when printing with interrupts. This is a long story. Such printers
 * use a broken handshake (see the timing graph below) when printing with
 * interrupts. The lp driver as default is just able to handle such bogus
 * handshake, but setting such flag cause lp to go faster and probably do
 * what such printers want (even if not documented).
 *
 * NOTE that setting the TRUST_IRQ flag in some printer can cause the irq
 * printing to fail completly. You must try, to know if your printer
 * will handle it. I suggest a graphics printing to force a major flow of
 * characters to the printer for do the test. NOTE also that the TRUST_IRQ
 * flag _should_ be fine everywhere but there is a lot of buggy hardware out
 * there, so I am forced to implement it as a not-default thing.
 * WARNING: before to do the test, be sure to have not played with the
 * `-w' parameter of tunelp!
 *
 * Note also that lp automagically warn you (with a KERN_WARNING) if it
 * detects that you could _try_ to set the TRUST_IRQ flag to speed up the
 * printing and decrease the CPU load.
 *
 * To set the TRUST_IRQ flag you can use this command:
 *
 * tunelp /dev/lp? -T on
 *
 * If you have an old tunelp executable you can (hack and) use this simple
 * C lazy proggy to set the flag in the lp driver:

-------------------------- cut here -------------------------------------
#include <fcntl.h>
#include <sys/ioctl.h>

#define	LPTRUSTIRQ  0x060f

int main(int argc, char **argv)
{
	int fd = open("/dev/lp0", O_RDONLY);
	ioctl(fd, LPTRUSTIRQ, argc - 1);
	if (argc - 1)
		printf("trusting the irq\n");
	else
		printf("untrusting the irq\n");
	return 0;
}
-------------------------- cut here -------------------------------------

Wie gesagt dies geht offenbar erst ab Version 2.1.131. Du mußt außerdem 
das Programm tunelp erneuern. Hier ist das Source-Paket (auch zufällig auf 
http://lfw.linuxhq.com/ gefunden :-))

>
>Danke,
>
>Frank
>------------------------------------------------
>Um sich aus der Liste auszutragen schicken Sie
>bitte eine E-Mail an majordomo@jfl.de die im Body
>"unsubscribe debian-user-de <deine emailadresse>"
>enthaelt.
>Bei Problemen bitte eine Mail an: Jan.Otto@jfl.de
>------------------------------------------------
>Anzahl der eingetragenen Mitglieder:     615
--

   ,---._________________________________        _        ============    .
  /                                       \     |  \        I_  O  _I_,==.:
 | Greetings from                          >----|===`------'I `---' I |  |:
 |   Sangohn Christian                    /    _ \          I       I |  |:'
 |     sango-ch@reze-1.rz.rwth-aachen.de /    (   `-,-----============:__;:
 |  ,---._______________________________/    (_    O    __)       \_      :
 |/                                            (_______)          (_)

Attachment: tunelp-0-2.1.131.tar.gz
Description: GNU Zip compressed data


Reply to: