What is the difference of the USB descriptor configuration for the UMDF vs the KMDF?
I made a KMDF based ARM board with the same hardware ID, descriptors and endpoints as the OSRUSBFX board and loaded the device using the unaltered OSRUSBFX2.inf and OSRUSBFX2.sys. The ARM board mimic’d the functionality needed for the testapp.c
But since we need to interface with a C# GUI Application I built the UMDF (final) code, cleaned the registry of all keys, then used the standard WUDFOsrusbfx2.inf with the nec coinstallers to load the device. When I try and load the UMDF driver with the ARM USB board, it fails.
Comparing registry for the two boards (OSRUSBFX2 vs ARM board with same hw id, descriptors and endpoints) the UMDF ARM registry is missing HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\Vid_0547&Pid_1002\5&290118a3&0&5\Device Parameters\WUDFDiagnosticInfo.
Also the locationinformation registry key is displaying differently with the UMDF ARM board displaying WDF SAMPLE while the OSRUSBFX board locationinformation displays OSR USB-FX2 LK - can’t find out where that is set.
The UMDF OSRUSBFX2 board starts correctly while the UMDF ARM board fails. What the heck else needs to be added/changed to the UMDF ARM USB firmware to install the device with out of the box UMDF drivers?
Here is the setupapi.log
OS Version = 5.1.2600 Service Pack 3
Platform ID = 2 (NT)
Service Pack = 3.0
Suite = 0x0100
Product Type = 1
Architecture = x86
[2010/11/23 15:51:24 984.3 Driver Install]
#-019 Searching for hardware ID(s): usb\vid_0547&pid_1002&rev_0000,usb\vid_0547&pid_1002
#-018 Searching for compatible ID(s): usb\class_ff&subclass_00&prot_00,usb\class_ff&subclass_00,usb\class_ff
#-198 Command line processed: C:\WINDOWS\system32\services.exe
#-166 Device install function: DIF_SELECTBESTCOMPATDRV.
#W059 Selecting best compatible driver failed. Error 0xe0000228: There are no compatible drivers for this device.
#W157 Default installer failed. Error 0xe0000228: There are no compatible drivers for this device.
[2010/11/23 15:51:26 3500.2]
#-199 Executing “C:\WINDOWS\system32\rundll32.exe” with command line: rundll32.exe newdev.dll,ClientSideInstall \.\pipe\PNP_Device_Install_Pipe_0.{1D95FFF0-3011-4927-88D1-5F0CE7AC5E0C}
#I060 Set selected driver.
#-019 Searching for hardware ID(s): usb\vid_0547&pid_1002&rev_0000,usb\vid_0547&pid_1002
#-018 Searching for compatible ID(s): usb\class_ff&subclass_00&prot_00,usb\class_ff&subclass_00,usb\class_ff
#-166 Device install function: DIF_SELECTBESTCOMPATDRV.
#W059 Selecting best compatible driver failed. Error 0xe0000228: There are no compatible drivers for this device.
#W157 Default installer failed. Error 0xe0000228: There are no compatible drivers for this device.
#I060 Set selected driver.
#-019 Searching for hardware ID(s): usb\vid_0547&pid_1002&rev_0000,usb\vid_0547&pid_1002
#-018 Searching for compatible ID(s): usb\class_ff&subclass_00&prot_00,usb\class_ff&subclass_00,usb\class_ff
#-019 Searching for hardware ID(s): usb\vid_0547&pid_1002&rev_0000,usb\vid_0547&pid_1002
#-018 Searching for compatible ID(s): usb\class_ff&subclass_00&prot_00,usb\class_ff&subclass_00,usb\class_ff
#-019 Searching for hardware ID(s): usb\vid_0547&pid_1002&rev_0000,usb\vid_0547&pid_1002
#-018 Searching for compatible ID(s): usb\class_ff&subclass_00&prot_00,usb\class_ff&subclass_00,usb\class_ff
#-019 Searching for hardware ID(s): usb\vid_0547&pid_1002&rev_0000,usb\vid_0547&pid_1002
#-018 Searching for compatible ID(s): usb\class_ff&subclass_00&prot_00,usb\class_ff&subclass_00,usb\class_ff
#I022 Found “USB\VID_0547&PID_1002” in c:\osrusbfx2 driver\WUDFOsrUsbFx2.inf; Device: “UMDF Sample Driver for OSR USB Fx2 Learning Kit”; Driver: “UMDF Sample Driver for OSR USB Fx2 Learning Kit”; Provider: “Microsoft Internal (WDF:UMDF)”; Mfg: “Microsoft Internal (WDF:UMDF)”; Section name: “OsrUsb_Install”.
#I087 Driver node not trusted, rank changed from 0x00000001 to 0x00008001.
#I023 Actual install section: [OsrUsb_Install.NT]. Rank: 0x00008001. Effective driver date: 11/23/2010.
#-124 Doing copy-only install of “USB\VID_0547&PID_1002\5&7D4C538&0&1”.
#E360 An unsigned or incorrectly signed file “c:\osrusbfx2 driver\wudfosrusbfx2.inf” for driver “UMDF Sample Driver for OSR USB Fx2 Learning Kit” 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:\osrusbfx2 driver\wudfosrusbfx2.inf” for driver “UMDF Sample Driver for OSR USB Fx2 Learning Kit” will be installed (Policy=Ignore). Error 0xe000022f: The third-party INF does not contain digital signature information.
#-024 Copying file “c:\osrusbfx2 driver\WUDFOsrUsbFx2.dll” to “C:\WINDOWS\system32\DRIVERS\UMDF\WUDFOsrUsbFx2.dll”.
#E360 An unsigned or incorrectly signed file “c:\osrusbfx2 driver\wudfosrusbfx2.inf” for driver “UMDF Sample Driver for OSR USB Fx2 Learning Kit” will be installed (Policy=Ignore). Error 0xe000022f: The third-party INF does not contain digital signature information.
#-336 Copying file “c:\osrusbfx2 driver\WudfUpdate_01009.dll” to “C:\WINDOWS\system32\WudfUpdate_01009.dll” via temporary file “C:\WINDOWS\system32\SET84.tmp”.
#E360 An unsigned or incorrectly signed file “c:\osrusbfx2 driver\wudfosrusbfx2.inf” for driver “UMDF Sample Driver for OSR USB Fx2 Learning Kit” will be installed (Policy=Ignore). Error 0xe000022f: The third-party INF does not contain digital signature information.
#-336 Copying file “c:\osrusbfx2 driver\WdfCoInstaller01009.dll” to “C:\WINDOWS\system32\WdfCoInstaller01009.dll” via temporary file “C:\WINDOWS\system32\SET87.tmp”.
#E360 An unsigned or incorrectly signed file “c:\osrusbfx2 driver\wudfosrusbfx2.inf” for driver “UMDF Sample Driver for OSR USB Fx2 Learning Kit” will be installed (Policy=Ignore). Error 0xe000022f: The third-party INF does not contain digital signature information.
#-336 Copying file “c:\osrusbfx2 driver\WinUsbCoinstaller2.dll” to “C:\WINDOWS\system32\WinUsbCoinstaller2.dll” via temporary file “C:\WINDOWS\system32\SET8A.tmp”.
#E360 An unsigned or incorrectly signed file “c:\osrusbfx2 driver\wudfosrusbfx2.inf” for driver “UMDF Sample Driver for OSR USB Fx2 Learning Kit” 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 [OsrUsb_Install.NT.Interfaces] from “c:\osrusbfx2 driver\wudfosrusbfx2.inf”.
#I054 Interfaces installed.
#-166 Device install function: DIF_INSTALLDEVICE.
#I123 Doing full install of “USB\VID_0547&PID_1002\5&7D4C538&0&1”.
#E360 An unsigned or incorrectly signed file “c:\osrusbfx2 driver\wudfosrusbfx2.inf” for driver “UMDF Sample Driver for OSR USB Fx2 Learning Kit” will be installed (Policy=Ignore). Error 0xe000022f: The third-party INF does not contain digital signature information.
#I163 Device not started: Device has problem: 0x0a: CM_PROB_FAILED_START.
#I121 Device install of “USB\VID_0547&PID_1002\5&7D4C538&0&1” finished successfully.