WinUsb Driver Package Help

I recently purchased the OSR USB-FX2 Learning Kit. I am trying to create a driver package for this device using WinUsb. I am following the WinUsbHowTo document and the KMCS_Walkthrough document both provided by Microsoft. I have created a directory for the driver package that includes fx2pkg.inf, and the folders amd64, ia64, and i386. Inside each of those folders I have the appropriate files WdfCoInstaller01009.dll and winusbcoinstaller2.dll. I stamped the INF file with the driver version and date and created the ContosoTest file using the make cert tool. As a result the ContosoTest file was created in my driver package directory. I am trying to use the inf2Cat tool to make a catalog file however, when I use the tool I get the error “Parameter Format Not Correct.” I am using windows 7 and the ia64 free build environment. My command line for using the inf2Cat tool is “inf2Cat /driver:c:\Driver Projects\FX2DriverProject\fx2cd\ /os:7_x64”. I checked the INF file with the chkInf tool and found some errors. The errors and INF file are copied below. What do I insert to fix these problems? Thank you.

chkInf errors:
Line 23: ERROR: (E22.1.1515) PnP ID : USB\VID_0547&PID_1002 is a copy-paste from WDF Samples
Line 26: ERROR: (E22.1.1515) PnP ID : USB\VID_0547&PID_1002 is a copy-paste from WDF Samples
Line 29: ERROR: (E22.1.1515) PnP ID : USB\VID_0547&PID_1002 is a copy-paste from WDF Samples
Line 0: WARNING: (W22.1.2212) No Copyright information found.
Line 3: WARNING: (W22.1.2215) Class MyDeviceClass (ClassGUID {78A1C341-4539-11d3-B88D-00C04FAD5171}) is unrecognized.

fx2pkg.inf:

[Version]
Signature = “$Windows NT$”
Class = MyDeviceClass
ClassGuid={78A1C341-4539-11d3-B88D-00C04FAD5171}
Provider = %ProviderName%
CatalogFile=MyCatFile.cat
DriverVer=03/03/2011,6.0.9999.0

; ================== Class section ==================

[ClassInstall32]
Addreg=MyDeviceClassReg

[MyDeviceClassReg]
HKR,0,%ClassName%
HKR,Icon,-1

; ========== Manufacturer/Models sections ===========

[Manufacturer]
%ProviderName% = MyDevice_WinUSB,NTx86,NTamd64,NTia64

[MyDevice_WinUSB.NTx86]
%USB\MyDevice.DeviceDesc% =USB_Install, USB\VID_0547&PID_1002

[MyDevice_WinUSB.NTamd64]
%USB\MyDevice.DeviceDesc% =USB_Install, USB\VID_0547&PID_1002

[MyDevice_WinUSB.NTia64]
%USB\MyDevice.DeviceDesc% =USB_Install, USB\VID_0547&PID_1002
; =================== Installation ===================

;[1]
[USB_Install]
Include=winusb.inf
Needs=WINUSB.NT

;[2]
[USB_Install.Services]
Include=winusb.inf
AddService=WinUSB,0x00000002,WinUSB_ServiceInstall

;[3]
[WinUSB_ServiceInstall]
DisplayName = %WinUSB_SvcDesc%
ServiceType = 1
StartType = 3
ErrorControl = 1
ServiceBinary = %12%\WinUSB.sys

;[4]
[USB_Install.Wdf]
KmdfService=WINUSB, WinUsb_Install

[WinUSB_Install]
KmdfLibraryVersion=1.9

;[5]
[USB_Install.HW]
AddReg=Dev_AddReg

[Dev_AddReg]
HKR,DeviceInterfaceGUIDs,0x10000,“{b35924d6-3e16-4a9e-9782-5524a4b79bac}”

;[6]
[USB_Install.CoInstallers]
AddReg=CoInstallers_AddReg
CopyFiles=CoInstallers_CopyFiles

[CoInstallers_AddReg]
HKR,CoInstallers32,0x00010000,“WdfCoInstaller01009.dll,WdfCoInstaller”,“WinUSBCoInstaller2.dll”

