Hello guys:
I have an upper filter driver and a lower filter driver that are specific to device and they should sandwich the usbser.sys driver (both are KMDF drivers). I created an inf file that worked well in my development machine but if I tried to install them in another machine, it fails (Cannot start hardware). The installation only has the inf file and the two sys files.
What can be the problem?
Do I have to work with coinstallers (like the article “http://www.osronline.com/article.cfm?article=446” where a class filter driver is installed)?
Is it a problem in the inf file?
Why works well in the installation machine and gives problems in other machines?
Thanks for pointing me in the right direction, I am getting crazy with this.
Just to be clear, you do have the coinstallers in the same directory as your
sys files when your try to install?
mm
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of
xxxxx@pounceconsulting.com
Sent: Thursday, October 21, 2010 2:37 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] KMDF Specific Filter driver installation
Hello guys:
I have an upper filter driver and a lower filter driver that are specific to
device and they should sandwich the usbser.sys driver (both are KMDF
drivers). I created an inf file that worked well in my development machine
but if I tried to install them in another machine, it fails (Cannot start
hardware). The installation only has the inf file and the two sys files.
What can be the problem?
Do I have to work with coinstallers (like the article
“http://www.osronline.com/article.cfm?article=446” where a class filter
driver is installed)?
Is it a problem in the inf file?
Why works well in the installation machine and gives problems in other
machines?
Thanks for pointing me in the right direction, I am getting crazy with this.
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
What kit did you build with (this will give the kmdf version) and what OS did you try to install on? You need the coinstallers in your drivers package to make sure the right version of the runtime is present and installed
d
-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Martin O’Brien
Sent: Thursday, October 21, 2010 11:37 AM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] KMDF Specific Filter driver installation
Just to be clear, you do have the coinstallers in the same directory as your sys files when your try to install?
mm
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@pounceconsulting.com
Sent: Thursday, October 21, 2010 2:37 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] KMDF Specific Filter driver installation
Hello guys:
I have an upper filter driver and a lower filter driver that are specific to device and they should sandwich the usbser.sys driver (both are KMDF drivers). I created an inf file that worked well in my development machine but if I tried to install them in another machine, it fails (Cannot start hardware). The installation only has the inf file and the two sys files.
What can be the problem?
Do I have to work with coinstallers (like the article “http://www.osronline.com/article.cfm?article=446” where a class filter driver is installed)?
Is it a problem in the inf file?
Why works well in the installation machine and gives problems in other machines?
Thanks for pointing me in the right direction, I am getting crazy with this.
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
Ok guys:
I just put the coinstallers in the same folder within the sys files and inf file and didn’t work. The drivers were built with wddk 7.1 and tried to be installed on windows xp. The drivers were developed in windows xp using checked build environment. Seem pretty weird because I just go to the Device manager, select hardware (COM port) and update driver using my inf file and works great at the development machine (with windows xp). I copy the inf, sys and coinstaller (WdfCoInstaller01009.dll) to another machine and fails (Cannot Start Hardware).
Where do I have to take care of the KMDF version, at the inf file? does the target machine needs something else than the development coinstallers?
Thanks!
Could you post the relevant contents of ‘setuplog.api’ after a failed
installation?
mm
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of
xxxxx@pounceconsulting.com
Sent: Thursday, October 21, 2010 4:46 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] KMDF Specific Filter driver installation
Ok guys:
I just put the coinstallers in the same folder within the sys files and inf
file and didn’t work. The drivers were built with wddk 7.1 and tried to be
installed on windows xp. The drivers were developed in windows xp using
checked build environment. Seem pretty weird because I just go to the Device
manager, select hardware (COM port) and update driver using my inf file and
works great at the development machine (with windows xp). I copy the inf,
sys and coinstaller (WdfCoInstaller01009.dll) to another machine and fails
(Cannot Start Hardware).
Where do I have to take care of the KMDF version, at the inf file? does the
target machine needs something else than the development coinstallers?
Thanks!
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
xxxxx@pounceconsulting.com wrote:
Ok guys:
I just put the coinstallers in the same folder within the sys files and inf file and didn’t work. The drivers were built with wddk 7.1 and tried to be installed on windows xp. The drivers were developed in windows xp using checked build environment. Seem pretty weird because I just go to the Device manager, select hardware (COM port) and update driver using my inf file and works great at the development machine (with windows xp). I copy the inf, sys and coinstaller (WdfCoInstaller01009.dll) to another machine and fails (Cannot Start Hardware).
Does the INF file have the co-installers section?
Is the second system also XP? It’s not 64-bit, is it?
–
Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.
mm:
Has a lot of stuff but I paste the most important, it looks like is a problem of signature, even though the two last lines said that was a problem and then sucessfully.
#I022 Found “USB\VID_15A2&PID_A50F” in c:\fsl\Copy of Freescale_CDC_Driver.inf; Device: “Freescale CDC Device”; Driver: “Freescale CDC Device”; Provider: “Freescale Semiconductor”; Mfg: “Freescale Semiconductor”; Section name: “DriverInstall”.
#I087 Driver node not trusted, rank changed from 0x00000001 to 0x00008001.
#I023 Actual install section: [DriverInstall.NT]. Rank: 0x00008001. Effective driver date: 04/24/2009.
#I022 Found “USB\VID_15A2&PID_A50F” in c:\fsl\Copy of Freescale_Pounce_CDC_Driver.inf; Device: “FSL1.0”; Driver: “FSL1.0”; Provider: “Freescale Semiconductor”; Mfg: “Freescale Semiconductor”; Section name: “DriverInstall”.
#I087 Driver node not trusted, rank changed from 0x00000001 to 0x00008001.
#I023 Actual install section: [DriverInstall.NT]. Rank: 0x00008001. Effective driver date: 08/09/2010.
#I022 Found “USB\VID_15A2&PID_A50F” in c:\fsl\Freescale_Pounce_CDC_Driver.inf; Device: “FSL Test 3”; Driver: “FSL Test 3”; Provider: “Freescale Semiconductor”; Mfg: “Freescale Semiconductor”; Section name: “DriverInstall”.
#I087 Driver node not trusted, rank changed from 0x00000001 to 0x00008001.
#I023 Actual install section: [DriverInstall.NT]. Rank: 0x00008001. Effective driver date: 08/09/2010.
#-124 Doing copy-only install of “USB\VID_15A2&PID_A50F\TEST_1.1”.
#E360 An unsigned or incorrectly signed file “c:\fsl\copy of freescale_pounce_cdc_driver.inf” for driver “FSL1.0” will be installed (Policy=Ignore). Error 0xe000022f: The third-party INF does not contain digital signature information.
#W187 Install failed, attempting to restore original files.
#E360 An unsigned or incorrectly signed file “c:\fsl\copy of freescale_pounce_cdc_driver.inf” for driver “FSL1.0” will be installed (Policy=Ignore). Error 0xe000022f: The third-party INF does not contain digital signature information.
#-336 Copying file “c:\fsl\low_usb.sys” to “C:\WINDOWS\system32\DRIVERS\low_usb.sys” via temporary file “C:\WINDOWS\system32\DRIVERS\SET9E2.tmp”.
#E360 An unsigned or incorrectly signed file “c:\fsl\low_usb.sys” for driver “FSL1.0” will be installed (Policy=Ignore). Error 0xe000022f: The third-party INF does not contain digital signature information.
#-336 Copying file “c:\fsl\upp_usb.sys” to “C:\WINDOWS\system32\DRIVERS\upp_usb.sys” via temporary file “C:\WINDOWS\system32\DRIVERS\SET9E4.tmp”.
#E360 An unsigned or incorrectly signed file “c:\fsl\upp_usb.sys” for driver “FSL1.0” will be installed (Policy=Ignore). Error 0xe000022f: The third-party INF does not contain digital signature information.
#-166 Device install function: DIF_REGISTER_COINSTALLERS.
#I056 Coinstallers registered.
#-166 Device install function: DIF_INSTALLINTERFACES.
#-011 Installing section [DriverInstall.NT.Interfaces] from “c:\fsl\copy of freescale_pounce_cdc_driver.inf”.
#I054 Interfaces installed.
#-166 Device install function: DIF_INSTALLDEVICE.
#I123 Doing full install of “USB\VID_15A2&PID_A50F\TEST_1.1”.
#E360 An unsigned or incorrectly signed file “c:\fsl\copy of freescale_pounce_cdc_driver.inf” for driver “FSL1.0” will be installed (Policy=Ignore). Error 0xe000022f: The third-party INF does not contain digital signature information.
#I163 Device not started: Device has problem: 0x27: CM_PROB_DRIVER_FAILED_LOAD.
#I121 Device install of “USB\VID_15A2&PID_A50F\TEST_1.1” finished successfully.
Is your target a 64-bit os?
mm
-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of
xxxxx@pounceconsulting.com
Sent: Thursday, October 21, 2010 5:26 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] KMDF Specific Filter driver installation
mm:
Has a lot of stuff but I paste the most important, it looks like is a
problem of signature, even though the two last lines said that was a problem
and then sucessfully.
#I022 Found “USB\VID_15A2&PID_A50F” in c:\fsl\Copy of
Freescale_CDC_Driver.inf; Device: “Freescale CDC Device”; Driver: “Freescale
CDC Device”; Provider: “Freescale Semiconductor”; Mfg: “Freescale
Semiconductor”; Section name: “DriverInstall”.
#I087 Driver node not trusted, rank changed from 0x00000001 to 0x00008001.
#I023 Actual install section: [DriverInstall.NT]. Rank: 0x00008001.
Effective driver date: 04/24/2009.
#I022 Found “USB\VID_15A2&PID_A50F” in c:\fsl\Copy of
Freescale_Pounce_CDC_Driver.inf; Device: “FSL1.0”; Driver: “FSL1.0”;
Provider: “Freescale Semiconductor”; Mfg: “Freescale Semiconductor”; Section
name: “DriverInstall”.
#I087 Driver node not trusted, rank changed from 0x00000001 to 0x00008001.
#I023 Actual install section: [DriverInstall.NT]. Rank: 0x00008001.
Effective driver date: 08/09/2010.
#I022 Found “USB\VID_15A2&PID_A50F” in
c:\fsl\Freescale_Pounce_CDC_Driver.inf; Device: “FSL Test 3”; Driver: “FSL
Test 3”; Provider: “Freescale Semiconductor”; Mfg: “Freescale
Semiconductor”; Section name: “DriverInstall”.
#I087 Driver node not trusted, rank changed from 0x00000001 to 0x00008001.
#I023 Actual install section: [DriverInstall.NT]. Rank: 0x00008001.
Effective driver date: 08/09/2010.
#-124 Doing copy-only install of “USB\VID_15A2&PID_A50F\TEST_1.1”.
#E360 An unsigned or incorrectly signed file “c:\fsl\copy of
freescale_pounce_cdc_driver.inf” for driver “FSL1.0” will be installed
(Policy=Ignore). Error 0xe000022f: The third-party INF does not contain
digital signature information.
#W187 Install failed, attempting to restore original files.
#E360 An unsigned or incorrectly signed file “c:\fsl\copy of
freescale_pounce_cdc_driver.inf” for driver “FSL1.0” will be installed
(Policy=Ignore). Error 0xe000022f: The third-party INF does not contain
digital signature information.
#-336 Copying file “c:\fsl\low_usb.sys” to
“C:\WINDOWS\system32\DRIVERS\low_usb.sys” via temporary file
“C:\WINDOWS\system32\DRIVERS\SET9E2.tmp”.
#E360 An unsigned or incorrectly signed file “c:\fsl\low_usb.sys” for driver
“FSL1.0” will be installed (Policy=Ignore). Error 0xe000022f: The
third-party INF does not contain digital signature information.
#-336 Copying file “c:\fsl\upp_usb.sys” to
“C:\WINDOWS\system32\DRIVERS\upp_usb.sys” via temporary file
“C:\WINDOWS\system32\DRIVERS\SET9E4.tmp”.
#E360 An unsigned or incorrectly signed file “c:\fsl\upp_usb.sys” for driver
“FSL1.0” will be installed (Policy=Ignore). Error 0xe000022f: The
third-party INF does not contain digital signature information.
#-166 Device install function: DIF_REGISTER_COINSTALLERS.
#I056 Coinstallers registered.
#-166 Device install function: DIF_INSTALLINTERFACES.
#-011 Installing section [DriverInstall.NT.Interfaces] from “c:\fsl\copy of
freescale_pounce_cdc_driver.inf”.
#I054 Interfaces installed.
#-166 Device install function: DIF_INSTALLDEVICE.
#I123 Doing full install of “USB\VID_15A2&PID_A50F\TEST_1.1”.
#E360 An unsigned or incorrectly signed file “c:\fsl\copy of
freescale_pounce_cdc_driver.inf” for driver “FSL1.0” will be installed
(Policy=Ignore). Error 0xe000022f: The third-party INF does not contain
digital signature information.
#I163 Device not started: Device has problem: 0x27:
CM_PROB_DRIVER_FAILED_LOAD.
#I121 Device install of “USB\VID_15A2&PID_A50F\TEST_1.1” finished
successfully.
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
xxxxx@pounceconsulting.com wrote:
mm:
Has a lot of stuff but I paste the most important, it looks like is a problem of signature, even though the two last lines said that was a problem and then sucessfully.
Notice that the signature error line says “Policy=Ignore”. The
signature isn’t valid, but it doesn’t matter.
There appear to be two different installs going on here. It looks like
your function driver for USB\VID_15A2&PID_A50F is getting installed, and
then creating another new device, USB\VID_15A2&PID_A50F\TEST_1.1. Is
your driver doing that? If not, I don’t know where the \TEST_1.1 is
coming from.
–
Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.
Did you add the .wdf section to the INF as well as list the WDF coinstallers in the INF in the coinstallers section? Just copying the file over doesn’t do anything, it needs to be invoked in the proper context
d
-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@pounceconsulting.com
Sent: Thursday, October 21, 2010 1:46 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] KMDF Specific Filter driver installation
Ok guys:
I just put the coinstallers in the same folder within the sys files and inf file and didn’t work. The drivers were built with wddk 7.1 and tried to be installed on windows xp. The drivers were developed in windows xp using checked build environment. Seem pretty weird because I just go to the Device manager, select hardware (COM port) and update driver using my inf file and works great at the development machine (with windows xp). I copy the inf, sys and coinstaller (WdfCoInstaller01009.dll) to another machine and fails (Cannot Start Hardware).
Where do I have to take care of the KMDF version, at the inf file? does the target machine needs something else than the development coinstallers?
Thanks!
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
Guys:
My target is 32 bits and yes it looks like signature is not the problem. it is truth I didn’t have the section for coinstallers at the inf file but I add it and did not work yet. Here is my complete inf file: (if I comment everthing related to upp_usb.sys and low_usb.sys installs nicely the usbser.sys) . Also setuplog.api for correct inf installation:
#-166 Device install function: DIF_INSTALLINTERFACES.
#-011 Installing section [DriverInstall.NT.Interfaces] from “c:\windows\inf\oem69.inf”.
#I054 Interfaces installed.
#-166 Device install function: DIF_INSTALLDEVICE.
#I123 Doing full install of “USB\VID_15A2&PID_A50F\TEST_1.1”.
#I121 Device install of “USB\VID_15A2&PID_A50F\TEST_1.1” finished successfully
[Version]
Signature=“$Windows NT$”
Class=Ports
ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
Provider=%MANUFACTURER%
LayoutFile=layout.inf
;CatalogFile=%FILENAME%.cat
DriverVer= 08/09/2010,3.1.0
[Manufacturer]
%MANUFACTURER%=DeviceList,NTamd64
[DestinationDirs]
DefaultDestDir=12
MyDevice_CoInstaller_CopyFiles = 11
;------------------------------------------------------------------------------
; Windows 2000/XP
;------------------------------------------------------------------------------
[DriverInstall.nt]
include=mdmcpq.inf
CopyFiles=DriverCopyFiles.nt
[DriverCopyFiles.nt]
usbser.sys,0x20
low_usb.sys
upp_usb.sys
[DriverInstall.nt.HW]
AddReg=DriverInstall.nt.AddReg
[MyDevice.NT.CoInstallers]
AddReg=MyDevice_CoInstaller_AddReg
CopyFiles=MyDevice_CoInstaller_CopyFiles
[MyDevice_CoInstaller_AddReg]
HKR,CoInstallers32,0x00010000, “WdfCoInstaller01009.dll,WdfCoInstaller”
[MyDevice_CoInstaller_CopyFiles]
WdfCoInstaller01009.dll
[MyDevice_Device.NT.Wdf]
KmdfService = MyDevice, MyDevice_wdfsect
[MyDevice_wdfsect]
KmdfLibraryVersion = 1.9
[DriverInstall.nt.AddReg]
HKR,DevLoader,*ntkern
HKR,NTMPDriver,%DRIVERFILENAME%.sys
HKR,EnumPropPages32,“MsPorts.dll,SerialPortPropPageProvider”
HKR,“LowerFilters”,0x00010008,“low_usb”
HKR,“UpperFilters”,0x00010008,“upp_usb”
[DriverInstall.nt.Services]
AddService=usbser, 0x00000002, DriverService.nt
AddService = low_usb, , lowfilt_Service_Inst
AddService = upp_usb, , uppfilt_Service_Inst
[DriverService.nt]
DisplayName=%SERVICE%
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%12%%DRIVERFILENAME%.sys
[lowfilt_Service_Inst]
DisplayName = “Lower Class Filter Driver for FSL”
ServiceType = 1
StartType = 3
ErrorControl = 1
ServiceBinary = %12%\low_usb.sys
[uppfilt_Service_Inst]
DisplayName = “Upper Class Filter Driver for FSL”
ServiceType = 1
StartType = 3
ErrorControl = 1
ServiceBinary = %12%\upp_usb.sys
;------------------------------------------------------------------------------
; VID/PID Settings
;------------------------------------------------------------------------------
[SourceDisksFiles]
[SourceDisksNames]
[DeviceList]
%DESCRIPTION%=DriverInstall, USB\VID_15A2&PID_A50E
%DESCRIPTION%=DriverInstall, USB\VID_15A2&PID_A50F
[DeviceList.NTamd64]
%DESCRIPTION%=DriverInstall, USB\VID_15A2&PID_A50E
%DESCRIPTION%=DriverInstall, USB\VID_15A2&PID_A50F
;------------------------------------------------------------------------------
; String Definitions
;------------------------------------------------------------------------------
[Strings]
FILENAME=“FSL_Pounce_cdc”
DRIVERFILENAME =“usbser”
MANUFACTURER=“Freescale Semiconductor”
INSTDISK=“USB2UART”
DESCRIPTION=“FSL_USB1.0”
SERVICE=“Virtual Com Driver”
which version of the Windows XP are you installed ?
#I121 Device install of “USB\VID_15A2&PID_A50F\TEST_1.1” finished
successfully.
This message shows that you had installed the INF successfully ,So It doesn’t matter with INF .
#I163 Device not started: Device has problem: 0x27:
CM_PROB_DRIVER_FAILED_LOAD.
This message shows that when you call *StartDevice* in driver ,It failed . Check your filter driver ,if there is somewhere return FALSE .
I had met the same case with the difference error code , It was fixed in Windows XP SP3.
I hope these snippet informations would be helpful for you .
xxxxx@pounceconsulting.com wrote:
Guys:
My target is 32 bits and yes it looks like signature is not the problem. it is truth I didn’t have the section for coinstallers at the inf file but I add it and did not work yet. Here is my complete inf file: (if I comment everthing related to upp_usb.sys and low_usb.sys installs nicely the usbser.sys) . Also setuplog.api for correct inf installation:#-166 Device install function: DIF_INSTALLINTERFACES.
#-011 Installing section [DriverInstall.NT.Interfaces] from “c:\windows\inf\oem69.inf”.
#I054 Interfaces installed.
#-166 Device install function: DIF_INSTALLDEVICE.
#I123 Doing full install of “USB\VID_15A2&PID_A50F\TEST_1.1”.
#I121 Device install of “USB\VID_15A2&PID_A50F\TEST_1.1” finished successfully
Look, you are ignoring something very important here – something that I
have pointed out at least once before. The device being mentioned in
that snippet is ***NOT*** the device being matched by this INF file.
The INF matches
USB\VID_15A2&PID_A50F
The log message is talking about
USB\VID_15A2&PID_A50F\TEST_1.1
Those are two completely separate devices. A human being might infer
that there is some relationship between them, because of the common part
of the string, but to the operating system those two names are
COMPLETELY UNRELATED.
Further, I notice that you have a [DriverInstall] section here. Are you
installing this using a right-click Install from Explorer, as is common
for a class filter? If so, then the co-installer sections are not being
executed. There is a knowledge base article that talks about this. In
order to install a KMDF-based class filter, you have to run the
co-installer BY HAND. Check this exchange, and notice the MSDN link inside:
https://www.osronline.com/showthread.cfm?link=166769
And, if you are using a right-click install, the whole device ID thing
is also irrelevant. Your INF will not be stored in the driver store,
and it will not be registered as the “root driver” for that USB. Your
[DeviceList] section will never be used.
–
Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.
Podun:
I will check even though as I mentioned the drivers works fine at the XP development machine. The target machine has XP SP2 2002, so you really think the problem is not in the INF?
Tim:
I will change the device being matched at the INF and let you know. No, I am not right-installing the driver I want to install it with the device manager and is supposed to be a device-specific filter drivers (just applied to a specific hardware an USB-Serial converter with extended functions beyond CDC/ACM)
xxxxx@pounceconsulting.com wrote:
I will change the device being matched at the INF and let you know.
I’m not convinced that is the right answer. You need to know where the
…\TEST-1.1 device is coming from. The USB stack isn’t creating that.
Is one of your filters acting as a bus and creating a new device?
–
Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.
Tim:
If I install the device using only usbser.sys and with the inf like this:
[DeviceList]
%DESCRIPTION%=DriverInstall, USB\VID_15A2&PID_A50E
%DESCRIPTION%=DriverInstall, USB\VID_15A2&PID_A50F
Installs correctly and the setupapi.log indicates:
#I123 Doing full install of “USB\VID_15A2&PID_A50F\TEST_1.1”.
#I121 Device install of “USB\VID_15A2&PID_A50F\TEST_1.1” finished successfully
If i check the hardware at device manager has instance id USB\VID_15A2&PID_A50F\TEST_1.1 but hardware id’s USB\VID_15A2&PID_A50F, USB\VID_15A2&PID_A50F&Rev_0000
The drivers only deal with custom requests. The lower filter driver catches the configuration of the usb device and store it so when a custom call comes the upper driver recognizes it then calls a lower driver interface function that returns the usb device and the upper filter driver access directly the device bypassing efectively the usbser.sys.
As I said this works fine in the development machine, quite weird is not reproducible in other machines
I’ve tried to stay out on the “too many cooks theory”, but I feel compelled to comment on a couple of things I see in this thread where I think the comments might be useful:
CM_PROB_DRIVER_FAILED_LOAD- it doesn’t mean “you failed start device”. You never made it that far. It means what it says- the driver couldn’t even be loaded. The operating system is wonderfully advanced, but by itself, it can’t execute code it can’t successfully get into memory.
Two most common causes for this code are (most common) the driver imports something that doesn’t exist, or (less common) the driver isn’t native kernel driver (e.g., you can’t load a 32-bit kernel driver on a 64-bit OS).
Taking that along with some other posts in this thread, it seems to me that it is likely (but not at all absolutely certain) that you have not installed KMDF, as your driver will have imports for the KMDF loader. It works on your dev box because you have got KMDF there (how it got there doesn’t matter). Both boxes running nearly the same OS makes this a higher-probability case than the one of some import not being in the kernel or HAL (I said “higher”, not “only”).
It’s really easy to tell if KMDF installation was even attempted:
- The coinstaller scribbles installation status messages to %windir%\setupact.log- just look at it, and if you don’t see “wdfcoinstaller” there somewhere, you most likely never invoked it.
- This applies only to pre-Vista OS, but that’s the case here- the package that installs KMDF also generates a log file named by the KMDF version it installs. So you should also find at least one file in response to “dir %windir%*wdf*.log” (probably one of the splats isn’t needed, but I don’t look at these OS much anymore so I can’t recall the exact format off the top of my head).
I mention these because if it was attempted and failed, those are the files that are going to help figure out how and why it failed.
Bob:
It is true I couldn’t find in setupact.log references to “wdfcoinstaller” nor the files you mentioned. Hence this means the problem is in the inf file not loading the KMDF??
Thanks!
Barring possibilities like erasure or editing of the files (and I’ve seen what seems to be evidence of that at times), yes, that’s what it means.
I suspect your coinstaller sections [since I believe that earlier in the thread there did seem to be some trace of there being coinstaller sections] are not tagged properly. There is a tool in the WDK called chkinf that should point out issues with an INF file’s construction- unreferenced sections and the like. If it finds that you have a KMDF driver, it also verifies proper Wdf section formatting and construction. http://msdn.microsoft.com/en-us/library/ff543461(VS.85).aspx
It might point out a few things for you rather quickly.
-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@pounceconsulting.com
Sent: Friday, October 22, 2010 2:06 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] KMDF Specific Filter driver installation
Bob:
It is true I couldn’t find in setupact.log references to “wdfcoinstaller” nor the files you mentioned. Hence this means the problem is in the inf file not loading the KMDF??
Thanks!