failure to invoke ISR

My legacy driver and hardware with AMCC S5933 32-bit PCI interface has
worked on various systems for years. Now on certain new PC’s (still
running XP) my ISR does not get called, although the AMCC device
indicates via register settings that an interrupt was asserted.

I don’t know what information could be relevant (e.g. this might be the
first use of a system supporting PCIe(?)… I get successful returns
from HalGetInterruptVector() and IoConnectInterrupt()… )

Is this failure scenario familiar? I do not have physical access to a
problem system.

Please suggest how I might begin. I don’t have a clue.

–Justin

Might want to look and see if the BIOS is routing the IRQs correctly. Some BIOS vendors have been lazy when it comes to the “old equipment”.
Sometimes they have trouble handling PCIe to PCI bridges correctly.
Figuring this out is the hard part, without chipset documentation.

Tony M.

Using a legacy driver has been problematical on XP since the day it shipped.
I know of clients who found their driver worked 99 times our of 100, and
others who got close to the reverse behavior. Having dealt with firms that
were selecting hardware for configurations, I told them years ago if it is a
legacy driver for hardware on XP reject the product.

Don Burn
Windows Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Justin Schoenwald
Sent: Thursday, December 12, 2013 2:56 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] failure to invoke ISR

My legacy driver and hardware with AMCC S5933 32-bit PCI interface has
worked on various systems for years. Now on certain new PC’s (still running
XP) my ISR does not get called, although the AMCC device indicates via
register settings that an interrupt was asserted.

I don’t know what information could be relevant (e.g. this might be the
first use of a system supporting PCIe(?)… I get successful returns from
HalGetInterruptVector() and IoConnectInterrupt()… )

Is this failure scenario familiar? I do not have physical access to a
problem system.

Please suggest how I might begin. I don’t have a clue.

–Justin


NTDEV is sponsored by OSR

Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

The documentation on HalGetInterruptVector gives a very clear clue:
http://msdn.microsoft.com/en-us/library/windows/hardware/ff546612(v=vs.85).aspx

– pa

On 12-Dec-2013 21:55, Justin Schoenwald wrote:

My legacy driver and hardware with AMCC S5933 32-bit PCI interface has
worked on various systems for years. Now on certain new PC’s (still
running XP) my ISR does not get called, although the AMCC device
indicates via register settings that an interrupt was asserted.

I don’t know what information could be relevant (e.g. this might be the
first use of a system supporting PCIe(?)… I get successful returns
from HalGetInterruptVector() and IoConnectInterrupt()… )

Is this failure scenario familiar? I do not have physical access to a
problem system.

Please suggest how I might begin. I don’t have a clue.

–Justin

> Having dealt with firms that were selecting hardware for configurations, I told them years ago

if it is a legacy driver for hardware on XP reject the product.

The problem is that companies may have some considerations other than driver writers normally do. For example, consider a company that had invested huge amounts in some industrial control system ages ago, and their ancient hardware that they had purchased 20 years ago still suits their contemporary needs quite well. They would not want to spend some huge amounts again on purchasing new hardware solely for the reasons of compatibility with newer OSes and computers, right. This is why you can still find (if you search well) modern mobos with ISA slots…

Anton Bassov

True and I still have customers I support for NT4 Embedded and who pay
Microsoft when they ship a new system with NT4, but it has been known for
over 10 years that a legacy driver on XP was a crap shoot.

Don Burn
Windows Filesystem and Driver Consulting
Website: http://www.windrvr.com
Blog: http://msmvps.com/blogs/WinDrvr

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of
xxxxx@hotmail.com
Sent: Thursday, December 12, 2013 6:17 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] failure to invoke ISR

Having dealt with firms that were selecting hardware for
configurations, I told them years ago if it is a legacy driver for
hardware on XP reject the product.

The problem is that companies may have some considerations other than driver
writers normally do. For example, consider a company that had invested huge
amounts in some industrial control system ages ago, and their ancient
hardware that they had purchased 20 years ago still suits their contemporary
needs quite well. They would not want to spend some huge amounts again on
purchasing new hardware solely for the reasons of compatibility with newer
OSes and computers, right. This is why you can still find (if you search
well) modern mobos with ISA slots…

Anton Bassov


NTDEV is sponsored by OSR

Visit the list at: http://www.osronline.com/showlists.cfm?list=ntdev

OSR is HIRING!! See http://www.osr.com/careers

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

>

> Having dealt with firms that were selecting hardware for configurations, I
> told them years ago
> if it is a legacy driver for hardware on XP reject the product.

The problem is that companies may have some considerations other than
driver writers normally do. For example, consider a company that had
invested huge amounts in some industrial control system ages ago, and their
ancient hardware that they had purchased 20 years ago still suits their
contemporary needs quite well. They would not want to spend some huge
amounts again on purchasing new hardware solely for the reasons of
compatibility with newer OSes and computers, right. This is why you can still
find (if you search well) modern mobos with ISA slots…

USB to ISA adapters exist too:

http://arstech.com/install/ecom-prodshow/usb2isar.html

dosbox, which is mostly centred around emulating a dos environment so people can re-live the pixelated games of years gone by, is also surprisingly adept at running old dos based hardware management software. If it didn’t support a USB to ISA adapter right now, the effort required to implement such a thing would be quite small.

James

> from HalGetInterruptVector() and IoConnectInterrupt()… )

This was just plain not supported on w2k+ OSes.

Take KMDF and rewrite the driver.


Maxim S. Shatskih
Microsoft MVP on File System And Storage
xxxxx@storagecraft.com
http://www.storagecraft.com

We wrote a driver for a client back in 1998, when they converted their process control card from ISA to PCI.

They called us last year… they were still selling the same system with the same PCI card in it, but the driver had apparently stopped working when it was installed on Windows 7. They were sad when we told them they were lucky that it had worked as long as it had.

We re-wrote the driver for them in KMDF.

The nice part was the hardware handling survived largely unchanged. All that had to be updated was the initialization and request proecssing code. Easy project, and it was fun, re-writing a driver we had written for this same client so long ago.

Peter
OSR