[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Violation PCI spec again
Hi,
I've got a lot of response from you, for which I thank you. But I think I'll have to explain my problem some what further. As a lot of you already guessed the reason for wanting to use an other pin then #INTA has something to do the interrupt routing as
explained in the PCI spec. and the associated interrupt sharing.
I'm currently busy on a project where we want to use a CompactPCI system with a primary bus with 2 ethernet adapters and a secondary bus with at least 3-5 free slots. We be running Windows NT on this system, but because we will need real time behaviour
we also will be running an real time extension next to Windows NT. For our system we will develop some special purpose boards (CPCI boards) which will be placed in the free slots on the secondary bus. Because this special boards will provide data which
has to be handled real-time these cards will be controlled by a driver which runs in the real-time extension. As I mentioned in this system there will also be some standard cards like the ethernet cards which will be controlled by a standard NT-driver.
The problem I've is that my special board and these standard boards all will generate interrupts, which will have to be handled by their drivers. But I can't share interrupt vectors between the real-time extension and NT, i.e. I want to make sure that
boards controlled by a NT driver will be assigned interrupt vectors that differ from the vectors assigned to the real-time controlled cards. I don't care that the "NT-cards" share the same interrupt vector which each other and that the "real-time cards"
share the same interrupt vector with each other as long as the "NT cards" don't use the same vector as the "real-time cards".
What I'm worried about is that I'll will not be able to make sure that every card gets the appropriate interrupt vector, because of the interrupt routing scheme as described in the PCI spec and PCI-to-PCI bridge spec. If I understand the spec. correctly
the four interrupts on the primary bus will be wired-or with the for interrupts on the secondary bus. This means that every slot on the primary bus has a "sister slot" on the secondary bus that uses the same interrupt route, so I will not be able to
assign different vectors to these slots.
I know I could make a custom routing, but than we would need to use a custom backplane and a custom motherboard and since we want to use standard (c)PCI stuff this is not really a possibility!??
Regards from Maarten Ghijsen
>Hello,
>
>I'm planning to violate the PCI spec and I wondered what the consequences of this violation could be. The way I'm planning to violate the spec is by using >a
>#INTx other then #INTA for a single function device. I know the spec states that single function devices should use #INTA, but if I want to use an other pin what will
>be the result. For instance will the bios refuse to configure my device, since it is a single function device indicating it is using a pin other then #INTA?
>
>Regards from Maarten Ghijsen,
>Company: Philips DVS (3CoRD)
>EMAIL: maarten.ghijsen@philips.com