;
; NxpNfpProvider.inf
; Copyright (c), NXP Semiconductors
;

[Version]
Signature="$WINDOWS NT$"
Class=Proximity
ClassGuid={5630831C-06C9-4856-B327-F5D32586E060}
Provider=%NXP%
CatalogFile=NxpNfpProvider.cat
DriverVer=03/19/2015,8.0.1.0

[Manufacturer]
%NXPWUDF%=Standard,NTx86,NTAMD64

[Standard.NTx86]
%NxpNfpProviderName%=NxpNfpProvider_Install,ACPI\NXP1000
%NxpNfpProviderName%=NxpNfpProvider_Install,ACPI\NXP1001
%NxpNfpProviderName%=NxpNfpProvider_Install,ACPI\NXP1002
%NxpNfpProviderName%=NxpNfpProvider_Install,ACPI\NXP1003
%NxpNfpProviderName%=NxpNfpProvider_Install,ACPI\NXP7471
%NxpNfpProviderName%=NxpNfpProvider_Install,{55BC022C-955B-4D87-A88D-D3E68CBEB2F4}\CT_27B961DB-3057-49BB-BD0D-ACA9FD8FF697


[Standard.NTAMD64]
%NxpNfpProviderName%=NxpNfpProvider_Install,ACPI\NXP1000
%NxpNfpProviderName%=NxpNfpProvider_Install,ACPI\NXP1001
%NxpNfpProviderName%=NxpNfpProvider_Install,ACPI\NXP1002
%NxpNfpProviderName%=NxpNfpProvider_Install,ACPI\NXP1003
%NxpNfpProviderName%=NxpNfpProvider_Install,ACPI\NXP7471
%NxpNfpProviderName%=NxpNfpProvider_Install,{55BC022C-955B-4D87-A88D-D3E68CBEB2F4}\CT_27B961DB-3057-49BB-BD0D-ACA9FD8FF697


[SourceDisksFiles]
NxpNfpProvider.dll=1
NxpNfcRM.dll=1
WudfUpdate_01011.dll=1
libpn547_fw.dll=1

[SourceDisksNames]
1 = %MediaDescription%


; =================== WUDF NxpNfpProvider Test Driver ==================================

[NxpNfpProvider_Install]
CopyFiles=UMDFDriverCopy, NG_FW_DLL.CopyFiles, RMComServer.CopyFiles
AddReg=NxpNfpProviderRadioManager_AddReg
AddReg=NxpNfpProviderProximityCustomValuesRegister

[NxpNfpProvider_Install.hw]
AddReg=NxpNfpProvider_AddReg

[NxpNfpProvider_Install.Interfaces]
AddInterface={FB3842CD-9E2A-4F83-8FCC-4B0761139AE9}, , NxpNfpProvider_AddInterface

[NxpNfpProvider_Install.Services]
AddService=WUDFRd,0x000001fa,WUDFRD_ServiceInstall

[NxpNfpProvider_Install.CoInstallers]
AddReg = NxpNfpProvider_Install.CoInstallers_AddReg
CopyFiles = CoInstallers_CopyFiles

