;------------------------------------------------------------------------
;
;   Copyright and Disclaimer:
;
;       ---------------------------------------------------------------
;       This software is provided "as is" without warranty of any kind,
;       either expressed or implied, including but not limited to the
;       implied warranties of merchantability and/or fitness for a
;       particular purpose.
;
;       Copyright (c) 2007-2010 Hauppauge Computer Works, Inc.
;       All Rights Reserved.
;       ---------------------------------------------------------------
;
;   Abstract:
;
;       This is the WinTV 23885/7/8 Consumer IR driver inf file.
;
;------------------------------------------------------------------------

[Version]
Signature="$CHICAGO$"
Class=HIDClass
ClassGuid={745a17a0-74d3-11d0-b6fe-00a0c90f57da}
Provider="Hauppauge"
DriverVer=11/06/2013,1.51.31310
CatalogFile=hcw85c64.cat
DriverPackageType=PlugAndPlay
DriverPackageDisplayName="WinTV CIR (885/7/8)"

[Manufacturer]
"Hauppauge"=Hauppauge,NTamd64.6,NTamd64

[DestinationDirs]
DefaultDestDir = 12
IR_CoInstaller_CopyFiles = 11
IR_CoInstallerXP_CopyFiles = 11

[SourceDisksNames.amd64]
1=%p2.InstallDisk64%,,,"Driver85\64bit"


[SourceDisksFiles]
hcw85cir.sys  = 1,,
hcw85cir.dll = 1,,
hcw85wdf_01005.dll = 1,,


;[Hauppauge]
;%HCW85CIR.DeviceDesc%=hcw85cir_DeviceXP, AVSTREAM\HCW85CIR3

[Hauppauge.NTamd64]
%HCW85CIR.DeviceDesc%=hcw85cir_DeviceXP, AVSTREAM\HCW85CIR3

[Hauppauge.NTamd64.6]
%HCW85CIR.DeviceDesc%=hcw85cir_Device, AVSTREAM\HCW85CIR3


[hcw85cir_DeviceXP.NT]
CopyFiles=Drivers_Dir

[hcw85cir_DeviceXP.NT.HW]
AddReg=hcw85cir_Device.NT.AddReg

[hcw85cir_Device.NT]
CopyFiles=Drivers_Dir

[hcw85cir_Device.NT.HW]
AddReg=hcw85cir_Device.NT.AddReg

[hcw85cir_Device.NT.AddReg]                            
HKR,,DeviceCharacteristics,0x10001,0x0100         ; Use same security checks on relative opens
HKR,,Security,,"D:P(A;;GA;;;BA)(A;;GA;;;SY)(A;;GA;;;WD)" ; Allow generic-all access to Built-in administrators, Local system and world 

;; I2C Expander Details
;HKR,"CIRData","i2c_gpio_expander_address", 0x00010001, 0xFF, 0x00, 0x00, 0x00
;HKR,"CIRData","i2c_gpio_expander_bus", 0x00010001, 0xFF, 0x00, 0x00, 0x00
;; Receive IR Details
;HKR,"CIRData","narrow_band_receive_ir_pin", 0x00010001, 0x13, 0x00, 0x00, 0x00
;HKR,"CIRData","wide_band_receive_ir_pin", 0x00010001, 0x13, 0x00, 0x00, 0x00
;HKR,"CIRData","priority_receive_ir_enable_gpio_bit", 0x00010001, 0x0C, 0x00, 0x00, 0x00
;HKR,"CIRData","priority_receive_ir_enable_gpio_bit_value", 0x00010001, 0x00, 0x00, 0x00, 0x00
;; Total no of Transmitter
;HKR,"CIRData","total_number_of_transmitters", 0x00010001, 0x02, 0x00, 0x00, 0x00
;; Transmitter 1 Details
;HKR,"CIRData","transmit_1_ir_pin", 0x00010001, 0x14, 0x00, 0x00, 0x00
;HKR,"CIRData","transmit_1_ir_enable_gpio_bit", 0x00010001, 0x06, 0x00, 0x00, 0x00
;HKR,"CIRData","transmit_1_ir_enable_gpio_bit_value", 0x00010001, 0x00, 0x00, 0x00, 0x00
;; Transmitter 2 Details
;HKR,"CIRData","transmit_2_ir_pin", 0x00010001, 0x14, 0x00, 0x00, 0x00
;HKR,"CIRData","transmit_2_ir_enable_gpio_bit", 0x00010001, 0x06, 0x00, 0x00, 0x00
;HKR,"CIRData","transmit_2_ir_enable_gpio_bit_value", 0x00010001, 0x01, 0x00, 0x00, 0x00
;; Transmit detect details
;HKR,"CIRData","transmit_detect_gpio_bit", 0x00010001, 0x0B, 0x00, 0x00, 0x00
;; Led control details
;HKR,"CIRData","led_gpio_bit", 0x00010001, 0x08, 0x00, 0x00, 0x00
;HKR,"CIRData","led_gpio_on_value", 0x00010001, 0x01, 0x00, 0x00, 0x00


