We’re doing a test/diag driver for legacy PCI-IDE hardware, which uses
the well known legacy IDE IO ranges and interrupts. Those of you familiar
with those animals know that they use IRQ 14 for the primary IDE channel,
and IRQ 15 for the secondary, even though they are one PCI function.
I see that the WdfInterruptCreate() doc says that I should call it twice
for this hardware, I’m not sure I understand how that’s going to get
hooked up to the interrupts I want, since I can’t actually indicate which
interrupt vectors I want to grab. Is this the part that the PnP manager
just does automagically because I’ve put the required resources in the
INF?
Thanks,
Phil
Philip D. Barila
Seagate Technology LLC
(720) 684-1842
You create a WDFINTERRUPT per hw interrupt you will be assigned. On the
start device irp processing (before EvtDevicePrepareHardware is called),
KMDF walks the list of assigned resources (the cm resource list) and
pairs up each created WDFINTERRUPT to a hw interrupt in the list. This
will automatically assign vector, etc based on the assigned resources.
KMDF doesn’t care how the hw resources were assigned, if you forced them
through an INF, so be it.
d
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of
xxxxx@seagate.com
Sent: Monday, May 14, 2007 12:33 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] Is it possible to assign multiple interrupts to the
same WDFDEVICE?
We’re doing a test/diag driver for legacy PCI-IDE hardware, which uses
the well known legacy IDE IO ranges and interrupts. Those of you
familiar with those animals know that they use IRQ 14 for the primary
IDE channel, and IRQ 15 for the secondary, even though they are one PCI
function.
I see that the WdfInterruptCreate() doc says that I should call it twice
for this hardware, I’m not sure I understand how that’s going to get
hooked up to the interrupts I want, since I can’t actually indicate
which interrupt vectors I want to grab. Is this the part that the PnP
manager just does automagically because I’ve put the required resources
in the INF?
Thanks,
Phil
Philip D. Barila
Seagate Technology LLC
(720) 684-1842 — Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256 To unsubscribe, visit the
List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer
OK, thanks. I've only previously dealt with legacy resources in a 98/2000
SCSI miniport, and got them wrong then, so I'm still coming up to speed on
how to do them right.
Phil
Philip D. Barila Windows DDK MVP
Seagate Technology LLC
(720) 684-1842
As if I need to say it: Not speaking for Seagate.
"Doron Holan" wrote in message
news:xxxxx@ntdev...
You create a WDFINTERRUPT per hw interrupt you will be assigned. On the
start device irp processing (before EvtDevicePrepareHardware is called),
KMDF walks the list of assigned resources (the cm resource list) and
pairs up each created WDFINTERRUPT to a hw interrupt in the list. This
will automatically assign vector, etc based on the assigned resources.
KMDF doesn't care how the hw resources were assigned, if you forced them
through an INF, so be it.
d