;-------------------------------------------------------------------------------
; qcfilter.INF
;
; Quectel Wireless Composite Device
;
; Copyright (c) 2014 Quectel Technologies, Inc.
; All rights reserved.
;-------------------------------------------------------------------------------

[Version]
Signature   = "$WINDOWS NT$"
Class       = USB
Provider    = %QUECTEL%
ClassGUID   = {36FC9E60-C465-11CF-8056-444553540000}
DriverVer   = 02/24/2018,5.0.1.3
CatalogFile = qcfilter.cat

[Manufacturer]
%QUECTEL%  = QuectelFilter,NTx86,NTamd64

[ControlFlags]
ExcludeFromSelect = *

[SourceDisksNames.x86]
1000 = %QcomSrcDisk%,"",,\filter\i386

[SourceDisksNames.amd64]
1001 = %QcomSrcDisk%,"",,\filter\amd64

[SourceDisksFiles.x86]
qcusbfilter.sys  = 1000

[SourceDisksFiles.amd64]
qcusbfilter.sys  = 1001

[QuectelFilter.NTx86]
;AG35
%qcfilter.DeviceDesc0435%     = qcfilter, USB\VID_2C7C&PID_0435
;BG96
%qcfilter.DeviceDesc0296%     = qcfilter, USB\VID_2C7C&PID_0296
;EC21 EC25 EC20 R2.0
%qcfilter.DeviceDesc0125%     = qcfilter, USB\VID_2C7C&PID_0125
%qcfilter.DeviceDesc0121%     = qcfilter, USB\VID_2C7C&PID_0121
;EP06 EM06 EM06
%qcfilter.DeviceDesc0306%     = qcfilter, USB\VID_2C7C&PID_0306
;EG91 EG95
%qcfilter.DeviceDesc0191%     = qcfilter, USB\VID_2C7C&PID_0191
%qcfilter.DeviceDesc0195%     = qcfilter, USB\VID_2C7C&PID_0195

[QuectelFilter.NTamd64]
;AG35
%qcfilter.DeviceDesc0435%     = qcfilter, USB\VID_2C7C&PID_0435
;BG96
%qcfilter.DeviceDesc0296%     = qcfilter, USB\VID_2C7C&PID_0296
;EC21 EC25 EC20 R2.0
%qcfilter.DeviceDesc0125%     = qcfilter, USB\VID_2C7C&PID_0125
%qcfilter.DeviceDesc0121%     = qcfilter, USB\VID_2C7C&PID_0121
;EP06 EM06 EM06
%qcfilter.DeviceDesc0306%     = qcfilter, USB\VID_2C7C&PID_0306
;EG91 EG95
%qcfilter.DeviceDesc0191%     = qcfilter, USB\VID_2C7C&PID_0191
%qcfilter.DeviceDesc0195%     = qcfilter, USB\VID_2C7C&PID_0195

[qcfilter.NT]  
;-----------------------------------------------------------------
; Get the standard stuff from USB.inf
;-----------------------------------------------------------------
Include   = USB.inf
Needs     = Composite.Dev.NT
CopyFiles = qcfilter.NT.Copy

[qcfilter2.NT]  
;-----------------------------------------------------------------
; Get the standard stuff from USB.inf
;-----------------------------------------------------------------
Include   = USB.inf
Needs     = Composite.Dev.NT
CopyFiles = qcfilter2.NT.Copy
AddReg    = qcfilterAddReg2

[qcfilter3.NT]  
;-----------------------------------------------------------------
; Get the standard stuff from USB.inf
;-----------------------------------------------------------------
Include   = USB.inf
Needs     = Composite.Dev.NT
CopyFiles = qcfilter3.NT.Copy
AddReg    = qcfilterAddReg3

[qcfilter4.NT]  
;-----------------------------------------------------------------
; Get the standard stuff from USB.inf
;-----------------------------------------------------------------
Include   = USB.inf
Needs     = Composite.Dev.NT
CopyFiles = qcfilter4.NT.Copy
AddReg    = qcfilterAddReg4

[qcfilterAddReg2]

