;
;   Leadshine USB CDC (serial) driver installation file.
; 	Change Record: 
;	Data: 2019-06-06  $baoyoubing ### change ManufacturerName and CatalogFilename
; 	Copyright (c) 2019 Leadshine

[Version]
Signature="$WINDOWS NT$"
Class=Ports
ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
Provider=%Provider%
DriverVer = 05/23/2018,6.7.6.2130
CatalogFile =usb_driver_slab.cat
PnpLockDown=1

; ================= Device section =====================

[Manufacturer]
%ManufacturerName%=SiLabsModelsSection, NTx86.6.1, NTamd64.6.1

;Models sections (one per CPU Architecture)
;Models section for installation of x86 driver on Windows 7 and above
[SiLabsModelsSection.NTx86.6.1]
%USB\VID_10C4&PID_EA60.DeviceDesc%      =SiLabsDDInstallSection, USB\VID_10C4&PID_EA60
%USB\VID_10C4&PID_EA63.DeviceDesc%      =SiLabsDDInstallSection, USB\VID_10C4&PID_EA63
%USB\VID_10C4&PID_EA70&Mi_00.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA70&Mi_00
%USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA70&Mi_01
%USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA71&Mi_00
%USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA71&Mi_01
%USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA71&Mi_02
%USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA71&Mi_03
%USB\VID_10C4&PID_EA7A&Mi_00.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA7A&Mi_00
%USB\VID_10C4&PID_EA7A&Mi_01.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA7A&Mi_01
%USB\VID_10C4&PID_EA7B&Mi_00.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA7B&Mi_00
%USB\VID_10C4&PID_EA7B&Mi_01.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA7B&Mi_01
%USB\VID_10C4&PID_EA7B&Mi_02.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA7B&Mi_02
%USB\VID_10C4&PID_EA7B&Mi_03.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA7B&Mi_03

;Models section for installation of x64 driver on Windows 7 and above
[SiLabsModelsSection.NTamd64.6.1]
%USB\VID_10C4&PID_EA60.DeviceDesc%      =SiLabsDDInstallSection, USB\VID_10C4&PID_EA60
%USB\VID_10C4&PID_EA63.DeviceDesc%      =SiLabsDDInstallSection, USB\VID_10C4&PID_EA63
%USB\VID_10C4&PID_EA70&Mi_00.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA70&Mi_00
%USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA70&Mi_01
%USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA71&Mi_00
%USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA71&Mi_01
%USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA71&Mi_02
%USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA71&Mi_03
%USB\VID_10C4&PID_EA7A&Mi_00.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA7A&Mi_00
%USB\VID_10C4&PID_EA7A&Mi_01.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA7A&Mi_01
%USB\VID_10C4&PID_EA7B&Mi_00.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA7B&Mi_00
%USB\VID_10C4&PID_EA7B&Mi_01.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA7B&Mi_01
%USB\VID_10C4&PID_EA7B&Mi_02.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA7B&Mi_02
%USB\VID_10C4&PID_EA7B&Mi_03.DeviceDesc%=SiLabsDDInstallSection, USB\VID_10C4&PID_EA7B&Mi_03


;DDInstall section
[SiLabsDDInstallSection]
AddReg=silabser.AddReg
CopyFiles=Silabser_CopyFiles_FileListSection
FeatureScore=0x40


;DDInstall.Services section
[SiLabsDDInstallSection.Services]
AddService = silabser,0x00000002,silabser.AddService


[silabser.AddService]
DisplayName    = %silabser.SvcDesc%
ServiceType    = 1
StartType      = 3
ErrorControl   = 1
ServiceBinary  = %12%\usb_driver_slab.sys

; common registry entries 
[silabser.AddReg]
HKR,,NTMPDriver,,usb_driver_slab.sys
HKR,,RateLimitPurgeMS, 0x10001, 0x64, 0x00, 0x00, 0x00
HKR,,OverrideDefaultPortSettings, 0x10001, 01,00,00,00
HKR,,InitialBaudRate, 0x10001, 00,C2,01,00		;115200 initial baud rate
HKR,,InitialLineControl,, "8N1"				;8-bits, No parity, 1 stop bit
HKR,,PortSubClass,1,01
HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"