[CoInstallers_CopyFiles]
WinUSBCoInstaller2.dll
WdfCoInstaller01009.dll

[DestinationDirs]
CoInstallers_CopyFiles=11

; ================= Source Media Section =====================
;[7]

[SourceDisksNames]
1 = %DISK_NAME%,\i386
2 = %DISK_NAME%,\amd64
3 = %DISK_NAME%,\ia64

[SourceDisksFiles.x86]
WinUSBCoInstaller2.dll=1
WdfCoInstaller01009.dll=1

[SourceDisksFiles.amd64]
WinUSBCoInstaller2.dll=2
WdfCoInstaller01009.dll=2

[SourceDisksFiles.ia64]
WinUSBCoInstaller2.dll=3
WdfCoInstaller01009.dll=3
; =================== Strings ===================

[Strings]
ProviderName=“MyWinUsbTest”
USB\MyDevice.DeviceDesc=“Test using WinUSB only”
WinUSB_SvcDesc=“WinUSB Test”
DISK_NAME=“My Install Disk”
ClassName=“MyDeviceClass”

Hmmmm… THIS:

I am using windows 7 and the ia64 free build environment

doesn’t agree with THIS:

“inf2Cat /driver:c:\Driver Projects\FX2DriverProject\fx2cd\ /os:7_x64”

IA64 is the build environment for Intel Itanium server-class systems (rare, and not something you likely will have in your office).

x64 or AMD64 (the name varies) is the build environment for “ordinary” Intel and AMD 64-bit CPUs.

So, that’s one place to start.

Peter
OSR

xxxxx@gmail.com wrote:

I recently purchased the OSR USB-FX2 Learning Kit. I am trying to create a driver package for this device using WinUsb. I am following the WinUsbHowTo document and the KMCS_Walkthrough document both provided by Microsoft. I have created a directory for the driver package that includes fx2pkg.inf, and the folders amd64, ia64, and i386.

You will never in your life install this on an ia64 machine.

…I am trying to use the inf2Cat tool to make a catalog file however, when I use the tool I get the error “Parameter Format Not Correct.” I am using windows 7 and the ia64 free build environment. My command line for using the inf2Cat tool is “inf2Cat /driver:c:\Driver Projects\FX2DriverProject\fx2cd\ /os:7_x64”.

There are a couple of problems here. The most immediate problem is the
space in your path name, and I’m surprised you didn’t see that. The
inf2cat command will see two parameters here:
/driver:c:\Driver
Projects\FX2DriverProject\fx2cd
and that second parameter is not correctly formatted. To get moving for
now, you can surround the path with quoted:
inf2cat /driver:“c:\Driver Projects\FX2DriverProject\fx2cd”

Note, however, that the WDK does not work correctly when the project
directory has spaces in the path. You should consider renaming your
development tree to a name that does not include spaces. Like, say,
“c:\DriverProjects”.

On a minor note, your INF file seems to be set up for having all three
architectures in a single driver package. In that case, you need to
build the CAT file with that in mind:
/os:7_x86,7_x64,7_ia64

I checked the INF file with the chkInf tool and found some errors. The errors and INF file are copied below. What do I insert to fix these problems? Thank you.

chkInf errors:
Line 23: ERROR: (E22.1.1515) PnP ID : USB\VID_0547&PID_1002 is a copy-paste from WDF Samples
Line 26: ERROR: (E22.1.1515) PnP ID : USB\VID_0547&PID_1002 is a copy-paste from WDF Samples
Line 29: ERROR: (E22.1.1515) PnP ID : USB\VID_0547&PID_1002 is a copy-paste from WDF Samples
Line 0: WARNING: (W22.1.2212) No Copyright information found.
Line 3: WARNING: (W22.1.2215) Class MyDeviceClass (ClassGUID {78A1C341-4539-11d3-B88D-00C04FAD5171}) is unrecognized.

All of those are ignorable. The first three are errors because chkinf
is used as part of the DTM validation process, and you are not allowed
to ship your own device with that VID and PID. Since you are just
experimenting, you don’t need to worry about this.


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.

Thank you Peter and Tim. You have both been very helpful.