On Tuesday 07 July 2009 15:33:24 Andreas B. Mundt wrote:
Hi,
So, I've added the missing ACPI part, but it seems that some more work is needed to get parport interrupt driven working.
I just did a mistake and set no address in the IO Section.
There's already another patch on the list (which was filtered by my spam-filter, and therefore I did the job again). The difference between my patch, and the one from Andreas are minimal, but I added the ECP device which is necessary to get Parport full functional (hopefully I did everything correct, as I can't test this without Parport devices.)
my printer works fine (interrupt driven). From dmesg:
old dmesg: pnp: PnP ACPI init ACPI: bus type pnp registered pnp 00:00: parse allocated resources pnp 00:00: add io 0xcf8-0xcff flags 0x1 pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 (active) pnp 00:01: parse allocated resources pnp 00:01: add io 0x60-0x60 flags 0x1 pnp 00:01: add io 0x64-0x64 flags 0x1 pnp 00:01: add irq 1 flags 0x1 pnp 00:01: Plug and Play ACPI device, IDs PNP0303 (active) pnp 00:02: parse allocated resources pnp 00:02: add io 0x378-0x387 flags 0x0 pnp 00:02: add irq 7 flags 0x1 pnp 00:02: Plug and Play ACPI device, IDs PNP0400 (active) pnp 00:03: parse allocated resources pnp 00:03: add io 0x60-0x60 flags 0x1 pnp 00:03: add io 0x64-0x64 flags 0x1 pnp 00:03: add irq 12 flags 0x1 pnp 00:03: Plug and Play ACPI device, IDs PNP0f13 (active) pnp 00:04: parse allocated resources pnp 00:04: add io 0x3f0-0x3f5 flags 0x1 pnp 00:04: add io 0x3f7-0x3f7 flags 0x1 pnp 00:04: add irq 6 flags 0x1 pnp 00:04: add dma 2 flags 0x0 pnp 00:04: Plug and Play ACPI device, IDs PNP0700 (active) pnp: PnP ACPI: found 5 devices
new dmesg: pnp: PnP ACPI init ACPI: bus type pnp registered pnp 00:00: parse allocated resources pnp 00:00: add io 0xcf8-0xcff flags 0x1 pnp 00:00: Plug and Play ACPI device, IDs PNP0a03 (active) pnp 00:01: parse allocated resources pnp 00:01: add io 0x60-0x60 flags 0x1 pnp 00:01: add io 0x64-0x64 flags 0x1 pnp 00:01: add irq 1 flags 0x1 pnp 00:01: Plug and Play ACPI device, IDs PNP0303 (active) pnp 00:02: parse allocated resources pnp 00:02: add io 0x60-0x60 flags 0x1 pnp 00:02: add io 0x64-0x64 flags 0x1 pnp 00:02: add irq 12 flags 0x1 pnp 00:02: Plug and Play ACPI device, IDs PNP0f13 (active) pnp 00:03: parse allocated resources pnp 00:03: add io 0x3f0-0x3f5 flags 0x1 pnp 00:03: add io 0x3f7-0x3f7 flags 0x1 pnp 00:03: add irq 6 flags 0x1 pnp 00:03: add dma 2 flags 0x0 pnp 00:03: Plug and Play ACPI device, IDs PNP0700 (active) pnp 00:04: parse allocated resources pnp 00:04: add io 0x378-0x37f flags 0x1 pnp 00:04: add irq 7 flags 0x1 pnp 00:04: Plug and Play ACPI device, IDs PNP0400 (active) pnp 00:05: parse allocated resources pnp 00:05: add io 0x378-0x37b flags 0x1 pnp 00:05: add io 0x778-0x77b flags 0x1 pnp 00:05: add irq 7 flags 0x1 pnp 00:05: add dma 0 flags 0x0 pnp 00:05: Plug and Play ACPI device, IDs PNP0401 (active) pnp: PnP ACPI: found 6 devices
What option did you set to get pnp messages? acpi=debug?
The attached patch activates changes the LPT port from polling to interrupt- driven, and should be fine.
Signed-off-by: Harald Gutmann <harald.gutmann at gmx.net>
Ignoring that I do not know how to check the ECP device:
I've also no direct idea how to test it. According to wikipedia there are two parallel port modes, EPP and ECP. Recent computers support both modes, where ECP (Extended Capabilities Parallel Port) is faster.
Acked-by: Andreas B. Mundt <andi.mundt at web.de>
Thanks, revision 4405.
Kind regards,
Andi
Regards, Harald.