;DDInstall.HW section
[SiLabsDDInstallSection.HW]
AddReg=SiLabsDDInstallSection.HW.AddReg


[SiLabsDDInstallSection.HW.AddReg]
HKR,,"SelectiveSuspendTimeout",0x00010001,10000
HKR,,"DisableHwAccessInModemStatusIoctls",0x00010001,1
; Attention! The EnablePowerManagewment value is no longer supported.
; To disable Selective Suspend, uncomment the following line:
; HKR,,"DisableS0Idle",0x00010001,1


[Silabser_CopyFiles_FileListSection]
usb_driver_slab.sys

[SourceDisksNames]
1=%Disk_Description%,"usb_driver_slab.cat"

[SourceDisksFiles.x86]
usb_driver_slab.sys = 1,x86
WdfCoinstaller01009.dll=1,x86
[SourceDisksFiles.amd64]
usb_driver_slab.sys = 1,x64
WdfCoinstaller01009.dll=1,x64


[DestinationDirs]
Silabser_CopyFiles_FileListSection = 12
CoInstaller_CopyFiles.KMDF.1.09 = 11

;-------------- WDF Coinstaller installation

;DDInstall.CoInstallers sections (one per x86 and amd64)
[SiLabsDDInstallSection.NTx86.CoInstallers]
AddReg=CoInstaller_AddReg.KMDF.1.09
CopyFiles=CoInstaller_CopyFiles.KMDF.1.09

[SiLabsDDInstallSection.NTamd64.CoInstallers]
AddReg=CoInstaller_AddReg.KMDF.1.09
CopyFiles=CoInstaller_CopyFiles.KMDF.1.09


[CoInstaller_CopyFiles.KMDF.1.09]
WdfCoinstaller01009.dll

[CoInstaller_AddReg.KMDF.1.09]
HKR,,CoInstallers32,0x00010000, "WdfCoinstaller01009.dll,WdfCoInstaller"


;DDInstall.Wdf sections (one per x86 and amd64)
[SiLabsDDInstallSection.NTx86.Wdf]
KmdfService = silabser, SiLabs_wdfsect.1.09
[SiLabsDDInstallSection.NTamd64.Wdf]
KmdfService = silabser, SiLabs_wdfsect.1.09

[SiLabs_wdfsect.1.09]
KmdfLibraryVersion = 1.09

;---------------------------------------------------------------;

[Strings]
Provider="Leadshine Inc."
ManufacturerName="Leadshine"
Disk_Description=                      "Leadshine USB to UART Bridge Installation Disk"
USB\VID_10C4&PID_EA60.DeviceDesc=      "Leadshine  USB to UART Bridge"
USB\VID_10C4&PID_EA63.DeviceDesc=      "Leadshine  USB to UART Bridge"
USB\VID_10C4&PID_EA70&Mi_00.DeviceDesc="Leadshine  USB to UART Bridge: Enhanced COM Port"
USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc="Leadshine  USB to UART Bridge: Standard COM Port"
USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc="Leadshine  USB to UART Bridge: Interface 0"
USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc="Leadshine  USB to UART Bridge: Interface 1"
USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc="Leadshine  USB to UART Bridge: Interface 2"
USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc="Leadshine  USB to UART Bridge: Interface 3"
USB\VID_10C4&PID_EA7A&Mi_00.DeviceDesc="Leadshine  USB to UART Bridge: Enhanced COM Port"
USB\VID_10C4&PID_EA7A&Mi_01.DeviceDesc="Leadshine  USB to UART Bridge: Standard COM Port"
USB\VID_10C4&PID_EA7B&Mi_00.DeviceDesc="Leadshine  USB to UART Bridge: Interface 0"
USB\VID_10C4&PID_EA7B&Mi_01.DeviceDesc="Leadshine  USB to UART Bridge: Interface 1"
USB\VID_10C4&PID_EA7B&Mi_02.DeviceDesc="Leadshine  USB to UART Bridge: Interface 2"
USB\VID_10C4&PID_EA7B&Mi_03.DeviceDesc="Leadshine  USB to UART Bridge: Interface 3"
silabser.SvcDesc="Leadshine USB to UART Bridge Driver"
