1;/*++ 2; 3;Module Name: 4; 5; SLABVCP.INF 6; 7; Copyright 2013-2016, Silicon Laboratories Inc. 8; 9;Abstract: 10; Installation INF for Silicon Labs CP210x device 11; 12;--*/ 13 14[Version] 15Signature="$WINDOWS NT$" 16Class=Ports 17ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318} 18Provider=%Provider% 19DriverVer=09/19/2016,6.7.4.261 20CatalogFile=slabvcp.cat 21PnpLockDown=1 ; "a driver package should set PnpLockDown to 1" -- MSDN 22 23; ================= Device section ===================== 24 25[Manufacturer] 26%ManufacturerName%=SiLabsModelsSection, NTx86.6.1, NTamd64.6.1, NTarm.10, NTarm64.10 27 28;Models section for installation of x86 driver on Windows 7 and above 29[SiLabsModelsSection.NTx86.6.1] 30%USB\VID_10C4&PID_EA60.DeviceDesc% =SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA60 ; USB\VID_v(4)&PID_d(4) 31%USB\VID_10C4&PID_EA63.DeviceDesc% =SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA63 32%USB\VID_10C4&PID_EA70&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA70&Mi_00 ; USB\VID_v(4)&PID_d(4)&MI_z(2) 33%USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA70&Mi_01 34%USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA71&Mi_00 35%USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA71&Mi_01 36%USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA71&Mi_02 37%USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA71&Mi_03 38%USB\VID_10C4&PID_EA7A&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA7A&Mi_00 39%USB\VID_10C4&PID_EA7A&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA7A&Mi_01 40%USB\VID_10C4&PID_EA7B&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA7B&Mi_00 41%USB\VID_10C4&PID_EA7B&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA7B&Mi_01 42%USB\VID_10C4&PID_EA7B&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA7B&Mi_02 43%USB\VID_10C4&PID_EA7B&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA7B&Mi_03 44 45;Models section for installation of x64 driver on Windows 7 and above 46[SiLabsModelsSection.NTamd64.6.1] 47%USB\VID_10C4&PID_EA60.DeviceDesc% =SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA60 ; USB\VID_v(4)&PID_d(4) 48%USB\VID_10C4&PID_EA63.DeviceDesc% =SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA63 49%USB\VID_10C4&PID_EA70&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA70&Mi_00 ; USB\VID_v(4)&PID_d(4)&MI_z(2) 50%USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA70&Mi_01 51%USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA71&Mi_00 52%USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA71&Mi_01 53%USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA71&Mi_02 54%USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA71&Mi_03 55%USB\VID_10C4&PID_EA7A&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA7A&Mi_00 56%USB\VID_10C4&PID_EA7A&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA7A&Mi_01 57%USB\VID_10C4&PID_EA7B&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA7B&Mi_00 58%USB\VID_10C4&PID_EA7B&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA7B&Mi_01 59%USB\VID_10C4&PID_EA7B&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA7B&Mi_02 60%USB\VID_10C4&PID_EA7B&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA7B&Mi_03 61 62;Models section for installation of arm driver on Windows 10 and above 63[SiLabsModelsSection.NTarm.10] 64%USB\VID_10C4&PID_EA60.DeviceDesc% =SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA60 ; USB\VID_v(4)&PID_d(4) 65%USB\VID_10C4&PID_EA63.DeviceDesc% =SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA63 66%USB\VID_10C4&PID_EA70&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA70&Mi_00 ; USB\VID_v(4)&PID_d(4)&MI_z(2) 67%USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA70&Mi_01 68%USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA71&Mi_00 69%USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA71&Mi_01 70%USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA71&Mi_02 71%USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA71&Mi_03 72%USB\VID_10C4&PID_EA7A&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA7A&Mi_00 73%USB\VID_10C4&PID_EA7A&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA7A&Mi_01 74%USB\VID_10C4&PID_EA7B&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA7B&Mi_00 75%USB\VID_10C4&PID_EA7B&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA7B&Mi_01 76%USB\VID_10C4&PID_EA7B&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA7B&Mi_02 77%USB\VID_10C4&PID_EA7B&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA7B&Mi_03 78 79;Models section for installation of arm64 driver on Windows 10 and above 80[SiLabsModelsSection.NTarm64.10] 81%USB\VID_10C4&PID_EA60.DeviceDesc% =SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA60 ; USB\VID_v(4)&PID_d(4) 82%USB\VID_10C4&PID_EA63.DeviceDesc% =SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA63 83%USB\VID_10C4&PID_EA70&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA70&Mi_00 ; USB\VID_v(4)&PID_d(4)&MI_z(2) 84%USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA70&Mi_01 85%USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA71&Mi_00 86%USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA71&Mi_01 87%USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA71&Mi_02 88%USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA71&Mi_03 89%USB\VID_10C4&PID_EA7A&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA7A&Mi_00 90%USB\VID_10C4&PID_EA7A&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA7A&Mi_01 91%USB\VID_10C4&PID_EA7B&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA7B&Mi_00 92%USB\VID_10C4&PID_EA7B&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA7B&Mi_01 93%USB\VID_10C4&PID_EA7B&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA7B&Mi_02 94%USB\VID_10C4&PID_EA7B&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA7B&Mi_03 95 96;DDInstall sections (one per x86, amd64, arm, arm64) 97; Note: If/as we are building a Universal driver package, we can not use a DefaultInstall section. 98[SiLabsDDInstallSection.NTx86] 99AddReg=silabser.AddReg 100CopyFiles=silabser.Files.Ext 101FeatureScore=0x40 ; a single-byte hexadecimal number between 0x00 and 0xFF, A lower featurescore value specifies a better feature score rank, where 0x00 is the best feature score rank. 102 103[SiLabsDDInstallSection.NTamd64] 104AddReg=silabser.AddReg 105CopyFiles=silabser.Files.Ext 106FeatureScore=0x40 ; a single-byte hexadecimal number between 0x00 and 0xFF, A lower featurescore value specifies a better feature score rank, where 0x00 is the best feature score rank. 107 108[SiLabsDDInstallSection.NTarm] 109AddReg=silabser.AddReg 110CopyFiles=silabser.Files.Ext 111FeatureScore=0x40 ; a single-byte hexadecimal number between 0x00 and 0xFF, A lower featurescore value specifies a better feature score rank, where 0x00 is the best feature score rank. 112 113[SiLabsDDInstallSection.NTarm64] 114AddReg=silabser.AddReg 115CopyFiles=silabser.Files.Ext 116FeatureScore=0x40 ; a single-byte hexadecimal number between 0x00 and 0xFF, A lower featurescore value specifies a better feature score rank, where 0x00 is the best feature score rank. 117 118 119;DDInstall.Services sections (one per x86, amd64, arm, arm64) 120; Note: If/as we are building a Universal driver package, we can not use a DefaultInstall.Services section. 121[SiLabsDDInstallSection.NTx86.Services] 122AddService = silabser,0x00000002,silabser.AddService 123 124[SiLabsDDInstallSection.NTamd64.Services] 125AddService = silabser,0x00000002,silabser.AddService 126 127[SiLabsDDInstallSection.NTarm.Services] 128AddService = silabser,0x00000002,silabser.AddService 129 130[SiLabsDDInstallSection.NTarm64.Services] 131AddService = silabser,0x00000002,silabser.AddService 132 133[silabser.AddService] 134DisplayName = %silabser.SvcDesc% 135ServiceType = 1 ; SERVICE_KERNEL_DRIVER 136StartType = 3 ; SERVICE_DEMAND_START 137ErrorControl = 1 ; SERVICE_ERROR_NORMAL 138ServiceBinary = %12%\silabser.sys 139 140; common registry entries 141[silabser.AddReg] 142HKR,,NTMPDriver,,silabser.sys 143HKR,,RateLimitPurgeMS, 0x10001, 0x64, 0x00, 0x00, 0x00 144HKR,,OverrideDefaultPortSettings, 0x10001, 01,00,00,00 145HKR,,InitialBaudRate, 0x10001, 00,C2,01,00 ;115200 initial baud rate 146HKR,,InitialLineControl,, "8N1" ;8-bits, No parity, 1 stop bit 147HKR,,PortSubClass,1,01 148HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider" 149 150;DDInstall.HW sections (one per x86, amd64, arm, arm64) 151[SiLabsDDInstallSection.NTx86.HW] 152AddReg=SiLabsDDInstallSection.HW.AddReg 153 154[SiLabsDDInstallSection.NTamd64.HW] 155AddReg=SiLabsDDInstallSection.HW.AddReg 156 157[SiLabsDDInstallSection.NTarm.HW] 158AddReg=SiLabsDDInstallSection.HW.AddReg 159 160[SiLabsDDInstallSection.NTarm64.HW] 161AddReg=SiLabsDDInstallSection.HW.AddReg 162 163[SiLabsDDInstallSection.HW.AddReg] 164HKR,,"SelectiveSuspendTimeout",0x00010001,10000 165HKR,,"DisableHwAccessInModemStatusIoctls",0x00010001,1 166; Attention! The EnablePowerManagewment value is no longer supported. 167; To disable Selective Suspend, uncomment the following line: 168; HKR,,"DisableS0Idle",0x00010001,1 169 170[silabser.Files.Ext] 171silabser.sys 172 173[SourceDisksNames.x86] 1741=%Disk_Description%,"slabvcp.cat" 175[SourceDisksNames.amd64] 1761=%Disk_Description%,"slabvcp.cat" 177[SourceDisksNames.arm] 1781=%Disk_Description%,"slabvcp.cat" 179[SourceDisksNames.arm64] 1801=%Disk_Description%,"slabvcp.cat" 181 182[SourceDisksFiles.x86] 183silabser.sys = 1,x86 184WdfCoinstaller01009.dll=1,x86 185 186[SourceDisksFiles.amd64] 187silabser.sys = 1,x64 188WdfCoinstaller01009.dll=1,x64 189 190[SourceDisksFiles.arm] 191silabser.sys = 1,arm 192WdfCoinstaller01011.dll=1,arm 193 194[SourceDisksFiles.arm64] 195silabser.sys = 1,arm64 196WdfCoinstaller01015.dll=1,arm64 197 198[DestinationDirs] 199Silabser.Files.Ext = 12 ; windows\system32\drivers 200 201;-------------- WDF Coinstaller installation 202[DestinationDirs] 203CoInstaller_CopyFiles.KMDF.1.09 = 11 ; windows\system32 204CoInstaller_CopyFiles.KMDF.1.11 = 11 ; windows\system32 205CoInstaller_CopyFiles.KMDF.1.15 = 11 ; windows\system32 206 207;DDInstall.CoInstallers sections (one per x86, amd64, arm, arm64) 208; "You can use any INF section in a universal INF file except for [CoInstallers]" -- MSDN 209[SiLabsDDInstallSection.NTx86.CoInstallers] 210AddReg=CoInstaller_AddReg.KMDF.1.09 211CopyFiles=CoInstaller_CopyFiles.KMDF.1.09 212 213[SiLabsDDInstallSection.NTamd64.CoInstallers] 214AddReg=CoInstaller_AddReg.KMDF.1.09 215CopyFiles=CoInstaller_CopyFiles.KMDF.1.09 216 217[SiLabsDDInstallSection.NTarm.CoInstallers] 218AddReg=CoInstaller_AddReg.KMDF.1.11 219CopyFiles=CoInstaller_CopyFiles.KMDF.1.11 220 221[SiLabsDDInstallSection.NTarm64.CoInstallers] 222AddReg=CoInstaller_AddReg.KMDF.1.15 223CopyFiles=CoInstaller_CopyFiles.KMDF.1.15 224 225[CoInstaller_CopyFiles.KMDF.1.09] 226WdfCoinstaller01009.dll 227[CoInstaller_CopyFiles.KMDF.1.11] 228WdfCoinstaller01011.dll 229[CoInstaller_CopyFiles.KMDF.1.15] 230WdfCoinstaller01015.dll 231 232[SourceDisksFiles] 233WdfCoinstaller01009.dll=1 234WdfCoinstaller01011.dll=1 235WdfCoinstaller01015.dll=1 236 237[CoInstaller_AddReg.KMDF.1.09] 238HKR,,CoInstallers32,0x00010000, "WdfCoinstaller01009.dll,WdfCoInstaller" 239[CoInstaller_AddReg.KMDF.1.11] 240HKR,,CoInstallers32,0x00010000, "WdfCoinstaller01011.dll,WdfCoInstaller" 241[CoInstaller_AddReg.KMDF.1.15] 242HKR,,CoInstallers32,0x00010000, "WdfCoinstaller01015.dll,WdfCoInstaller" 243 244 245;DDInstall.Wdf sections (one per x86, amd64, arm, arm64) 246[SiLabsDDInstallSection.NTx86.Wdf] 247KmdfService = silabser, SiLabs_wdfsect.1.09 248 249[SiLabsDDInstallSection.NTamd64.Wdf] 250KmdfService = silabser, SiLabs_wdfsect.1.09 251 252[SiLabsDDInstallSection.NTarm.Wdf] 253KmdfService = silabser, SiLabs_wdfsect.1.11 254 255[SiLabsDDInstallSection.NTarm64.Wdf] 256KmdfService = silabser, SiLabs_wdfsect.1.15 257 258[SiLabs_wdfsect.1.09] 259KmdfLibraryVersion = 1.09 260[SiLabs_wdfsect.1.11] 261KmdfLibraryVersion = 1.11 262[SiLabs_wdfsect.1.15] 263KmdfLibraryVersion = 1.15 264 265;---------------------------------------------------------------; 266 267[Strings] 268Provider="Silicon Laboratories Inc." 269ManufacturerName="Silicon Labs" 270Disk_Description= "Silicon Labs CP210x USB to UART Bridge Installation Disk" 271USB\VID_10C4&PID_EA60.DeviceDesc= "Silicon Labs CP210x USB to UART Bridge" 272USB\VID_10C4&PID_EA63.DeviceDesc= "Silicon Labs CP210x USB to UART Bridge" 273USB\VID_10C4&PID_EA70&Mi_00.DeviceDesc="Silicon Labs Dual CP2105 USB to UART Bridge: Enhanced COM Port" 274USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc="Silicon Labs Dual CP2105 USB to UART Bridge: Standard COM Port" 275USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 0" 276USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 1" 277USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 2" 278USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 3" 279USB\VID_10C4&PID_EA7A&Mi_00.DeviceDesc="Silicon Labs Dual CP2105 USB to UART Bridge: Enhanced COM Port" 280USB\VID_10C4&PID_EA7A&Mi_01.DeviceDesc="Silicon Labs Dual CP2105 USB to UART Bridge: Standard COM Port" 281USB\VID_10C4&PID_EA7B&Mi_00.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 0" 282USB\VID_10C4&PID_EA7B&Mi_01.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 1" 283USB\VID_10C4&PID_EA7B&Mi_02.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 2" 284USB\VID_10C4&PID_EA7B&Mi_03.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 3" 285silabser.SvcDesc="Silicon Labs CP210x USB to UART Bridge Driver" 286