;----------------------------------------------------------------------------
; SynHID.inf
;
; Installs Synaptics USB filter driver.
; Copyright (c) 1996-2016 Synaptics Incorporated.
;----------------------------------------------------------------------------

[Version]
Signature="$Windows NT$"
Class=HIDClass
ClassGUID={745a17a0-74d3-11d0-b6fe-00a0c90f57da}
Provider=%Provider%
CatalogFile=SynTP.cat
DriverVer=01/28/2016, 19.2.11.0

;----------------------------------------------------------------------------
; Manufacturer Sections
;----------------------------------------------------------------------------

[Manufacturer]
%SynMfg% = SynMfg, NTx86, NTamd64; (Standard types)

[SynMfg.NTx86]
; No support

[SynMfg.NTamd64]

%USB.SynDeviceDesc%                   = SynHidUsb_Inst, USB\Vid_1532&Pid_002B&MI_00
%USB.SynDeviceDesc%                   = SynHidUsb_Inst, USB\Vid_1532&Pid_0114&MI_00
%USB.SynDeviceDesc%                   = SynHidUsb_Inst, USB\Vid_1532&Pid_0116&MI_00
%USB.SynDeviceDesc%                   = SynHidUsb_Inst, USB\Vid_1532&Pid_0117&MI_00

[ControlFlags]
ExcludeFromSelect=*

;----------------------------------------------------------------------------
; Install Sections
;----------------------------------------------------------------------------

[SourceDisksNames]
1=%DiskName%,,

[SourceDisksFiles]
SynTP.sys = 1
WdfCoInstaller01011.dll = 1

[DestinationDirs]
DefaultDestDir = 12 ; Drivers directory
CopyFiles_Drivers = 12 ; Drivers directory
CopyFiles_CoInstaller = 11 ; System directory

; Drivers directory
[CopyFiles_Drivers]
SynTP.sys,,,0x00000001

[CopyFiles_CoInstaller]
WdfCoInstaller01011.dll

;----------------------------------------------------------------------------
; Service Installation Sections
;----------------------------------------------------------------------------

[SynTP_Service_Inst]
DisplayName    = %SynTP.SvcDesc%
ServiceType    = %SERVICE_KERNEL_DRIVER%
StartType      = %SERVICE_DEMAND_START%
ErrorControl   = %SERVICE_ERROR_NORMAL%
ServiceBinary  = %12%\SynTP.sys
LoadOrderGroup = extended base

;----------------------------------------------------------------------------
; USB TouchPad
;----------------------------------------------------------------------------
[SynHidUsb_Inst]
include = Input.inf
needs = HID_Inst.nt
CopyFiles = CopyFiles_Drivers

[SynHidUsb_Inst.Services]
include = Input.inf
needs = HID_Inst.NT.Services
AddService = SynTP,,SynTP_Service_Inst

[SynHidUsb_Inst.HW]
AddReg = USB_AddReg.HW, USB_Razer_AddReg.HW

[USB_Razer_AddReg.HW]
HKR,,ReadVendorRequest,0x00010001,1
HKR,,req00$cmd0000,0x00000001,00,00,0A,07,00,02,A1,00
HKR,,req00$cmd0001,0x00000001,00,00,30,3D,1D,C1,01,00
HKR,,req00$cmd0002,0x00000001,00,00,00,32,00,00,02,00
HKR,,req00$cmd0003,0x00000001,01,00,00,00,00,00,00,00
HKR,,req00$cmd0004,0x00000001,01,00,00,00,00,00,00,00
HKR,,reqF8$cmdC600,0x00000001,00,00,0A,07,00,02,A1,00

[USB_AddReg.HW]
; Install filter driver below hidusb.
HKR,,"LowerFilters",0x00010000,"SynTP"
HKR,,SynPortType,0x00010001,3
HKR,,SelectiveSuspendEnabled,0x00010001,0

; WDF Coinstaller installation
[SynHidUsb_Inst.CoInstallers]
AddReg = SynHidUsb_Inst.CoInstaller_AddReg
CopyFiles = CopyFiles_CoInstaller

[SynHidUsb_Inst.CoInstaller_AddReg]
HKR,,CoInstallers32,0x00010000,"WdfCoInstaller01011.dll,WdfCoInstaller"

[SynHidUsb_Inst.Wdf]
KmdfService = SynTP, SynTP_WdfSect

[SynTP_WdfSect]
KmdfLibraryVersion = 1.11

;----------------------------------------------------------------------------
; User visible strings
;----------------------------------------------------------------------------

[Strings]
Provider = "Synaptics"

SynMfg = "Synaptics"
DiskName = "Synaptics Driver Installation Disk"

; Driver Information Entries
DriverMfgr="Synaptics"
DriverVersionID="19.2.11"
DriverOEM="Synaptics"
DriverFamily="Mouse"
DriverProduct="USB HID Device"
DriverDescription="Synaptics USB HID Device Driver"
DriverOEMVersion="19.2.11"
BaseDriverFileName="SynTP.sys"
BaseDriverFileVersion="19.2.11"

; Device Names

USB.SynDeviceDesc = "Synaptics USB Human Interface Device"
USB_Comp.SynDeviceDesc = "Synaptics Composite USB Human Interface Device"

USB.SynTouchPadDeviceDesc = "Synaptics USB TouchPad"
USB.SynIntegratedTouchPadDeviceDesc = "Synaptics Integrated USB TouchPad"
CPad.SynDeviceDesc = "Synaptics cPad"
TouchScreen.SynDeviceDesc = "Synaptics TouchScreen"
USB.SynStykDeviceDesc = "Synaptics USB Styk"
USB.SynWheelPadDeviceDesc = "Synaptics USB WheelPad"
USB.SynCompositeTouchPadDeviceDesc = "Synaptics Composite USB TouchPad"
USB.SynCompositeTouchStykDeviceDesc = "Synaptics Composite USB TouchStyk"
;HID.SynMouseDevice = "Synaptics HID-compliant mouse"

; DisplayPad (pre-release test version)
DisplayPad.SynDeviceDesc = "Synaptics DisplayPad"
; Wireless TouchPad (pre-release test version)
WirelessPad.SynDeviceDesc = "Synaptics Wireless TouchPad"

; Service Names

SynTP.SvcDesc = "Synaptics Pointing Device Driver"

; Substitutable parameters

SPSVCINST_TAGTOFRONT  = 0x00000001
SPSVCINST_ASSOCSERVICE= 0x00000002
SERVICE_KERNEL_DRIVER = 1
SERVICE_BOOT_START    = 0
SERVICE_SYSTEM_START  = 1
SERVICE_AUTO_START    = 2
SERVICE_DEMAND_START  = 3
SERVICE_ERROR_NORMAL  = 1
SERVICE_ERROR_IGNORE  = 0
REG_EXPAND_SZ         = 0x00020000
REG_DWORD             = 0x00010001
REG_SZ                = 0x00000000
