Hi, everyone,
I need to read from the status register and write into
the control register of a PCI controller. These are
the functions in an application under Windows XP. I
don’t need to write a driver and actually the PCI
controller does have driver. My question is, do I
have to follow the guidelines given in Microsoft KB
Article-253232
(http://support.microsoft.com/default.aspx?ID=KB;EN-US;Q253232&)?
Is there any easier way to do it?
Thank you very much!
You do understand that the KB article refers to program interfaces available
only to a kernel mode driver, right?
Your application must request these operations from the function driver for
the PCI device. These are not standard operations, so unless for some reason
the driver already provides these functions through some private IOCTL based
API, you will have to modify the driver in order to implement your required
functionality.
=====================
Mark Roddy
-----Original Message-----
From: Sammy Wei [mailto:xxxxx@yahoo.com]
Sent: Thursday, July 15, 2004 12:31 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] Accessing PCI controller registers
Hi, everyone,
I need to read from the status register and write into the control register
of a PCI controller. These are the functions in an application under Windows
XP. I don’t need to write a driver and actually the PCI controller does have
driver. My question is, do I have to follow the guidelines given in
Microsoft KB
Article-253232
(http://support.microsoft.com/default.aspx?ID=KB;EN-US;Q253232&)?
Is there any easier way to do it?
Thank you very much!
“Sammy Wei” wrote in message news:xxxxx@ntdev… > Hi, everyone, > I need to read from the status register and write into > the control register of a PCI controller. These are > the functions in an application under Windows XP. I > don’t need to write a driver and actually the PCI > controller does have driver. My question is, do I > have to follow the guidelines given in Microsoft KB > Article-253232 > (http://support.microsoft.com/default.aspx?ID=KB;EN-US;Q253232&)? > Is there any easier way to do it? > Thank you very much! > > Best wishes, > Shangming > > > > > > __________________________________ > Do you Yahoo!? > Yahoo! Mail is new and improved - Check it out! > http://promotions.yahoo.com/new_mail >
Thank you, Mark.
But the driver was developed by the manufacturer and I can’t get the source
code. Can I still realize those register R/W functions in my application?
Shangming
“Roddy, Mark” wrote in message news:xxxxx@ntdev… > You do understand that the KB article refers to program interfaces available > only to a kernel mode driver, right? > > Your application must request these operations from the function driver for > the PCI device. These are not standard operations, so unless for some reason > the driver already provides these functions through some private IOCTL based > API, you will have to modify the driver in order to implement your required > functionality. > > > > ===================== > Mark Roddy > >
No, as Mark said, they can only be used in kernel-mode. It is highly
unlikely that the vendor exposed this to you in anyway, but you could always
check their specs or ask.
If not, you are stuck either getting the manufacturer to change their driver
for you, or writing your own driver for the device.
–
Bill McKenzie
Software Engineer - Prism 802.11 Wireless Solutions
Conexant Systems, Inc.
“Sammy” wrote in message news:xxxxx@ntdev… > Thank you, Mark. > But the driver was developed by the manufacturer and I can’t get the source > code. Can I still realize those register R/W functions in my application? > > Shangming > > “Roddy, Mark” wrote in message news:xxxxx@ntdev… > > You do understand that the KB article refers to program interfaces > available > > only to a kernel mode driver, right? > > > > Your application must request these operations from the function driver > for > > the PCI device. These are not standard operations, so unless for some > reason > > the driver already provides these functions through some private IOCTL > based > > API, you will have to modify the driver in order to implement your > required > > functionality. > > > > > > > > ===================== > > Mark Roddy > > > > > > >