My driver is a for PCI device. But, I want to access a device on the ISA
bus. Previously, I used to do this using HalTranslateBusAddress. But, now
it is obsolete.
So, I am trying to IRP_MN_QUERY_INTERFACE, but I think that only works for
the underlying Bus.
I have tried passing GUID_BUS_TYPE_ISAPNP as the inteface type and a
couple of other values, but I always get back 0xC00000BB
(STATUS_NOT_SUPPORTED).
Does the ISA device already have a function driver? If not, then I suggest
writing one and then establishing a normal IO path to the device. If it does
have a function driver then you most certainly cannot get away with plonking
the ISA registers owned by this driver directly from your driver.
-----Original Message-----
From: Sam Tertzakian [mailto:xxxxx@hotmail.com]
Sent: Sunday, June 01, 2003 1:17 AM
To: NT Developers Interest List
Subject: [ntdev] Access to the ISA Bus from a driver for a PCI device
My driver is a for PCI device. But, I want to access a device on the ISA
bus. Previously, I used to do this using HalTranslateBusAddress. But, now it
is obsolete.
So, I am trying to IRP_MN_QUERY_INTERFACE, but I think that only works for
the underlying Bus.
I have tried passing GUID_BUS_TYPE_ISAPNP as the inteface type and a couple
of other values, but I always get back 0xC00000BB (STATUS_NOT_SUPPORTED).
You are currently subscribed to ntdev as: xxxxx@stratus.com To
unsubscribe send a blank email to xxxxx@lists.osr.com
No, there is no function driver for the device. I cannot believe that
something that I have done for years is not possible now! I cannot just
write a normal function driver because I must access the device during
ISRs and DPC of my PCI device.
There should be a way to do the work of the HalAssignSlotResources()
function using some other mechanism, right…I just need some kind of
handle to the ISA bus, I think.
“Sam Tertzakian” wrote in message
news:xxxxx@ntdev…
>
> No, there is no function driver for the device. I cannot believe that
> something that I have done for years is not possible now! I cannot just
> write a normal function driver because I must access the device during
> ISRs and DPC of my PCI device.
Just because you could do it for years, doesn’t mean it was a good idea. UM
apps could do anything they wanted to any hardware they wanted back in the
“Good Old Days” of DOS. You want to return to those thrilling days?
> There should be a way to do the work of the HalAssignSlotResources()
> function using some other mechanism, right…I just need some kind of
> handle to the ISA bus, I think.
Stop thinking in DOS. Write your ISA device function driver, just make sure
it can be called at elevated IRQLs. Send your IRP_MN_QUERY_INTERFACE to the
ISA driver from your PCI device driver, and then call that interface
directly.
Phil
–
Philip D. Barila
Seagate Technology, LLC
(720) 684-1842
As if I need to say it: Not speaking for Seagate.
Going back and looking at this thread, the question I ask is why are you
trying to do this
in the first place. From the original question, I wondered why you were not
just using a LogConfig section in your INF to set up the parameters to
AddDevice and let PnP do the work as it is supposed to? I’ve done several
drivers that support both PCI and ISA and never had to go the route you are
trying.
Don Burn
Windows 2k/XP/2k3 Filesystem and Driver Consulting
----- Original Message -----
From: “Phil Barila”
Newsgroups: ntdev
To: “NT Developers Interest List”
Sent: Thursday, June 12, 2003 11:25 AM
Subject: [ntdev] Re: Access to the ISA Bus from a driver for a PCI device
> “Sam Tertzakian” wrote in message
> news:xxxxx@ntdev…
> >
> > No, there is no function driver for the device. I cannot believe that
> > something that I have done for years is not possible now! I cannot just
> > write a normal function driver because I must access the device during
> > ISRs and DPC of my PCI device.
>
> Just because you could do it for years, doesn’t mean it was a good idea.
UM
> apps could do anything they wanted to any hardware they wanted back in the
> “Good Old Days” of DOS. You want to return to those thrilling days?
>
> > There should be a way to do the work of the HalAssignSlotResources()
> > function using some other mechanism, right…I just need some kind of
> > handle to the ISA bus, I think.
>
> Stop thinking in DOS. Write your ISA device function driver, just make
sure
> it can be called at elevated IRQLs. Send your IRP_MN_QUERY_INTERFACE to
the
> ISA driver from your PCI device driver, and then call that interface
> directly.
>
> Phil
> –
> Philip D. Barila
> Seagate Technology, LLC
> (720) 684-1842
> As if I need to say it: Not speaking for Seagate.
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@acm.org
> To unsubscribe send a blank email to xxxxx@lists.osr.com