[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Reading BAR0 under WindowsNT
- To: Mailing List Recipients <pci-sig-request@znyx.com>
- Subject: Reading BAR0 under WindowsNT
- From: Paul Slade <PaulS@primary-image.com>
- Date: Fri, 13 Jun 1997 12:04:43 +0000
- Priority: normal
- Resent-Date: Fri, 13 Jun 1997 12:04:43 +0000
- Resent-From: pci-sig-request@znyx.com
- Resent-Message-Id: <"5Qwpv2.0.Mg4.ViLep"@dart>
- Resent-Sender: pci-sig-request@znyx.com
I have written some code that tries to determine the PCI memory
usage. It does this by going through all the devices and reading each
BAR, then writing 0xffffffff to each bar and reading it again to
determine the size. Finally the original BAR value read is written
back.
I have device drivers for reading and writting the PCI configuration
registers under both Windows 95 and Windows NT.
It works completely fine under Windows 95. However, under Windows NT
I get a problem. When the BAR0 of my graphics device is read, it
returns 0. I know that this should be 0xf0000000 since that is where
the BIOS puts it. When my code writes back 0 to the BAR Windows NT
stops refreshing the display correctly.
I've also tried using PCITOOL from
http://www.windows.digital.com/support/drivers/drivers.asp
This also reports a 0 for BAR0. When I write back a 0 from this it
also causes NT to stop refreshing the screen correctly. This makes me
think it's not a problem with my device driver. So what is causing
the problem? Also if I write 0xf0000000 (which should be the correct
address) it still causes NT to stop refreshing correctly.
My graphics card is a Diamond Stealth SE PCI.
Does any one know whats going on?
Thanks for any help offered.
-Paul
------------------------------------------------
Paul Slade, PaulS@primary-image.com
Consultant Engineer,
Primary Image Ltd.
Millbank House,
171-185 Ewell Road,
Surbiton, Surrey, KT6 6AX, UK
+44(0)181-339-9669 Fax: +44(0)181-339-9091
------------------------------------------------
¸ ä Ô