From: "Richard B. Johnson" <root@chaos.analogic.com>
To: Ryan Underwood <nemesis-lists@icequake.net>
Cc: Linux kernel <linux-kernel@vger.kernel.org>
Subject: Re: PCI parport irq sharing?
Date: Thu, 8 Jan 2004 14:08:19 -0500 (EST) [thread overview]
Message-ID: <Pine.LNX.4.53.0401081340240.25165@chaos> (raw)
In-Reply-To: <20040108181615.GA20930@dbz.icequake.net>
On Thu, 8 Jan 2004, Ryan Underwood wrote:
>
> Hi,
>
> Does parport_pc have the capability to share IRQs? I have a PCI
> parallel card with two ports on it:
>
> parport0: PC-style at 0x3bc (0x7bc), irq 7, dma 3 [PCSPP,TRISTATE,COMPAT,ECP,DMA]
> parport1: PC-style at 0xc400 (0xc800), irq 9, using FIFO [PCSPP,TRISTATE,COMPAT,ECP]
> parport1: irq 9 in use, resorting to polled operation
> parport2: PC-style at 0xcc00 (0xd000) [PCSPP,TRISTATE]
>
> parport0 is the mb's builtin parallel port, and parport1/parport2 are
> the two ports on the PCI card. IRQ 9 is taken by USB already. But
> since it's a modern PCI card, it would stand to reason that it should be
> able to share the IRQ with another PCI device, no? Unfortunately, my
> application requires interrupt-driven operation.
>
> /proc/interrupts:
> CPU0
> 0: 276501 XT-PIC timer
> 1: 1196 XT-PIC keyboard
> 2: 0 XT-PIC cascade
> 7: 7 XT-PIC parport0
> 8: 4 XT-PIC rtc
> 9: 2724988 XT-PIC acpi, usb-ohci
> 10: 8745 XT-PIC eth0
> 11: 0 XT-PIC CMI8738-MC4
> 12: 0 XT-PIC PS/2 Mouse
> 14: 16219 XT-PIC ide0
> 15: 29 XT-PIC ide1
> NMI: 0
> LOC: 0
> ERR: 0
> MIS: 0
>
> Kernel 2.4.24
>
> thanks,
>
> --
> Ryan Underwood, <nemesis@icequake.net>
>
To share interrupts requires that the interrupting device
generate a level instead of an edge. The parallel ports
that exist in "super I/O chips" and in bare boards, produce
edges. If you have a special parallel port in a PCI slot, it
should generate levels because the PCI specification demands
that it does.
Since IRQ7 (the dedicated, edge, ISA parallel port interrupt)
should never go to any PCI slot, I don't see how it could
ever report using that. Perhaps it's a bug or the BIOS allowed
it to be configured that way (remove IRQ7 from the PCI bus).
This should make something else show up on the PCI bus.
Move the board to another slot and see if the shared problem
still remains.
The driver should be smart enough to know that if the interrupt
was obtained from the PCI bus, then it can allocate it shared.
Cheers,
Dick Johnson
Penguin : Linux version 2.4.22 on an i686 machine (797.90 BogoMips).
Note 96.31% of all statistics are fiction.
next prev parent reply other threads:[~2004-01-08 19:05 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-01-08 18:16 PCI parport irq sharing? Ryan Underwood
2004-01-08 19:08 ` Richard B. Johnson [this message]
2004-01-09 1:38 ` Ryan Underwood
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=Pine.LNX.4.53.0401081340240.25165@chaos \
--to=root@chaos.analogic.com \
--cc=linux-kernel@vger.kernel.org \
--cc=nemesis-lists@icequake.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).