Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results

Home NTDEV

More Info on Driver Writing and Debugging


The free OSR Learning Library has more than 50 articles on a wide variety of topics about writing and debugging device drivers and Minifilters. From introductory level to advanced. All the articles have been recently reviewed and updated, and are written using the clear and definitive style you've come to expect from OSR over the years.


Check out The OSR Learning Library at: https://www.osr.com/osr-learning-library/


Before Posting...

Please check out the Community Guidelines in the Announcements and Administration Category.

Can read PCI config space, but not normal space on one motherboar-d?

OSR_Community_UserOSR_Community_User Member Posts: 110,217
I have a PCI device that works fine in all of the motherboards I've tried
except for the Intel Seattle (SE440BX-2) motherboard.

When it works fine in other motherboards, I can read the PCI config space
(programatically, with PCIview, or by using the PCI command in SoftICE), and
then there are also 256 registers at a memory location that I can read. My
driver can map those registers and read them. Also, I can do a PEEKD in
SoftICE and get the expected values.

On the Intel Seattle motherboard, however, I can read the PCI config space,
but when I try to read the registers, I always read 0xFFFFFFFF. I have the
same problem when I do a PEEKD in SoftICE.

Note that the device is at least partially functional, since I can read the
PCI config space. Additionally, the same card works in other systems with
other motherboards.

I looked around for conflicts in the memory, but saw none. I also grabbed
the newest BIOS, but that didn't help.

Does anyone have any ideas what I should look at next? I'm at a loss to
explain how that could happen!

Thanks!
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. Sign in or register to get started.

Upcoming OSR Seminars
OSR has suspended in-person seminars due to the Covid-19 outbreak. But, don't miss your training! Attend via the internet instead!
Writing WDF Drivers 24 January 2022 Live, Online
Internals & Software Drivers 7 February 2022 Live, Online
Kernel Debugging 21 March 2022 Live, Online
Developing Minifilters 23 May 2022 Live, Online