;;;Medford2 - set GPIOs (host based)
HKR,"CIRData_27","i2c_gpio_expander_address", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_27","narrow_band_receive_ir_pin", 0x00010001, 0x13, 0x00, 0x00, 0x00
HKR,"CIRData_27","wide_band_receive_ir_pin", 0x00010001, 0x13, 0x00, 0x00, 0x00
HKR,"CIRData_27","priority_receive_ir_enable_gpio_bit", 0x00010001, 0x2b, 0x00, 0x00, 0x00
HKR,"CIRData_27","priority_receive_ir_enable_gpio_bit_value", 0x00010001, 0x01, 0x00, 0x00, 0x00
HKR,"CIRData_27","total_number_of_transmitters", 0x00010001, 0x02, 0x00, 0x00, 0x00
HKR,"CIRData_27","transmit_1_ir_pin", 0x00010001, 0x14, 0x00, 0x00, 0x00
HKR,"CIRData_27","transmit_1_ir_enable_gpio_bit", 0x00010001, 0x29, 0x00, 0x00, 0x00
HKR,"CIRData_27","transmit_1_ir_enable_gpio_bit_value", 0x00010001, 0x01, 0x00, 0x00, 0x00
HKR,"CIRData_27","transmit_2_ir_pin", 0x00010001, 0x14, 0x00, 0x00, 0x00
HKR,"CIRData_27","transmit_2_ir_enable_gpio_bit", 0x00010001, 0x29, 0x00, 0x00, 0x00
HKR,"CIRData_27","transmit_2_ir_enable_gpio_bit_value", 0x00010001, 0x00, 0x00, 0x00, 0x00
HKR,"CIRData_27","transmit_detect_gpio_bit", 0x00010001, 0x2c, 0x00, 0x00, 0x00
HKR,"CIRData_27","transmit_2_detect_gpio_bit", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_27","led_gpio_bit", 0x00010001, 0x28, 0x00, 0x00, 0x00
HKR,"CIRData_27","led_gpio_on_value", 0x00010001, 0x01, 0x00, 0x00, 0x00
HKR,"CIRData_27","EnableTx2GPIOValue", 0x00010001, 0x00, 0x00, 0x00, 0x00
HKR,"CIRData_27","SenseTx2GPIOValue", 0x00010001, 0x00, 0x00, 0x00, 0x00
HKR,"CIRData_27","transmit_data_polarity", 0x00010001, 0x01, 0x00, 0x00, 0x00

