SystemsGroup RENCorp | 6 Mar 15:58 2007
Picon

Activating EPP mode

We have a Dell PowerEdge 840 that does not have an onboard parallel port. An expansion PCI card of an ECP/EPP parallel port (PCI1P from StarTech.com) was added. The output of "dmesg | grep parport" is:
 
parport0: PC-style at 0xdcf8 (0xdce8) [PCSPP,TRISTATE]
parport0: faking semi-colon
parport0: Printer, Hewlett-Packard HP LaserJet 5100 Series
parport0: PC-style at 0xdcf8 (0xdce8) [PCSPP,TRISTATE]
parport0: faking semi-colon
parport0: Printer, Hewlett-Packard HP LaserJet 5100 Series
lp0: using parport0 (polling).
I.e. EPP (nor ECP) is not listed.
 
There has been a problem with the operation of a printer (HP LaserJet 5100) that is attached to the computer through the parallel port. The printing service sometimes got hanging. A suspicion is that the problem was c aused by that non-active EPP mode. We would like to know how to activate EPP mode on the parallel port. Any idea, clue or suggestion would be appreciated. Thanks.
 
Best regards,
Systems Group
 
 

The fish are biting.
Get more visitors on your site using Yahoo! Search Marketing.
_______________________________________________
Linux-parport mailing list
Linux-parport <at> lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-parport
Linus Torvalds | 7 Mar 17:25 2007

Re: Linux v2.6.21-rc3


On Wed, 7 Mar 2007, Michal Piotrowski wrote:
> 
> BTW. Does anyone care about parport console?

I do think we care, but I don't think anybody in particular feels singled 
out as a maintainer...

> console=lp0 hangs since at least 2.6.18

Ok, that's not exactly new then, which implies that not a *lot* of people 
even care ;)

Do you think you'd be willing to try to figure out when it started? You 
seem to be the first one to have even noticed.

(I tried to google it, and the most recent thing google finds is your 
report, although I also saw a report of somebody trying it under qemu in 
July last year and also reported a hang)

Looking through the history of the last few years (it in git), I don't see 
anything even *remotely* suspicious there, so it's probably either 
 (a) really old, and hasn't worked in a loong time and nobody just uses it
 (b) something really stupid that happened while doing other cleanups (but 
     the changes in the last two years are *literally* just things like 
     removing devfs support)
 (c) some infrastructure change that subtly broke lpconsole, probably 
     causing an oops during printk, which obviously results in a printk 
     itself, which thus hangs.

It would be good to get it fixed, although for obvious reasons it's not a 
huge priority..

		Linus
Stephen Mollett | 7 Mar 18:14 2007
Picon

Re: Linux v2.6.21-rc3

On Wednesday 07 Mar 2007, Michal Piotrowski wrote:
> BTW. Does anyone care about parport console?
> console=lp0 hangs since at least 2.6.18

For the record, I used console=lp0 quite recently (stock 2.6.19 according to 
the printout, running on i386) [to find out what was causing a panic that 
immediately vanished off the top of the screen because of "atkbd.c: Spurious 
ACK..."s from the flashing kb LEDs] and it worked just fine.

The parport-related lines went:

lp: driver loaded but no devices found
parport: PnPBIOS parport detected.
parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE,EPP]
parport0: Printer, EPSON Stylus COLOR 600
lp0: using parport0 (interrupt-driven)
lp0: console ready

... then the kernel continued booting until the panic occurred (it was a silly 
storage-related misconfig on my part).

If anyone wants me to try anything (newer kernel or different parport-related 
BIOS settings, perhaps, to see if I can duplicate the problem?) and report 
back, let me know.

Stephen
Russell King | 7 Mar 18:35 2007
Picon

Re: [Linux-parport] Linux v2.6.21-rc3

On Wed, Mar 07, 2007 at 05:14:21PM +0000, Stephen Mollett wrote:
> On Wednesday 07 Mar 2007, Michal Piotrowski wrote:
> > BTW. Does anyone care about parport console?
> > console=lp0 hangs since at least 2.6.18
> 
> For the record, I used console=lp0 quite recently (stock 2.6.19 according to 
> the printout, running on i386) [to find out what was causing a panic that 
> immediately vanished off the top of the screen because of "atkbd.c: Spurious 
> ACK..."s from the flashing kb LEDs] and it worked just fine.

ISTR lp consoles block indefinitely until the printer is ready, so
if you ask for a lp console but don't have a working printer connected
it will hang.

--

-- 
Russell King
 Linux kernel    2.6 ARM Linux   - http://www.arm.linux.org.uk/
 maintainer of:
Andreas Stricker | 7 Mar 18:59 2007
Picon

Re: Activating EPP mode

SystemsGroup RENCorp wrote:
>   parport0: PC-style at 0xdcf8 (0xdce8) [PCSPP,TRISTATE]
>    
>   [...] We would like to know how to activate EPP mode on the parallel port. [...]

AFAIK if no EPP mode is listed during initialisation EPP is not
supported by the driver (if the device really supports EPP).

Cheers, Andy
Mikael Magnusson | 29 Mar 11:13 2007
Picon

[PATCH] Add disable_ecp parameter to lp module

Hi,

I'm including a patch for the lp module.

The patch makes it possible to disable ECP mode in the lp module by 
using "disable_ecp=1".

It is very useful for people using printers with ECP modes not fully 
compatible with Linux, for example Oki6w. Disabling ECP mode makes 
printing to Oki6w much more reliable. With ECP mode enabled the printer 
often output half pages.

Signed-off-by: Mikael Magnusson <mikma264 <at> gmail.com>
--- drivers/char/lp.c.orig	2006-03-20 06:53:29.000000000 +0100
+++ drivers/char/lp.c	2006-09-06 11:56:52.000000000 +0200
 <at>  <at>  -153,6 +153,8  <at>  <at> 
 static struct parport *console_registered; // initially NULL
 #endif /* CONFIG_LP_CONSOLE */

+static int disable_ecp = 0;
+
 #undef LP_DEBUG

 /* Bits used to manage claiming the parport device */
 <at>  <at>  -534,7 +536,8  <at>  <at> 
 	}
 	/* Determine if the peripheral supports ECP mode */
 	lp_claim_parport_or_block (&lp_table[minor]);
-	if ( (lp_table[minor].dev->port->modes & PARPORT_MODE_ECP) &&
+	if ( !disable_ecp &&
+	     (lp_table[minor].dev->port->modes & PARPORT_MODE_ECP) &&
              !parport_negotiate (lp_table[minor].dev->port, 
                                  IEEE1284_MODE_ECP)) {
 		printk (KERN_INFO "lp%d: ECP mode\n", minor);
 <at>  <at>  -760,6 +763,7  <at>  <at> 

 module_param_array(parport, charp, NULL, 0);
 module_param(reset, bool, 0);
+module_param(disable_ecp, bool, 0);

 #ifndef MODULE
 static int __init lp_setup (char *str)
_______________________________________________
Linux-parport mailing list
Linux-parport <at> lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-parport

Gmane