Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Jun 2004 10:06:52 +0200
From:      Ian FREISLICH <if@hetzner.co.za>
To:        Stefan =?iso-8859-1?Q?E=DFer?= <se@FreeBSD.org>
Cc:        current@freebsd.org
Subject:   Re: Interrupt storm detection 
Message-ID:  <E1BZmUW-0005eX-00@hetzner.co.za>
In-Reply-To: Message from Stefan =?iso-8859-1?Q?E=DFer?= <se@FreeBSD.org>  <20040611194328.GA4945@StefanEsser.FreeBSD.org> 

next in thread | previous in thread | raw e-mail | index | archive | help
> On 2004-06-11 16:01 +0200, Ian FREISLICH <if@hetzner.co.za> wrote:
> 
> Hmmm, maybe I'm missing something obvious, but I thought that polling 
> was more efficient than the silly one-byte-per-interrupt mode that is
> causing the interrupt storm detection to slow down the parallel port
> (and it was more efficient before!).

How do you turn polling on and does the driver support polling?

> And then, there are ECP and EPP modes (should be enabled in the BIOS
> setup) which even go as far as to allow DMA to the parallel port ...
> 
> Just try
> 
> 	lptcontrol -p
> 
> for polled mode on /dev/lpt0 (or use -d /dev/lptX), or 
> 
> 	lptcontrol -e

[brane-dead] ~ # lptcontrol -p
lptcontrol: open: Device busy
[brane-dead] ~ # lptcontrol -e
lptcontrol: open: Device busy
[brane-dead] ~ # lpc down all
lp:
        printer and queuing disabled
        status message is now: printing disabled
[brane-dead] ~ # lptcontrol -e
lptcontrol: open: Device busy
[brane-dead] ~ # killall lpd
[brane-dead] ~ # lptcontrol -e
lptcontrol: open: Device busy
[brane-dead] ~ # lptcontrol -p
lptcontrol: open: Device busy

:/ ?

> for extendend mode (may need to have an ISA interrupt assigned to the
> printer port in the BIOS, for best results ;-)

The port is set as ECP/EPP in the BIOS with an IRQ assigned to it.

ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/16 bytes threshold
ppbus0: <Parallel port bus> on ppc0
ppbus0: IEEE1284 device found /NIBBLE/PS2/ECP

And it seems to plug and play:

Probing for PnP devices on ppbus0:
ppbus0: <Lexmark International Lexmark Optra E312> PRINTER PCL 6 Emulation, PostScript Level 2 Emulation, NPAP, PJL
plip0: <PLIP network interface> on ppbus0
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ppi0: <Parallel I/O> on ppbus0

Ian

--
Ian Freislich



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1BZmUW-0005eX-00>