;;;Kingston2 - set GPIOs (no external IR mux)
HKR,"CIRData_28","i2c_gpio_expander_address", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_28","narrow_band_receive_ir_pin", 0x00010001, 0x13, 0x00, 0x00, 0x00
HKR,"CIRData_28","wide_band_receive_ir_pin", 0x00010001, 0x00, 0x00, 0x00, 0x00
HKR,"CIRData_28","priority_receive_ir_enable_gpio_bit", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_28","priority_receive_ir_enable_gpio_bit_value", 0x00010001, 0x01, 0x00, 0x00, 0x00
HKR,"CIRData_28","total_number_of_transmitters", 0x00010001, 0x02, 0x00, 0x00, 0x00
HKR,"CIRData_28","transmit_1_ir_pin", 0x00010001, 0x41, 0x00, 0x00, 0x00
HKR,"CIRData_28","transmit_1_ir_enable_gpio_bit", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_28","transmit_1_ir_enable_gpio_bit_value", 0x00010001, 0x00, 0x00, 0x00, 0x00
HKR,"CIRData_28","transmit_2_ir_pin", 0x00010001, 0x42, 0x00, 0x00, 0x00
HKR,"CIRData_28","transmit_2_ir_enable_gpio_bit", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_28","transmit_2_ir_enable_gpio_bit_value", 0x00010001, 0x00, 0x00, 0x00, 0x00
HKR,"CIRData_28","transmit_detect_gpio_bit", 0x00010001, 0x0b, 0x00, 0x00, 0x00
HKR,"CIRData_28","transmit_2_detect_gpio_bit", 0x00010001, 0x0a, 0x00, 0x00, 0x00
HKR,"CIRData_28","led_gpio_bit", 0x00010001, 0x0f, 0x00, 0x00, 0x00
HKR,"CIRData_28","led_gpio_on_value", 0x00010001, 0x01, 0x00, 0x00, 0x00
HKR,"CIRData_28","EnableTx2GPIOValue", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_28","SenseTx2GPIOValue", 0x00010001, 0xff, 0x00, 0x00, 0x00

;;;Medford2Lite - set GPIOs (host based)
HKR,"CIRData_29","i2c_gpio_expander_address", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_29","narrow_band_receive_ir_pin", 0x00010001, 0x13, 0x00, 0x00, 0x00
HKR,"CIRData_29","wide_band_receive_ir_pin", 0x00010001, 0x13, 0x00, 0x00, 0x00
HKR,"CIRData_29","priority_receive_ir_enable_gpio_bit", 0x00010001, 0x2b, 0x00, 0x00, 0x00
HKR,"CIRData_29","priority_receive_ir_enable_gpio_bit_value", 0x00010001, 0x01, 0x00, 0x00, 0x00
HKR,"CIRData_29","total_number_of_transmitters", 0x00010001, 0x02, 0x00, 0x00, 0x00
HKR,"CIRData_29","transmit_1_ir_pin", 0x00010001, 0x14, 0x00, 0x00, 0x00
HKR,"CIRData_29","transmit_1_ir_enable_gpio_bit", 0x00010001, 0x29, 0x00, 0x00, 0x00
HKR,"CIRData_29","transmit_1_ir_enable_gpio_bit_value", 0x00010001, 0x01, 0x00, 0x00, 0x00
HKR,"CIRData_29","transmit_2_ir_pin", 0x00010001, 0x14, 0x00, 0x00, 0x00
HKR,"CIRData_29","transmit_2_ir_enable_gpio_bit", 0x00010001, 0x29, 0x00, 0x00, 0x00
HKR,"CIRData_29","transmit_2_ir_enable_gpio_bit_value", 0x00010001, 0x00, 0x00, 0x00, 0x00
HKR,"CIRData_29","transmit_detect_gpio_bit", 0x00010001, 0x2c, 0x00, 0x00, 0x00
HKR,"CIRData_29","transmit_2_detect_gpio_bit", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_29","led_gpio_bit", 0x00010001, 0x28, 0x00, 0x00, 0x00
HKR,"CIRData_29","led_gpio_on_value", 0x00010001, 0x01, 0x00, 0x00, 0x00
HKR,"CIRData_29","EnableTx2GPIOValue", 0x00010001, 0x00, 0x00, 0x00, 0x00
HKR,"CIRData_29","SenseTx2GPIOValue", 0x00010001, 0x00, 0x00, 0x00, 0x00
HKR,"CIRData_29","transmit_data_polarity", 0x00010001, 0x01, 0x00, 0x00, 0x00

