//-----------------------------------------------------------------------------
//
// INTEL CONFIDENTIAL
// Copyright (2000 - 2015)
// Intel Corporation All Rights Reserved.
//
// The source code contained or described herein and all documents related to
// the source code ("Material") are owned by Intel Corporation or its suppliers
// or licensors. Title to the Material remains with Intel Corporation or its
// suppliers and licensors. The Material contains trade secrets and proprietary
// and confidential information of Intel or its suppliers and licensors. The
// Material is protected by worldwide copyright and trade secret laws and treaty
// provisions. No part of the Material may be used, copied, reproduced, modified,
// published, uploaded, posted, transmitted, distributed, or disclosed in any way
// without Intel?s prior express written permission.
//
// No license under any patent, copyright, trade secret or other intellectual
// property right is granted to or conferred upon you by disclosure or delivery
// of the Materials, either expressly, by implication, inducement, estoppel or
// otherwise. Any license under such intellectual property rights must be express
// and approved by Intel in writing.
//
//-----------------------------------------------------------------------------
[Version]
Signature="$CHICAGO$"
Class=HIDClass
ClassGuid={745a17a0-74d3-11d0-b6fe-00a0c90f57da}
Provider=%INTEL%
CatalogFile=iaPreciseTouch.cat
DriverVer=01/26/2017,1.2.0.83
;PnpLockDown=1 ;Enable this later when we get close to production/inbox

[SourceDisksFiles]
iaPreciseTouch.sys = 99

[SourceDisksNames]
99 = %DISK_NAME%,,,""

[DestinationDirs]
precisetouch.Inst.CopyFunctionDriver = 12

[Manufacturer]
%INTEL%=Intel, NTamd64.10.0

[Intel.NTamd64.10.0]
;Delete the following ??
;%precisetouch.DeviceDesc%    = precisetouch.Inst, PCI\VEN_8086&DEV_9C3B; Do we need this??
;%precisetouch.DeviceDesc%    = precisetouch.Inst, PCI\VEN_8086&DEV_9CBB; Do we need this??
;HECI3 device
;%precisetouch.DeviceDesc%    = precisetouch.Inst.Win7, PCI\VEN_8086&DEV_9D3E ; why is there a Inst.Win7

%precisetouch.DeviceDesc%    = precisetouch.Inst, PCI\VEN_8086&DEV_9D3E
%precisetouch.DeviceDesc%    = precisetouch.Inst, PCI\VEN_8086&DEV_A13E

[precisetouch.Inst.NT]
; Just copy the driver. No neeed to copy other system binaries.
CopyFiles = precisetouch.Inst.CopyFunctionDriver

[precisetouch.Inst.NT.HW]
AddReg = precisetouch.Inst.AddReg
AddReg = precisetouch.MsiParameters.AddReg
DelReg = precisetouch.Inst.DelReg


[precisetouch.Inst.NT.Services]
AddService = IntTouch,0x00000002, precisetouch_Service_Inst

[precisetouch.Inst.AddReg]
HKR,,"UpperFilters",0x00010000,"mshidkmdf"
HKLM,"SYSTEM\CurrentControlSet\Services\IntTouch\Parameters\Config","TouchFolder",0x00000000,"intel"
HKLM,"SYSTEM\CurrentControlSet\Services\IntTouch\Parameters\Config","GraphicsDebugMode",0x00000000,"0x0"
HKLM,"SYSTEM\CurrentControlSet\Services\IntTouch\Parameters\Config","HIDDebugMode",0x00000000,"0x0"
HKLM,"SYSTEM\CurrentControlSet\Services\IntTouch\Parameters\Config","TouchTHQABlobReportID",0x00000000,"0x44"
HKLM,"SYSTEM\CurrentControlSet\Services\IntTouch\Parameters\Config","StylusTHQABlobReportID",0x00000000,"0x45"


[precisetouch.MsiParameters.AddReg]
HKR,Interrupt Management,,0x00000010
HKR,Interrupt Management\MessageSignaledInterruptProperties,,0x00000010
HKR,Interrupt Management\MessageSignaledInterruptProperties,MSISupported,0x00010001,1


[precisetouch.Inst.DelReg]
HKR,,"UpperFilters"
HKLM,"SYSTEM\CurrentControlSet\Services\IntTouch\Parameters\Config","GraphicsDebugMode"
HKLM,"SYSTEM\CurrentControlSet\Services\IntTouch\Parameters\Config","HIDDebugMode"
HKLM,"SYSTEM\CurrentControlSet\Services\IntTouch\Parameters\Config","TouchFolder"
HKLM,"SYSTEM\CurrentControlSet\Services\IntTouch\Parameters\Config","TouchTHQABlobReportID"
HKLM,"SYSTEM\CurrentControlSet\Services\IntTouch\Parameters\Config","StylusTHQABlobReportID"


;===============================================================
;   Sections common to all OS versions
;===============================================================

[precisetouch.Inst.CopyFunctionDriver]
iaPreciseTouch.sys

[precisetouch_Service_Inst]
DisplayName    = %Driver_Service.Desc%
ServiceType    = %SERVICE_KERNEL_DRIVER% 
StartType      = %SERVICE_DEMAND_START% 
ErrorControl   = %SERVICE_ERROR_IGNORE% 
ServiceBinary  = %12%\iaPreciseTouch.sys 

[Strings] 
;  *******Localizable Strings******* 
INTEL         = "Intel Corporation" 
precisetouch.DeviceDesc   = "Intel(R) Precise Touch Device" 
DISK_NAME      = "Intel(R) Precise Touch Installation Disk #1"
Driver_Service.Desc = "Intel(R) Precise Touch Service"

;  *******Non Localizable Strings******* 

SERVICE_BOOT_START     = 0x0 
SERVICE_SYSTEM_START   = 0x1 
SERVICE_AUTO_START     = 0x2 
SERVICE_DEMAND_START   = 0x3 
SERVICE_DISABLED       = 0x4 

SERVICE_KERNEL_DRIVER  = 0x1 
SERVICE_ERROR_IGNORE   = 0x0 
SERVICE_ERROR_NORMAL   = 0x1 
SERVICE_ERROR_SEVERE   = 0x2 
SERVICE_ERROR_CRITICAL = 0x3 

REG_EXPAND_SZ          = 0x00020000 
REG_DWORD              = 0x00010001 
REG_MULTI_SZ           = 0x00010000
REG_BINARY             = 0x00000001
REG_SZ                 = 0x00000000