; Support Muxing
HKR,, QCDeviceMuxEnable, 0x00010001, 0x00000001

; Start Interface
HKR,, QCDeviceStartIf, 0x00010001, 0x00000002

; Number of Interfaces
HKR,, QCDeviceNumIf, 0x00010001, 0x00000001

; Number of Mux Interfaces
HKR,, QCDeviceNumMuxIf, 0x00010001, 0x00000007

[qcfilterAddReg3]

; Support Muxing
HKR,, QCDeviceMuxEnable, 0x00010001, 0x00000001

; Start Interface
HKR,, QCDeviceStartIf, 0x00010001, 0x00000003

; Number of Interfaces
HKR,, QCDeviceNumIf, 0x00010001, 0x00000001

; Number of Mux Interfaces
HKR,, QCDeviceNumMuxIf, 0x00010001, 0x00000007

[qcfilterAddReg4]

; Support Muxing
HKR,, QCDeviceMuxEnable, 0x00010001, 0x00000001

; Start Interface
HKR,, QCDeviceStartIf, 0x00010001, 0x00000004

; Number of Interfaces
HKR,, QCDeviceNumIf, 0x00010001, 0x00000001

; Number of Mux Interfaces
HKR,, QCDeviceNumMuxIf, 0x00010001, 0x00000007

[qcfilter.NT.Copy]
qcusbfilter.sys

[qcfilter2.NT.Copy]
qcusbfilter.sys

[qcfilter3.NT.Copy]
qcusbfilter.sys

[qcfilter4.NT.Copy]
qcusbfilter.sys

[DestinationDirs]
qcfilter.NT.Copy = 12
qcfilter2.NT.Copy = 12
qcfilter3.NT.Copy = 12
qcfilter4.NT.Copy = 12

[qcfilter.NT.HW]
AddReg = LowerFilterAddReg

[qcfilter2.NT.HW]
AddReg = LowerFilterAddReg

[qcfilter3.NT.HW]
AddReg = LowerFilterAddReg

[qcfilter4.NT.HW]
AddReg = LowerFilterAddReg

[LowerFilterAddReg]
HKR,,"LowerFilters",0x00010000,"qcfilter"

;-----------------------------------------------------------------
; Filter Device Filter Service Section
;-----------------------------------------------------------------
[qcfilter.NT.Services]
Include    = USB.inf
Needs      = Composite.Dev.NT.Services
AddService = qcfilter,, filter_Service_Inst 

[qcfilter2.NT.Services]
Include    = USB.inf
Needs      = Composite.Dev.NT.Services
AddService = qcfilter,, filter_Service_Inst 

[qcfilter3.NT.Services]
Include    = USB.inf
Needs      = Composite.Dev.NT.Services
AddService = qcfilter,, filter_Service_Inst 

[qcfilter4.NT.Services]
Include    = USB.inf
Needs      = Composite.Dev.NT.Services
AddService = qcfilter,, filter_Service_Inst 

[filter_Service_Inst]
DisplayName    = %qcfilter.SvcDesc%                            
ServiceType    = 1
StartType      = 3
ErrorControl   = 1
ServiceBinary  = %12%\qcusbfilter.sys                            

[Strings]
QUECTEL                     = "Quectel Incorporated"
QcomSrcDisk                 = "USB Driver Disk"
;AG35
qcfilter.DeviceDesc0435     = "HighSpeed USB Composite Device"
;BG96
qcfilter.DeviceDesc0296     = "HighSpeed USB Composite Device"
;EC21 EC25 EC20 R2.0
qcfilter.DeviceDesc0125     = "HighSpeed USB Composite Device"
qcfilter.DeviceDesc0121     = "HighSpeed USB Composite Device"
;EP06 EM06 EG06
qcfilter.DeviceDesc0306     = "HighSpeed USB Composite Device"
;EG91 EG95
qcfilter.DeviceDesc0191     = "HighSpeed USB Composite Device"
qcfilter.DeviceDesc0195     = "HighSpeed USB Composite Device"

qcfilter.SvcDesc            = "USB Composite Device Filter Driver"