;;;Medford2Hyb - set GPIOs (host based)
HKR,"CIRData_30","i2c_gpio_expander_address", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_30","narrow_band_receive_ir_pin", 0x00010001, 0x13, 0x00, 0x00, 0x00
HKR,"CIRData_30","wide_band_receive_ir_pin", 0x00010001, 0x13, 0x00, 0x00, 0x00
HKR,"CIRData_30","priority_receive_ir_enable_gpio_bit", 0x00010001, 0x2b, 0x00, 0x00, 0x00
HKR,"CIRData_30","priority_receive_ir_enable_gpio_bit_value", 0x00010001, 0x01, 0x00, 0x00, 0x00
HKR,"CIRData_30","total_number_of_transmitters", 0x00010001, 0x02, 0x00, 0x00, 0x00
HKR,"CIRData_30","transmit_1_ir_pin", 0x00010001, 0x14, 0x00, 0x00, 0x00
HKR,"CIRData_30","transmit_1_ir_enable_gpio_bit", 0x00010001, 0x29, 0x00, 0x00, 0x00
HKR,"CIRData_30","transmit_1_ir_enable_gpio_bit_value", 0x00010001, 0x01, 0x00, 0x00, 0x00
HKR,"CIRData_30","transmit_2_ir_pin", 0x00010001, 0x14, 0x00, 0x00, 0x00
HKR,"CIRData_30","transmit_2_ir_enable_gpio_bit", 0x00010001, 0x29, 0x00, 0x00, 0x00
HKR,"CIRData_30","transmit_2_ir_enable_gpio_bit_value", 0x00010001, 0x00, 0x00, 0x00, 0x00
HKR,"CIRData_30","transmit_detect_gpio_bit", 0x00010001, 0x2c, 0x00, 0x00, 0x00
HKR,"CIRData_30","transmit_2_detect_gpio_bit", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_30","led_gpio_bit", 0x00010001, 0x28, 0x00, 0x00, 0x00
HKR,"CIRData_30","led_gpio_on_value", 0x00010001, 0x01, 0x00, 0x00, 0x00
HKR,"CIRData_30","EnableTx2GPIOValue", 0x00010001, 0x00, 0x00, 0x00, 0x00
HKR,"CIRData_30","SenseTx2GPIOValue", 0x00010001, 0x00, 0x00, 0x00, 0x00
HKR,"CIRData_30","transmit_data_polarity", 0x00010001, 0x01, 0x00, 0x00, 0x00

;;;Chesterfield3 - set GPIOs (no external IR mux)
HKR,"CIRData_31","i2c_gpio_expander_address", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_31","narrow_band_receive_ir_pin", 0x00010001, 0x13, 0x00, 0x00, 0x00
HKR,"CIRData_31","wide_band_receive_ir_pin", 0x00010001, 0x00, 0x00, 0x00, 0x00
HKR,"CIRData_31","priority_receive_ir_enable_gpio_bit", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_31","priority_receive_ir_enable_gpio_bit_value", 0x00010001, 0x01, 0x00, 0x00, 0x00
HKR,"CIRData_31","total_number_of_transmitters", 0x00010001, 0x02, 0x00, 0x00, 0x00
HKR,"CIRData_31","transmit_1_ir_pin", 0x00010001, 0x41, 0x00, 0x00, 0x00
HKR,"CIRData_31","transmit_1_ir_enable_gpio_bit", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_31","transmit_1_ir_enable_gpio_bit_value", 0x00010001, 0x00, 0x00, 0x00, 0x00
HKR,"CIRData_31","transmit_2_ir_pin", 0x00010001, 0x42, 0x00, 0x00, 0x00
HKR,"CIRData_31","transmit_2_ir_enable_gpio_bit", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_31","transmit_2_ir_enable_gpio_bit_value", 0x00010001, 0x00, 0x00, 0x00, 0x00
HKR,"CIRData_31","transmit_detect_gpio_bit", 0x00010001, 0x0b, 0x00, 0x00, 0x00
HKR,"CIRData_31","transmit_2_detect_gpio_bit", 0x00010001, 0x0a, 0x00, 0x00, 0x00
HKR,"CIRData_31","led_gpio_bit", 0x00010001, 0x0f, 0x00, 0x00, 0x00
HKR,"CIRData_31","led_gpio_on_value", 0x00010001, 0x01, 0x00, 0x00, 0x00
HKR,"CIRData_31","EnableTx2GPIOValue", 0x00010001, 0xff, 0x00, 0x00, 0x00
HKR,"CIRData_31","SenseTx2GPIOValue", 0x00010001, 0xff, 0x00, 0x00, 0x00


[Drivers_Dir]
hcw85cir3.sys,hcw85cir.sys

;-------------- Service installation
[hcw85cir_DeviceXP.NT.Services]
AddService = hcw85cir,%SPSVCINST_ASSOCSERVICE%, hcw85cir_Service_Inst