[NxpNfpProvider_Install.CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,"WudfUpdate_01011.dll"

[CoInstallers_CopyFiles]
;destination-file-name[,[source-file-name][,[unused][,flag]]]
WudfUpdate_01011.dll, , , 0x00000010

[CoInstallers_CopyFiles.Security]
"D:P(A;;GA;;;BA)(A;;GA;;;SY)"

[NxpNfpProvider_Install.Wdf]
UmdfService                = NxpNfpProvider, NxpNfpProvider_Driver_Install
UmdfServiceOrder           = NxpNfpProvider
UmdfDispatcher             = FileHandle
UmdfHostProcessSharing     = ProcessSharingDisabled
UmdfDirectHardwareAccess=AllowDirectHardwareAccess

[NxpNfpProvider_AddReg]
;Policy = 3 - ExpectSurpriseRemoval
HKR,,"RemovalPolicy",0x00010001,3 

HKR,"NxpNfpProvider", "NfcRadioState",      0x00010001, 0
HKR,"NxpNfpProvider", "IdleTimeOut",        0x00010001, 1
HKR,"NxpNfpProvider", "PollDevInfo",        0x00010001, 0x23F
HKR,"NxpNfpProvider", "NfcIP_Mode",         0x00010001, 0xE
HKR,"NxpNfpProvider", "Duration",           0x00010001, 0x493E0
HKR,"NxpNfpProvider", "LLCPConfigParams",   0x00000001, 00,04,64,5
HKR,"NxpNfpProvider", "RfConfigData",       0x00000001, 00
HKR,"NxpNfpProvider", "EEPROMConfigBlob",   0x00000001, A0, 05, 01, 10, A0, 40, 01, 01, A0, 44, 01, 00
HKR,"NxpNfpProvider", "LpcI2cAddress",      0x00010001, 0x28
HKR,"NxpNfpProvider", "ClockConfigParam",   0x00010001, 00
HKR,"NxpNfpProvider", "RfSessionMgmt",      0x00010001, 1
HKR,"NxpNfpProvider", "KeepRfData",         0x00010001, 1
HKR,"NxpNfpProvider", "EnableDelayedPoll",  0x00010001, 0x0
HKR,"NxpNfpProvider", "PollDelayTime",      0x00010001, 0x32
HKR,"NxpNfpProvider", "RF_OffTime",         0x00010001, 0x32
HKLM,"SYSTEM\CurrentControlSet\Control\RadioManagement\{BA0CCA99-A7A1-415C-9E5B-25C0A99DDBC3}",,,"NFC Radio Manager"
HKLM,"SYSTEM\CurrentControlSet\Control\RadioManagement\Misc\NfcRadioManager\NfcRadio1","RadioState",0x00010001,0
HKLM,"SYSTEM\CurrentControlSet\Control\RadioManagement\Misc\NfcRadioManager\NfcRadio1","Name",,"NFC"
HKLM,"SYSTEM\CurrentControlSet\Control\RadioManagement\Misc\NfcRadioManager\NfcRadio1","IsMultiComm",0x00010001,0

[NxpNfpProviderProximityCustomValuesRegister]
HKLM,"SYSTEM\CurrentControlSet\Proximity\","Dummy",0x00000010,0
HKLM,"SYSTEM\CurrentControlSet\Proximity\","EEPROMConfigBlobRegisters",0x00000003, A0, 40, A0, 41, A0, 43, A0, 60, A0, 12, A0, 42

[NxpNfpProviderProximityCustomValuesRegister.Security]
"D:P(A;OICI;GA;;;LS)(A;;GA;;;BA)(A;;GA;;;SY)"

[NxpNfpProviderRadioManager_AddReg]
HKLM,SOFTWARE\Classes\CLSID\{BA0CCA99-A7A1-415C-9E5B-25C0A99DDBC3},,,"NFC Radio Manager"
HKLM,SOFTWARE\Classes\CLSID\{BA0CCA99-A7A1-415C-9E5B-25C0A99DDBC3}\InProcServer32,,0x00020000,"%%SystemRoot%%\system32\NxpNfcRM.dll"
HKLM,SOFTWARE\Classes\CLSID\{BA0CCA99-A7A1-415C-9E5B-25C0A99DDBC3}\InprocServer32,ThreadingModel,,Both

[NxpNfpProvider_AddInterface]
AddProperty=NxpNfpProvider_AddInterface_AddProperty

[NxpNfpProvider_AddInterface_AddProperty]
{FB3842CD-9E2A-4F83-8FCC-4B0761139AE9}, 2, 0x2012, , "StandardNfc"

[WUDFRD_ServiceInstall]
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%12%\WUDFRd.sys

[NxpNfpProvider_Driver_Install]
UmdfLibraryVersion=1.11.0
DriverCLSID="{278F44F0-FF5C-4FE3-BF20-F8AA158EA7BC}"
ServiceBinary=%12%\UMDF\NxpNfpProvider.dll

[DestinationDirs]
UMDFDriverCopy=12,UMDF
RMCOmServer.Copyfiles=11
NG_FW_DLL.CopyFiles=11

[NG_FW_DLL.CopyFiles]
libpn547_fw.dll

[UMDFDriverCopy]
NxpNfpProvider.dll

[RMComServer.CopyFiles]
NxpNfcRM.dll

; =================== Generic ==================================

[Strings]
NXP="NXP Semiconductors"
NXPWUDF="NXP Semiconductors(Proximity)"
MediaDescription="NXP NearField Proximity Provider Installation Media"
NxpNfpProviderName="NXP NearFieldProximity Provider"
