Keyboard Class Filter drivers and WHQL

I have this PS2 keyboard class filter driver that I have been trying to
get signed from Microsoft.

First I wrote a KMDF based driver that works fine but is a nightmare to
install when it comes to class filters. I used code on ntdev site that
doesn’t require an INF file and you cant get drivers to get signed
unless there is an INF file. Plus uninstalling the driver uninstalls
other class filter drivers…KMDF bug may be. Have a support case open
for 3 months…

Well so now I wrote the same driver in non-kmdf style and now have a
simple class filter driver that installs using inf, and creates a raw
PDO that a user mode app can use to talk to the driver.

Well now when I try to run DTM, and give it the INF file, it says “No
devices using the specified driver(s) could be found in the selected
machine pool. Running jobs with no devices will most likely result in a
failed submission.”

It is a class filter that obviously doesn’t have its own device. It’s
loaded as part of a PS2 keyboard’s device stack. I am trying under the
Unclassified category.

How the hell am I going to get it signed? Winqual guys say open a new
support case with DTM team.

I’m becoming increasing frustrated with the responses from Microsoft
which invariable have links to documentation and steps to download them.
It’ borderline insulting sometimes.

Even paid support cases seem to be going nowhere.

-pankaj

KMDF has nothing to do with the UpperFilters key on uninstall. The uninstall path in the coinstaller is rather simple, there is nothing for it to do. IIRC, I am pretty darn sure that all input drivers, filters and functional, must be KMDF to get signed

d

From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Pankaj Garg
Sent: Thursday, February 05, 2009 9:48 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] Keyboard Class Filter drivers and WHQL

I have this PS2 keyboard class filter driver that I have been trying to get signed from Microsoft.
First I wrote a KMDF based driver that works fine but is a nightmare to install when it comes to class filters. I used code on ntdev site that doesn’t require an INF file and you cant get drivers to get signed unless there is an INF file. Plus uninstalling the driver uninstalls other class filter drivers…KMDF bug may be. Have a support case open for 3 months…

Well so now I wrote the same driver in non-kmdf style and now have a simple class filter driver that installs using inf, and creates a raw PDO that a user mode app can use to talk to the driver.

Well now when I try to run DTM, and give it the INF file, it says “No devices using the specified driver(s) could be found in the selected machine pool. Running jobs with no devices will most likely result in a failed submission.”

It is a class filter that obviously doesn’t have its own device. It’s loaded as part of a PS2 keyboard’s device stack. I am trying under the Unclassified category.

How the hell am I going to get it signed? Winqual guys say open a new support case with DTM team.

I’m becoming increasing frustrated with the responses from Microsoft which invariable have links to documentation and steps to download them. It’ borderline insulting sometimes.
Even paid support cases seem to be going nowhere.

-pankaj


NTDEV is sponsored by OSR

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

Pankaj Garg wrote:

I’m becoming increasing frustrated with the responses from
Microsoft which invariable have links to documentation and
steps to download them.

By the way… did you try rebooting and clearing your browser’s cache?

Doron,

My kmdf based Mouse Upper Class filter had an issue. This was for a PS2
stack running in a Virtual Machine. Everything the driver was
uninstalled, it uninstalled other class filter drivers from the stack
(in this case VMWare’s). When I switched to the non kmdf one, the
problem went away.

We have a case open with Microsoft to investigate this issue. It may not
be a kmdf issue, but it certainly was an issue and reproducible every
time.

I wasn’t aware of any requirements for input/input filters to be kmdf
only.

Even if they were kmdf based, how does one test the driver. Other folks
have the messaged on internet about DTM not finding any device that
matches the INF provided with the filter. How do you run the tests in
this case? It seems like a generic filter driver issue.

-pankaj


From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Doron Holan
Sent: Thursday, February 05, 2009 10:13 AM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] Keyboard Class Filter drivers and WHQL

KMDF has nothing to do with the UpperFilters key on uninstall. The
uninstall path in the coinstaller is rather simple, there is nothing for
it to do. IIRC, I am pretty darn sure that all input drivers, filters
and functional, must be KMDF to get signed

d

From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Pankaj Garg
Sent: Thursday, February 05, 2009 9:48 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] Keyboard Class Filter drivers and WHQL

I have this PS2 keyboard class filter driver that I have been trying to
get signed from Microsoft.

First I wrote a KMDF based driver that works fine but is a nightmare to
install when it comes to class filters. I used code on ntdev site that
doesn’t require an INF file and you cant get drivers to get signed
unless there is an INF file. Plus uninstalling the driver uninstalls
other class filter drivers…KMDF bug may be. Have a support case open
for 3 months…

Well so now I wrote the same driver in non-kmdf style and now have a
simple class filter driver that installs using inf, and creates a raw
PDO that a user mode app can use to talk to the driver.

Well now when I try to run DTM, and give it the INF file, it says “No
devices using the specified driver(s) could be found in the selected
machine pool. Running jobs with no devices will most likely result in a
failed submission.”

It is a class filter that obviously doesn’t have its own device. It’s
loaded as part of a PS2 keyboard’s device stack. I am trying under the
Unclassified category.

How the hell am I going to get it signed? Winqual guys say open a new
support case with DTM team.

I’m becoming increasing frustrated with the responses from Microsoft
which invariable have links to documentation and steps to download them.
It’ borderline insulting sometimes.

Even paid support cases seem to be going nowhere.

-pankaj


NTDEV is sponsored by OSR

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


NTDEV is sponsored by OSR

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

Doron is right that keyboard and mouse drivers have to be KMDF to be WHQL’d.

It sounds like there might be a real KMDF bug there somewhere (or
“feature”… the OS has removed other filters when installing PS/2
filters for a long time), but in the mean time in order to get your
driver working you could try this:

Create an INF file that does nothing except run a coinstaller (ok, it
could create the service and set registry keys for you and probably do a
bunch of other stuff too).

In the coinstaller, perform the actions you’re currently performing to
install the class driver. This won’t work, of course, if you’re showing
UI or doing anything that can’t run in system context, but that seems
unlikely.

Pankaj Garg wrote:

I have this PS2 keyboard class filter driver that I have been trying to
get signed from Microsoft.

First I wrote a KMDF based driver that works fine but is a nightmare to
install when it comes to class filters. I used code on ntdev site that
doesn’t require an INF file and you cant get drivers to get signed
unless there is an INF file. Plus uninstalling the driver uninstalls
other class filter drivers……KMDF bug may be. Have a support case open
for 3 months….

Well so now I wrote the same driver in non-kmdf style and now have a
simple class filter driver that installs using inf, and creates a raw
PDO that a user mode app can use to talk to the driver.

Well now when I try to run DTM, and give it the INF file, it says “No
devices using the specified driver(s) could be found in the selected
machine pool. Running jobs with no devices will most likely result in a
failed submission.”

It is a class filter that obviously doesn’t have its own device. It’s
loaded as part of a PS2 keyboard’s device stack. I am trying under the
Unclassified category.

How the hell am I going to get it signed? Winqual guys say open a new
support case with DTM team.

I’m becoming increasing frustrated with the responses from Microsoft
which invariable have links to documentation and steps to download them.
It’ borderline insulting sometimes.

Even paid support cases seem to be going nowhere.

-pankaj


Ray
(If you want to reply to me off list, please remove “spamblock.” from my
email address)