[hcw85cir_Device.NT.Services]
AddService = hcw85cir,%SPSVCINST_ASSOCSERVICE%, hcw85cir_Service_Inst

; -------------- hcw85cir driver install sections
[hcw85cir_Service_Inst]
DisplayName    = %HCW85CIR.SVCDESC%
ServiceType    = 1               ; SERVICE_KERNEL_DRIVER
StartType      = 3               ; SERVICE_DEMAND_START 
ErrorControl   = 1               ; SERVICE_ERROR_NORMAL
ServiceBinary  = %10%\system32\drivers\hcw85cir3.sys
LoadOrderGroup = Extended Base
AddReg         = hcw85cir_Device.NT.AddReg.Services


[hcw85cir_Device.NT.AddReg.Services]
; Active power Key (set to NOCLOBBER)
HKR,"PowerKey","PowerKey",0x00000003,\
   0x2b, 0x2b, 0x80, 0x0f, 0x00, 0x03, 0x0c, \
   0x04, 0x80, 0x0c, 0x00, 0x00, 0xff, 0x00, \
   0x00, 0x00, 0x00

; RC6 power key
HKR,"PowerKey","PowerKeyRC6",0x00000001,\
   0x2b, 0x2b, 0x80, 0x0f, 0x00, 0x03, 0x0c, \
   0x04, 0x80, 0x0c, 0x00, 0x00, 0xff, 0x00, \
   0x00, 0x00, 0x00

; RC5 power key
HKR,"PowerKey","PowerKeyRC5",0x00000001,\
   0x2b, 0x58, 0x00, 0x00, 0x00, 0x02, 0xf0, \
   0x0c, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, \
   0x00, 0x00, 0x00

; NEC power key
HKR,"PowerKey","PowerKeyNEC",0x00000001,\
   0x29, 0x37, 0x45, 0xba, 0x12, 0x80, 0x00, \
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, \
   0x00, 0x00, 0x00

;
;--- hcw85cir_Device Coinstaller installation ------
;
[hcw85cir_DeviceXP.NT.CoInstallers]
AddReg=IR_CoInstallerXP_AddReg
CopyFiles=IR_CoInstallerXP_CopyFiles

[hcw85cir_Device.NT.CoInstallers]
AddReg=IR_CoInstaller_AddReg
CopyFiles=IR_CoInstaller_CopyFiles

[IR_CoInstallerXP_AddReg]
HKR,,CoInstallers32,0x00010000,"hcw85wdf_01005.dll,WdfCoInstaller"

[IR_CoInstaller_AddReg]
HKR,,CoInstallers32,0x00010000,"hcw85wdf_01005.dll,WdfCoInstaller","hcw85cir.dll,IRCoInstaller"

[IR_CoInstallerXP_CopyFiles]
hcw85wdf_01005.dll ;from WinDDK\6000\Redist\Wdf (renamed)

[IR_CoInstaller_CopyFiles]
hcw85cir.dll   ;USB Consumer IR Driver coinstaller for eHome (renamed)
hcw85wdf_01005.dll ;from WinDDK\6000\Redist\Wdf (renamed)

[hcw85cir_DeviceXP.NT.WdfSection]
USE_WDF_DYNAMIC
COMPONENTS = WdfDynam

[hcw85cir_Device.NT.WdfSection]
USE_WDF_DYNAMIC
COMPONENTS = WdfDynam

[hcw85cir_DeviceXP.NT.Wdf]
KmdfService = hcw85cir, hcw85cirwdf_wdfsect

[hcw85cir_Device.NT.Wdf]
KmdfService = hcw85cir, hcw85cirwdf_wdfsect

[hcw85cirwdf_wdfsect]
KmdfLibraryVersion = 1.5



[Strings]
SPSVCINST_ASSOCSERVICE= 0x00000002
HCW85CIR.DeviceDesc = "Hauppauge Consumer Infrared Receiver"
HCW85CIR.SVCDESC    = "Hauppauge Consumer IR 3"

p2.InstallDisk      = "Hauppauge CX23885 Drivers Install Disk"
p2.InstallDisk64    = "Hauppauge CX23885 Drivers Install Disk (64Bit Components)"
p2.InstallDiskWOW   = "Hauppauge CX23885 Drivers Install Disk (WOW64 Components)"


