WinUSBのinfファイル
ZynqのUSBデバイス機能を試すためにWinUSBを使用するための備忘録。
WinUSBのドライバファイルはWDKに含まれているので、このあたりからインストールする。 WDK8.1からはVisual Studio 2013を先にインストールしてからWDKをインストールしないといけない、と書いてある。サボって後で面倒になるのも嫌なので、手順に従う。
フォルダを作って、次に示すような感じでinfファイルを作成する。同じフォルダにamd64(64bit Windows7の例)というフォルダを作成し、その中にC:\Program Files (x86)\Windows Kits\8.1\Redist\wdf\x64からWdfCoInstaller01011.dll, winusbcoinstaller2.dll, WUDFUpdate_01011.dllをコピーする。
infファイルの内容(例)。GUID, VID, PIDは適当に修正
[Version]
Signature = "$Windows NT$"
Class = ZynqDeviceClass
ClassGuid={23AEE0D0-4E4B-4B03-8360-1FB07C0C3338}
Provider = %ProviderName%
CatalogFile=MyCatFile.cat
; ================== Class section ==================
[ClassInstall32]
Addreg=MyDeviceClassReg
[MyDeviceClassReg]
HKR,,,0,%ClassName%
HKR,,Icon,,-1
; ========== Manufacturer/Models sections ===========
[Manufacturer]
%ProviderName% = ZynqDevice_WinUSB,NTx86,NTamd64,NTia64
[ZynqDevice_WinUSB.NTx86]
%USB\ZynqDevice.DeviceDesc% =USB_Install, USB\VID_ABCD&PID_0100
[ZynqDevice_WinUSB.NTamd64]
%USB\ZynqDevice.DeviceDesc% =USB_Install, USB\VID_ABCD&PID_0100
[ZynqDevice_WinUSB.NTia64]
%USB\ZynqDevice.DeviceDesc% =USB_Install, USB\VID_ABCD&PID_0100
; =================== 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.11
;[5]
[USB_Install.HW]
AddReg=Dev_AddReg
[Dev_AddReg]
HKR,,DeviceInterfaceGUIDs,0x10000,"{9F68AD5A-84E0-4E0F-8EF3-11139532FD22}"
;[6]
[USB_Install.CoInstallers]
AddReg=CoInstallers_AddReg
CopyFiles=CoInstallers_CopyFiles
[CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,"WdfCoInstaller01011.dll,WdfCoInstaller","WinUSBCoInstaller2.dll"
[CoInstallers_CopyFiles]
WinUSBCoInstaller2.dll
WdfCoInstaller01011.dll
WUDFUpdate_01011.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
WdfCoInstaller01011.dll=1
WUDFUpdate_01011.dll=1
[SourceDisksFiles.amd64]
WinUSBCoInstaller2.dll=2
WdfCoInstaller01011.dll=2
WUDFUpdate_01011.dll=2
[SourceDisksFiles.ia64]
WinUSBCoInstaller2.dll=3
WdfCoInstaller01011.dll=3
WUDFUpdate_01011.dll=3
; =================== Strings ===================
[Strings]
ProviderName="ZynqUsbTest"
USB\ZynqDevice.DeviceDesc="ZynqOTG via WinUSB"
WinUSB_SvcDesc="WinUSB Test"
DISK_NAME="My Install Disk"
ClassName="ZynqDeviceClass"