Re: ECP Parallel Port

Tim Waugh
2001-12-15T00:25:32Z

[-- Attachment #1: Type: text/plain, Size: 1883 bytes --]

On Fri, Dec 14, 2001 at 11:50:32PM +0100, Petr Vandrovec wrote:

> one of VMware users just pointed to me that ECP mode is now broken
> in kernel. 2.4.10-ac9 reports correctly:

You have run into an unfortunate VMware bug. Arguably it's not really
their fault; they went by existing behaviour rather than documented
behaviour.

Anyhow, the behaviour you are now seeing is the same as the documented
behaviour: ECP mode is only reported _if_ parport will actually use
hardware ECP for ECP transfers. Previously, it would report [ECP]
even if it knew perfectly well that it had no intention of using it.

This was fixed in order to provide ECP support in the printer driver.

> It looks like a bug to me. Is it known problem, or should I look into
> it more deeply?

It's no bug in the kernel, really. It is a known problem though. The
solution is for VMware to do their own port capabilities detection,
since they don't use the kernel for actually using the parallel port
chip (they just use inb/outb). [Incidentally, I've told them this via
their feedback email address, but since I don't own a VMware license I
am apparently not entitled to file a bug against VMware.]

The work around is to do one of the following:

a) Don't upgrade your kernel; only use a kernel that VMware have
verified works with their product;
b) Take appropriate steps to get the kernel to use ECP mode. This
involves: turning on 'EXPERIMENTAL' driver support, turning on 'Use
FIFO/DMA if available', and providing 'irq=auto dma=auto' to the
parport_pc module when you load it. You may of course have to
provide the actual IRQ line number or DMA channel if they can't be
automatically detected.

Be aware that option (b) is the more dangerous: DMA printing has known
problems, and so does PIO printing (but to a lesser extent).

Tim.
*/

[-- Attachment #2: Type: application/pgp-signature, Size: 232 bytes --]