1
0
mirror of https://github.com/arduino/Arduino.git synced 2024-11-28 09:24:14 +01:00

Added updated CP210x drivers

See #5762
This commit is contained in:
Cristian Maglie 2017-01-03 17:35:05 +01:00
parent 07fc856427
commit 694dc96159
16 changed files with 807 additions and 0 deletions

Binary file not shown.

View File

@ -0,0 +1,285 @@
;/*++
;
;Module Name:
;
; SLABVCP.INF
;
; Copyright 2013-2016, Silicon Laboratories Inc.
;
;Abstract:
; Installation INF for Silicon Labs CP210x device
;
;--*/
[Version]
Signature="$WINDOWS NT$"
Class=Ports
ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
Provider=%Provider%
DriverVer=09/19/2016,6.7.4.261
CatalogFile=slabvcp.cat
PnpLockDown=1 ; "a driver package should set PnpLockDown to 1" -- MSDN
; ================= Device section =====================
[Manufacturer]
%ManufacturerName%=SiLabsModelsSection, NTx86.6.1, NTamd64.6.1, NTarm.10, NTarm64.10
;Models section for installation of x86 driver on Windows 7 and above
[SiLabsModelsSection.NTx86.6.1]
%USB\VID_10C4&PID_EA60.DeviceDesc% =SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA60 ; USB\VID_v(4)&PID_d(4)
%USB\VID_10C4&PID_EA63.DeviceDesc% =SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA63
%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)
%USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA70&Mi_01
%USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA71&Mi_00
%USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA71&Mi_01
%USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA71&Mi_02
%USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA71&Mi_03
%USB\VID_10C4&PID_EA7A&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA7A&Mi_00
%USB\VID_10C4&PID_EA7A&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA7A&Mi_01
%USB\VID_10C4&PID_EA7B&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA7B&Mi_00
%USB\VID_10C4&PID_EA7B&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA7B&Mi_01
%USB\VID_10C4&PID_EA7B&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTx86, USB\VID_10C4&PID_EA7B&Mi_02
%USB\VID_10C4&PID_EA7B&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTx86, 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.NTamd64, USB\VID_10C4&PID_EA60 ; USB\VID_v(4)&PID_d(4)
%USB\VID_10C4&PID_EA63.DeviceDesc% =SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA63
%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)
%USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA70&Mi_01
%USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA71&Mi_00
%USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA71&Mi_01
%USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA71&Mi_02
%USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA71&Mi_03
%USB\VID_10C4&PID_EA7A&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA7A&Mi_00
%USB\VID_10C4&PID_EA7A&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA7A&Mi_01
%USB\VID_10C4&PID_EA7B&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA7B&Mi_00
%USB\VID_10C4&PID_EA7B&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA7B&Mi_01
%USB\VID_10C4&PID_EA7B&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA7B&Mi_02
%USB\VID_10C4&PID_EA7B&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTamd64, USB\VID_10C4&PID_EA7B&Mi_03
;Models section for installation of arm driver on Windows 10 and above
[SiLabsModelsSection.NTarm.10]
%USB\VID_10C4&PID_EA60.DeviceDesc% =SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA60 ; USB\VID_v(4)&PID_d(4)
%USB\VID_10C4&PID_EA63.DeviceDesc% =SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA63
%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)
%USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA70&Mi_01
%USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA71&Mi_00
%USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA71&Mi_01
%USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA71&Mi_02
%USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA71&Mi_03
%USB\VID_10C4&PID_EA7A&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA7A&Mi_00
%USB\VID_10C4&PID_EA7A&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA7A&Mi_01
%USB\VID_10C4&PID_EA7B&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA7B&Mi_00
%USB\VID_10C4&PID_EA7B&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA7B&Mi_01
%USB\VID_10C4&PID_EA7B&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA7B&Mi_02
%USB\VID_10C4&PID_EA7B&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTarm, USB\VID_10C4&PID_EA7B&Mi_03
;Models section for installation of arm64 driver on Windows 10 and above
[SiLabsModelsSection.NTarm64.10]
%USB\VID_10C4&PID_EA60.DeviceDesc% =SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA60 ; USB\VID_v(4)&PID_d(4)
%USB\VID_10C4&PID_EA63.DeviceDesc% =SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA63
%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)
%USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA70&Mi_01
%USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA71&Mi_00
%USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA71&Mi_01
%USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA71&Mi_02
%USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA71&Mi_03
%USB\VID_10C4&PID_EA7A&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA7A&Mi_00
%USB\VID_10C4&PID_EA7A&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA7A&Mi_01
%USB\VID_10C4&PID_EA7B&Mi_00.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA7B&Mi_00
%USB\VID_10C4&PID_EA7B&Mi_01.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA7B&Mi_01
%USB\VID_10C4&PID_EA7B&Mi_02.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA7B&Mi_02
%USB\VID_10C4&PID_EA7B&Mi_03.DeviceDesc%=SiLabsDDInstallSection.NTarm64, USB\VID_10C4&PID_EA7B&Mi_03
;DDInstall sections (one per x86, amd64, arm, arm64)
; Note: If/as we are building a Universal driver package, we can not use a DefaultInstall section.
[SiLabsDDInstallSection.NTx86]
AddReg=silabser.AddReg
CopyFiles=silabser.Files.Ext
FeatureScore=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.
[SiLabsDDInstallSection.NTamd64]
AddReg=silabser.AddReg
CopyFiles=silabser.Files.Ext
FeatureScore=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.
[SiLabsDDInstallSection.NTarm]
AddReg=silabser.AddReg
CopyFiles=silabser.Files.Ext
FeatureScore=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.
[SiLabsDDInstallSection.NTarm64]
AddReg=silabser.AddReg
CopyFiles=silabser.Files.Ext
FeatureScore=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.
;DDInstall.Services sections (one per x86, amd64, arm, arm64)
; Note: If/as we are building a Universal driver package, we can not use a DefaultInstall.Services section.
[SiLabsDDInstallSection.NTx86.Services]
AddService = silabser,0x00000002,silabser.AddService
[SiLabsDDInstallSection.NTamd64.Services]
AddService = silabser,0x00000002,silabser.AddService
[SiLabsDDInstallSection.NTarm.Services]
AddService = silabser,0x00000002,silabser.AddService
[SiLabsDDInstallSection.NTarm64.Services]
AddService = silabser,0x00000002,silabser.AddService
[silabser.AddService]
DisplayName = %silabser.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\silabser.sys
; common registry entries
[silabser.AddReg]
HKR,,NTMPDriver,,silabser.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 sections (one per x86, amd64, arm, arm64)
[SiLabsDDInstallSection.NTx86.HW]
AddReg=SiLabsDDInstallSection.HW.AddReg
[SiLabsDDInstallSection.NTamd64.HW]
AddReg=SiLabsDDInstallSection.HW.AddReg
[SiLabsDDInstallSection.NTarm.HW]
AddReg=SiLabsDDInstallSection.HW.AddReg
[SiLabsDDInstallSection.NTarm64.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.Files.Ext]
silabser.sys
[SourceDisksNames.x86]
1=%Disk_Description%,"slabvcp.cat"
[SourceDisksNames.amd64]
1=%Disk_Description%,"slabvcp.cat"
[SourceDisksNames.arm]
1=%Disk_Description%,"slabvcp.cat"
[SourceDisksNames.arm64]
1=%Disk_Description%,"slabvcp.cat"
[SourceDisksFiles.x86]
silabser.sys = 1,x86
WdfCoinstaller01009.dll=1,x86
[SourceDisksFiles.amd64]
silabser.sys = 1,x64
WdfCoinstaller01009.dll=1,x64
[SourceDisksFiles.arm]
silabser.sys = 1,arm
WdfCoinstaller01011.dll=1,arm
[SourceDisksFiles.arm64]
silabser.sys = 1,arm64
WdfCoinstaller01015.dll=1,arm64
[DestinationDirs]
Silabser.Files.Ext = 12 ; windows\system32\drivers
;-------------- WDF Coinstaller installation
[DestinationDirs]
CoInstaller_CopyFiles.KMDF.1.09 = 11 ; windows\system32
CoInstaller_CopyFiles.KMDF.1.11 = 11 ; windows\system32
CoInstaller_CopyFiles.KMDF.1.15 = 11 ; windows\system32
;DDInstall.CoInstallers sections (one per x86, amd64, arm, arm64)
; "You can use any INF section in a universal INF file except for [CoInstallers]" -- MSDN
[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
[SiLabsDDInstallSection.NTarm.CoInstallers]
AddReg=CoInstaller_AddReg.KMDF.1.11
CopyFiles=CoInstaller_CopyFiles.KMDF.1.11
[SiLabsDDInstallSection.NTarm64.CoInstallers]
AddReg=CoInstaller_AddReg.KMDF.1.15
CopyFiles=CoInstaller_CopyFiles.KMDF.1.15
[CoInstaller_CopyFiles.KMDF.1.09]
WdfCoinstaller01009.dll
[CoInstaller_CopyFiles.KMDF.1.11]
WdfCoinstaller01011.dll
[CoInstaller_CopyFiles.KMDF.1.15]
WdfCoinstaller01015.dll
[SourceDisksFiles]
WdfCoinstaller01009.dll=1
WdfCoinstaller01011.dll=1
WdfCoinstaller01015.dll=1
[CoInstaller_AddReg.KMDF.1.09]
HKR,,CoInstallers32,0x00010000, "WdfCoinstaller01009.dll,WdfCoInstaller"
[CoInstaller_AddReg.KMDF.1.11]
HKR,,CoInstallers32,0x00010000, "WdfCoinstaller01011.dll,WdfCoInstaller"
[CoInstaller_AddReg.KMDF.1.15]
HKR,,CoInstallers32,0x00010000, "WdfCoinstaller01015.dll,WdfCoInstaller"
;DDInstall.Wdf sections (one per x86, amd64, arm, arm64)
[SiLabsDDInstallSection.NTx86.Wdf]
KmdfService = silabser, SiLabs_wdfsect.1.09
[SiLabsDDInstallSection.NTamd64.Wdf]
KmdfService = silabser, SiLabs_wdfsect.1.09
[SiLabsDDInstallSection.NTarm.Wdf]
KmdfService = silabser, SiLabs_wdfsect.1.11
[SiLabsDDInstallSection.NTarm64.Wdf]
KmdfService = silabser, SiLabs_wdfsect.1.15
[SiLabs_wdfsect.1.09]
KmdfLibraryVersion = 1.09
[SiLabs_wdfsect.1.11]
KmdfLibraryVersion = 1.11
[SiLabs_wdfsect.1.15]
KmdfLibraryVersion = 1.15
;---------------------------------------------------------------;
[Strings]
Provider="Silicon Laboratories Inc."
ManufacturerName="Silicon Labs"
Disk_Description= "Silicon Labs CP210x USB to UART Bridge Installation Disk"
USB\VID_10C4&PID_EA60.DeviceDesc= "Silicon Labs CP210x USB to UART Bridge"
USB\VID_10C4&PID_EA63.DeviceDesc= "Silicon Labs CP210x USB to UART Bridge"
USB\VID_10C4&PID_EA70&Mi_00.DeviceDesc="Silicon Labs Dual CP2105 USB to UART Bridge: Enhanced COM Port"
USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc="Silicon Labs Dual CP2105 USB to UART Bridge: Standard COM Port"
USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 0"
USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 1"
USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 2"
USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 3"
USB\VID_10C4&PID_EA7A&Mi_00.DeviceDesc="Silicon Labs Dual CP2105 USB to UART Bridge: Enhanced COM Port"
USB\VID_10C4&PID_EA7A&Mi_01.DeviceDesc="Silicon Labs Dual CP2105 USB to UART Bridge: Standard COM Port"
USB\VID_10C4&PID_EA7B&Mi_00.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 0"
USB\VID_10C4&PID_EA7B&Mi_01.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 1"
USB\VID_10C4&PID_EA7B&Mi_02.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 2"
USB\VID_10C4&PID_EA7B&Mi_03.DeviceDesc="Silicon Labs Quad CP2108 USB to UART Bridge: Interface 3"
silabser.SvcDesc="Silicon Labs CP210x USB to UART Bridge Driver"

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,341 @@
CP210x Windows XP/Vista(32/64)/7(32/64)/8,8.1(32/64) Driver v6.7 Release Notes
Copyright (C) 2014 Silicon Laboratories, Inc.
This release contains the following components:
* x64 directory
* silabser.sys
* silabenm.sys
* x86 directory
* silabser.sys
* silabenm.sys
* CP210xVCPInstaller_x86.exe (DPInst)
* CP210xVCPInstaller_x64.exe (DPInst)
* dpinst.xml (DPInst initialization file)
* silabser.cat
* slabvcp.inf
* ReleaseNotes.txt (this file)
Driver Installation
-------------------
See Kit User's Guide for installation instructions.
Release Dates
-------------
CP210x USB to UART Bridge Driver v6.7 - April 11, 2013
Supported Operating Systems
---------------------------
Windows 8/8.1 (64/32), 7 (64/32), Vista (64/32), and XP
CP210x Windows Driver Revision History
--------------------------------------
version 6.7 (Apr 11, 2014)
Corrections
-----------
Added vendor-specific commands to the driver that do not affect normal operation with
standard CP210x devices.
Modified write behavior to packetize data as a work around for a rare USB 2.0 hub behavior
seen only in Windows XP (x86).
version 6.6.1 (Oct 24, 2013)
New features/Enhancements
-------------------------
Added certification for Windows 8.1
version 6.6.1
New features/Enhancements
-------------------------
Added support for CP2108 devices
Corrections
-----------
Corrected bug where OS would hang on repitition of many rapid open/closes on
certain systems.
version 6.6
New features/Enhancements
-------------------------
Moving installer format to DPInst
Supported under Windows 8
Corrections
-----------
Corrected bug in total write timeout calculation
Corrected bug where EV_BREAK event could be misreported based on incoming data
Corrected another BSOD corner case regarding write cancellation
version 6.5.3
Corrections
-----------
Corrected BSOD corner case for a write cancellation
Corrected memory leak that occurs when a device is plugged/unplugged rapidly enough to
allow driver startup function to fail
version 6.5
Corrections
-----------
Corrected BSOD corner case issue for handling control requests
Corrected issue where USB 3.0 hubs would deliver data to the driver out of order
version 6.4
Corrections
-----------
Corrected multiple BSOD issues by updating request handling for control requests to the USB
device, and the write completion method
Corrected device removal routine to also undo the COM port naming in the registry at removal time
instead of when the device is closed after the removal.
version 6.3a
Corrections
-----------
Updated to 3.2 DriverInstaller to correct a bug seen when updating from an old driver
installer version
version 6.3
Corrections
-----------
Corrected a bug introduced in 6.2 which caused BSOD during surprise removal.
Corrected a bug found in I/O cancellation corner case
version 6.2
Corrections
-----------
Corrected return value for DeviceIoControl() and other COM API functions once the device is
removed to properly show ERROR_ACCESS_DENIED (0x05) instead of ERROR_BAD_COMMAND in GetLastError()
Corrected bug in DTR/RTS reporting latency seen if you set DTR/RTS and ask for it before the
device has reported it to the host - now when it is written it reads back immediately
Corrected several USB requests that were improperly defined as device requests when they are actually
interface requests - this doesn't exhibit and bugs in current single interface devices but was changed
to be complete and correct
New features/Enhancements
-------------------------
Added support for CP2104 and CP2105 devices
version 6.1
Corrections
-----------
Corrected a memory leak which could bog the system down after extended use of a contiuously
opened COM port, and conditionally yield bluescreens on certain systems
Corrected a problem where an IO reqest would sometimes return a busy status to
user mode, instead the queue is restarted if necessary before adding an IO request
to the queue
Corrected a condition which would blue screen on cancelling write request that hasn't been
fully sent out USB
Corrected the Capabilites return value, which incorrectly reported that timeouts are not supported
Corrected several Queue size return values, which affected behavior in the MSCOMM control
Corrected DTR/RTS value on device insertion, visible when Serial Enumeration is disabled
Corrected the ability to override Baud Rate and Line Control from the INF file
version 6.0
Corrections
-----------
Corrected multiple blue screens and driver hangs related to race conditions in the driver
Corrected problem where driver hangs when 4 or more devices are connected to a single
transaction translator hub
Corrected bugs that prohibited serial enumeration
Corrected problem where IO requests were not completed/cancelled on a close
Corrected problem with dialing out or PPP connections
New features/Enhancements
-------------------------
Created IO queueing mechanism so that multiple reads, writes, etc. can be queued and
waited on
version 5.4.29
Corrections
-----------
Fixed a bug which causes GET_COMM_STATUS to take longer than expected (previously corrected
in version 5.3)
Corrected several conditions which cause blue screens
Corrected bug in surprise removal which can cause a blue screen
Corrected bug where TX_EMPTY wasn't being reported properly
New features/Enhancements
-------------------------
Added Windows 7 to the general installer for XP/2003/Vista under KMDF 1.9
Modified driver to support selective suspend in Vista/7
Updated silabenm.sys to include latest changes from serenum in the WDK
WHQL Certified for XP/2003/Vista(32/64)/7(32/64)
version 5.4.24
Corrections
-----------
Fixed a bug which caused a random crash if a write took longer than normal to complete
New features/Enhancements
-------------------------
WHQL Certified for XP/2000/2003/Vista(32/64)
version 5.4.23
Corrections
-----------
Fixed a bug which caused a crash if the device is surprise removed during communication.
Fixed a bug which incorrectly uses the TX_EMPTY flag.
Fixed incorrect/incosistent status return values.
Corrected the default software flow control values
version 5.4
Corrections
-----------
Fixed bug where the first packet of data is dropped in Windows 2000.
New features/Enhancements
-------------------------
Added support to keep all GPIO pin states and all baud rate and line control data if
the device loses power during standby or hibernation.
Updated to use the latest version 1.7 of KMDF
version 5.3
Corrections
-----------
Corrected the IOCTL_SERIAL_SET_QUEUE_SIZE to allow expansion of the receive buffer.
Modified driver to limit the device access only when necessary to improve performance.
Corrected a case where read interval timeouts do not get started properly.
version 5.2.2
Corrections
-----------
Fixed a bug that was causing random bluescreens after a device is opened and closed.
version 5.2.1
Corrections
-----------
Fixed a bug caused by the previous fix for incomplete reads in Hyperterminal.
Fixed a bug when using the Manufacturing DLL where no data comes back from the part for
customization type settings in Vista 64.
version 5.2
Corrections
-----------
Fixed a BAD_POOL_HEADER blue screen issue.
Fixed a crash during surprise disconnect in HyperTerminal on Vista.
Fixed a problem causing various incomplete reads, sometimes visible in HyperTerminal.
New features/Enhancements
-------------------------
CP210xVCPInstaller.exe updated to v2.4.
version 5.1
Corrections
-----------
Multiple devices can be used now with no problems.
Driver now correctly works with the MSCOMM ActiveX control.
version 5.0
New features/Enhancements
-------------------------
Driver has been updated to use the KMDF.
Driver now includes a Serial Enumeration filter driver.
WHQL Certified for XP/2000/2003/Vista(32/64).
version 4.40
New features/Enhancements
-------------------------
Driver has been updated to include Vista (x86/x64) support.
CP210xVCPInstaller.exe updated to v2.0.
version 4.38a
New features/Enhancements
-------------------------
Driver version 4.38 is the same, however the installation procedure changed and a new
installation utility has been provided.
INF files have been changed to be independent of the installer, making reseller submissions
easier.
Windows 2K\XP\2003 now all have the same catalog file making the installation a single
utility for all OS's.
version 4.38
New features/Enhancements
-------------------------
Extended surprise removal support added to fix COM port hang.
WHQL Certified for Windows XP and 2000.
Version 4.28a
New features/Enhancements
-------------------------
WHQL Certified for Windows XP and 2000.
Version 4.28
New features/Enhancements
-------------------------
Includes Preinstaller executable and with added preinstaller support in uninstaller
executable and ini files.
Corrections
-----------
Fixed driver lock condition caused by certain invalid port settings.
Fixed Windows 98 PreInstaller issue.
Version 4.20
New features/Enhancements
-------------------------
Changed driver binary file names from cyg_* to slab*. Also changed
default inf file strings to SLAB and Silicon Laboratories.
This installation includes catalog files for Windows 2000/XP Windows
Hardware Quality Lab (WHQL) Certification.
Corrections
-----------
Modified behavior of SERIAL_EV_TXEMPTY event notification. Applications
will no longer miss TXEMPTY events if a write is pending during the
IOCTL_SERIAL_WAIT_ON_MASK control request.
Version 4.16
New features/Enhancements
-------------------------
Corrections
-----------
Changed behavior for IOCTL_SERIAL_LSRMST_INSERT for correct modem
event insertion.
Version 4.09
Initial Release

View File

@ -0,0 +1,35 @@
LICENSE AGREEMENT
SILICON LABS VCP DRIVER
IMPORTANT: READ CAREFULLY BEFORE AGREEING TO TERMS
THIS PRODUCT CONTAINS THE SILICON LABS VCP DRIVER AND INSTALLER PROGRAMS AND OTHER THIRD PARTY SOFTWARE.TOGETHER THESE PRODUCTS ARE REFERRED TO AS THE "LICENSED SOFTWARE". USE OF THE LICENSED SOFTWARE IS SUBJECT TO THE TERMS OF THIS LICENSE AGREEMENT. DOWNLOADING THE LICENSED SOFTWARE AND INDICATING YOUR CONSENT TO THE TERMS OF THIS LICENSE CONSTITUTES A BINDING AGREMENT BETWEEN SILICON LABORATORIES, INC. ("SILICON LABS") AND YOU OR YOUR EMPLOYER (IF APPLICABLE). IF YOU ARE ACCEPTING THE TERMS OF THIS AGREEMENT ON BEHALF YOUR EMPLOYER, THE TERMS "YOU" AND "YOUR" REFER TO YOUR EMPLOYER. WRITTEN APPROVAL IS NOT A PREREQUISITE TO THE VALIDITY OR ENFORCEABILITY OF THIS AGREEMENT. IF THESE TERMS ARE CONSIDERED AN OFFER BY SILICON LABS, ACCEPTANCE IS EXPRESSLY LIMITED TO THESE TERMS.
IF YOU DO NOT AGREE WITH ALL OF THE TERMS OF THIS LICENSE AGREEMENT, YOU MUST NOT USE THE LICENSED SOFTWARE AND YOU MUST DELETE ALL OF COPIES OF THE LICENSED SOFTWARE FROM YOUR COMPUTER.
1. LICENSE: The Licensed Software is and will remain the property of Silicon Labs or a third party from whom Silicon Labs has the authorization to distribute to you subject to the terms of this Agreement. This Licensed Software is protected by state, federal, and international copyright laws. Subject at all times to your compliance with the terms of this License Agreement, Silicon Labs grants to you a nonexclusive license to use the Licensed Software as described in this License Agreement. Silicon Labs may revoke this license at any time if you fail to comply with the terms of this License Agreement. Certain parts of the Licensed Software, including DPInst.exe, are licensed from Microsoft Corporation. For information concerning licensing DPInst.exe and the redistributable pieces of WDF used in the driver, refer to the license.rtf file in the 7600.16385.1 version of the Windows Driver Kit, available through Microsoft.
2. CONTENTS OF THE LICENSED SOFTWARE: The Licensed Software consists of the following items:
a. Driver binaries
b. INF file that describes the driver installation
c. DPInst.exe that provides the GUI interface to install the drivers
d. XML file that describes the DPInst.exe and GUI items
3. INSTALLATION AND USE RIGHTS:
a. You may download and install the Licensed Software on one or more computers and make any number of copies.
b. You may internally evaluate the Licensed Software. If you elect to use the Licensed Software for any other purpose, including modification and distribution, then the following additional terms apply to you.
c. You may modify only the INF and XML files. You may modify these files with information concerning your company or your company's products.
d. You may not modify the driver binary files or the DPInst.exe files.
e. You may redistribute to your
the Licensed Software only with the modified INF and XML files. Your redistribution may be in any form, including physical media and Internet downloads.
4. RESTRICTIONS:
a. You may not use the Licensed Software with any integrated circuit products other than those designed and manufactured by Silicon Labs.
b. Except as provided above, you may not redistribute, sublicense, assign, rent or lease any portion of the Licensed Software to any third party.
c. You may not reverse engineer, decompile, disassemble, modify, translate, or make any attempt to discover the source code of the Licensed Software. You may not work around any technical limitation in the Licensed Software.
d. Except as provided above, you may not modify or create derivative works from the Licensed Software.
e. You may not modify or distribute the Licensed Software so that any part of it becomes subject to an excluded license. An excluded license is one that requires, as a condition of use, modification or distribution, that the software be disclosed or distributed in source code form, or that others have the right to modify it.
f. You may not obscure or remove any product identification, copyright or other notices that appear on the Licensed Software, including any notices from third parties.
g. You may not redistribute any modified or unmodified version of the Licensed Software to any third party as a standalone product. You may not redistribute any modified or unmodified version of the Licensed Software to any third party who has not accepted the terms of an end-user license agreement that contains terms at least as protective of Silicon Labs' rights as those contained in this License Agreement.
5. WARRANTY: Silicon Labs does not warrant that the Licensed Software will meet your requirements or that operation of the Licensed Software will be uninterrupted or error-free. You agree that the Licensed Software is provided "AS IS" and that Silicon Labs makes no other warranties regarding the Licensed Software. SILICON LABS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT, RELATED TO THE LICENSED SOFTWARE, ITS USE OR ANY INABILITY TO USE IT, THE RESULTS OF ITS USE AND THIS AGREEMENT. YOU MAY HAVE OTHER RIGHTS, WHICH VARY FROM STATE TO STATE.
6. DISCLAIMER OF DAMAGES: IN NO EVENT WILL SILICON LABS BE LIABLE TO YOU FOR ANY SPECIAL, CONSEQUENTIAL, INDIRECT, OR SIMILAR DAMAGES, INCLUDING ANY LOST PROFITS OR LOST DATA ARISING OUT OF THE USE OR INABILITY TO USE THE LICENSED SOFTWARE EVEN IF SILICON LABS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE LIMITATION OR EXCLUSION OF LIABILITY FOR INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THE ABOVE LIMITATION OR EXCLUSION MAY NOT APPLY TO YOU. IN NO CASE SHALL SILICON LABS' CUMULATIVE LIABILITY TO YOU FOR ALL PURPOSES EXCEED FIFTY UNITED STATES DOLLARS ($50). The disclaimers and limitations set forth above will apply regardless of whether you accept the Licensed Software.
7. TERM AND TERMINATION: The term of this Agreement and the License granted herein shall begin upon use of the Licensed Software and continue in perpetuity unless you breach any of the obligations set out under this Agreement. Upon any breach of this Agreement by you, the license granted hereunder shall terminate immediately and you shall cease all use of the Licensed Software and return or destroy all copies of the Licensed Software to Silicon Labs immediately. Termination of this License upon your breach is only one remedy available to Silicon Labs. In addition to termination of this Agreement upon your breach, Silicon Labs shall be entitled to seek any and all other available remedies, at law or at equity, arising from your breach. Termination of this Agreement shall not affect your customers' ability to continue using copies of the modified or unmodified Licensed Software they obtained from you.
8. EXPORT: You shall comply with all applicable federal, provincial, state and local laws, regulations and ordinances including but not limited to applicable U.S. Export Administration Laws and Regulations. You shall not export or re-export, or allow the export or re-export of the Licensed Software to any country specified in the then-current Supplement No. 1 to Part 740, or, in violation of the embargo provisions in Part 746, of the U.S. Export Administration Regulations (or any successor regulations or supplement), except in compliance with and with all licenses and approvals required under applicable export laws and regulations, including without limitation, those of the U.S. Department of Commerce.
9. GENERAL: This Agreement will be governed by the laws of the State of Texas and any applicable federal laws or regulations. The waiver by either Party of any default or breach of this Agreement shall not constitute a waiver of any other or subsequent default or breach. This Agreement constitutes the complete and exclusive statement of the mutual understanding between you and Silicon Labs with respect to this subject matter herein. This Agreement may only be modified by a written addendum, which has been signed by both you and Silicon Labs.
BY CLICKING "I ACCEPT THE TERMS OF THIS AGREEMENT" YOU AGREE TO ACCEPT AND COMPLY WITH THE TERMS OF THIS LICENSE AGREEMENT WITH SILICON LABORATORIES INC.

Binary file not shown.

View File

@ -0,0 +1,146 @@
;/*++
;
;Module Name:
;
; SLABVCP.INF
;
; Copyright 2013, Silicon Laboratories
;
;Abstract:
; Installation INF for Silicon Laboratories CP210x device using KDMF Version 1.9
;
;--*/
[Version]
Signature="$WINDOWS NT$"
Class=Ports
ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
Provider=%Provider%
DriverVer=03/19/2014,6.7.0.0
CatalogFile=slabvcp.cat
; ================= Device section =====================
[Manufacturer]
%MfgName%=SiLabs, NTamd64
[SiLabs]
%USB\VID_10C4&PID_EA60.DeviceDesc%=silabser.Dev, USB\VID_10C4&PID_EA60
%USB\VID_10C4&PID_EA70&Mi_00.DeviceDesc%=silabser.Dev, USB\VID_10C4&PID_EA70&Mi_00
%USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc%=silabser.Dev, USB\VID_10C4&PID_EA70&Mi_01
%USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc%=silabser.Dev, USB\VID_10C4&PID_EA71&Mi_00
%USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc%=silabser.Dev, USB\VID_10C4&PID_EA71&Mi_01
%USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc%=silabser.Dev, USB\VID_10C4&PID_EA71&Mi_02
%USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc%=silabser.Dev, USB\VID_10C4&PID_EA71&Mi_03
[SiLabs.NTamd64]
%USB\VID_10C4&PID_EA60.DeviceDesc%=silabser.Dev, USB\VID_10C4&PID_EA60
%USB\VID_10C4&PID_EA70&Mi_00.DeviceDesc%=silabser.Dev, USB\VID_10C4&PID_EA70&Mi_00
%USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc%=silabser.Dev, USB\VID_10C4&PID_EA70&Mi_01
%USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc%=silabser.Dev, USB\VID_10C4&PID_EA71&Mi_00
%USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc%=silabser.Dev, USB\VID_10C4&PID_EA71&Mi_01
%USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc%=silabser.Dev, USB\VID_10C4&PID_EA71&Mi_02
%USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc%=silabser.Dev, USB\VID_10C4&PID_EA71&Mi_03
[silabser.Dev.NT]
Include=msports.inf
AddReg=silabser.AddReg,silabser.NT.AddReg
CopyFiles=silabser.Files.Ext
[silabser.Dev.NT.Services]
Include=msports.inf
Addservice = silabenm,,silabenm.AddService
Addservice = silabser,0x00000002,silabser.AddService
[silabser.AddService]
DisplayName = %silabser.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\silabser.sys
LoadOrderGroup = Extended Base
[silabenm.AddService]
DisplayName = %silabenm.SvcDesc%
ServiceType = 1 ; SERVICE_KERNEL_DRIVER
StartType = 3 ; SERVICE_DEMAND_START
ErrorControl = 1 ; SERVICE_ERROR_NORMAL
ServiceBinary = %12%\silabenm.sys
LoadOrderGroup = PNP Filter
; common registry entries
[silabser.AddReg]
HKR,,NTMPDriver,,silabser.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
[silabser.NT.AddReg]
HKR,,PortSubClass,1,01
HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
[silabser.Dev.NT.HW]
AddReg=silabser.Dev.NT.HW.AddReg
[silabser.Dev.NT.HW.AddReg]
HKR,,"UpperFilters",0x00010008,"silabenm"
HKR,,"SelectiveSuspendTimeout",0x00010001,10000
[silabser.Files.Ext]
silabser.sys
silabenm.sys
[SourceDisksNames.x86]
1=%Disk_Description%,"silabser.sys",,\x86
[SourceDisksNames.amd64]
1=%Disk_Description%,"silabser.sys",,\x64
[SourceDisksFiles]
silabser.sys = 1
silabenm.sys = 1
[DestinationDirs]
Silabser.Files.Ext = 12
;-------------- WDF Coinstaller installation
[DestinationDirs]
CoInstaller_CopyFiles = 11
[silabser.Dev.NT.CoInstallers]
AddReg=CoInstaller_AddReg
CopyFiles=CoInstaller_CopyFiles
[CoInstaller_CopyFiles]
WdfCoinstaller01009.dll
[SourceDisksFiles]
WdfCoinstaller01009.dll=1
[CoInstaller_AddReg]
HKR,,CoInstallers32,0x00010000, "WdfCoinstaller01009.dll,WdfCoInstaller"
[silabser.Dev.NT.Wdf]
KmdfService = silabser, silabser_wdfsect
[silabser_wdfsect]
KmdfLibraryVersion = 1.9
;---------------------------------------------------------------;
[Strings]
Provider="Silicon Laboratories"
MfgName="Silicon Laboratories"
Disk_Description="Silicon Labs USB to UART Bridge Installation Disk"
USB\VID_10C4&PID_EA60.DeviceDesc="Silicon Labs CP210x USB to UART Bridge"
USB\VID_10C4&PID_EA70&Mi_00.DeviceDesc="Silicon Labs Dual CP210x USB to UART Bridge: Enhanced COM Port"
USB\VID_10C4&PID_EA70&Mi_01.DeviceDesc="Silicon Labs Dual CP210x USB to UART Bridge: Standard COM Port"
USB\VID_10C4&PID_EA71&Mi_00.DeviceDesc="Silicon Labs Quad CP210x USB to UART Bridge: Interface 0"
USB\VID_10C4&PID_EA71&Mi_01.DeviceDesc="Silicon Labs Quad CP210x USB to UART Bridge: Interface 1"
USB\VID_10C4&PID_EA71&Mi_02.DeviceDesc="Silicon Labs Quad CP210x USB to UART Bridge: Interface 2"
USB\VID_10C4&PID_EA71&Mi_03.DeviceDesc="Silicon Labs Quad CP210x USB to UART Bridge: Interface 3"
silabser.SvcDesc="Silicon Labs CP210x USB to UART Bridge Driver"
silabenm.SvcDesc="Silicon Labs CP210x USB to UART Bridge Serial Port Enumerator Driver"
PortsClassName = "Ports (COM & LPT)"

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.