;/*++
;
;INTEL CONFIDENTIAL
;
;Copyright (C) 2018-2021 Intel Corporation
;
;This software and the related documents are Intel copyrighted materials, and
;your use of them is governed by the express license under which they were 
;provided to you ("License"). Unless the License provides otherwise, you may 
;not use, modify, copy, publish, distribute, disclose or transmit this software
;or the related documents without Intel's prior written permission. This 
;software and the related documents are provided as is, with no express or
;implied warranties, other than those that are expressly stated in the License.
;
;
;Module Name:
;
;    intcpmt.inf
;
;Abstract:
;
;    INF file for installing Intel(R) Platform Monitoring Technology driver
;
;--*/

[Version]
Signature="$WINDOWS NT$"
Class=System
ClassGuid={4d36e97d-e325-11ce-bfc1-08002be10318}
Provider=%ManufacturerString%
PnpLockdown=1
CatalogFile=intcpmt.cat
DriverVer = 07/12/2024,5.2.3.4

[ControlFlags]
ExcludeFromSelect=*

[DestinationDirs]
DefaultDestDir = 13

[SourceDisksNames]
1 = %DiskId1%,,,""

[SourceDisksFiles]
intcpmt.sys = 1,,

[Manufacturer]
%ManufacturerString%=Standard,NTamd64.10.0...16299

[Standard.NTamd64.10.0...16299]

;
; Used for DEVELOPMENT ONLY
;
; DisplayName       Section         DeviceId
; -----------       -------         --------

%INTCPMT.DRVDESC% = LNLPMT_Device,      PCI\VEN_8086&DEV_647D   ; Lunar Lake CPU PMT



;
; LNL CPU PCIe PMT Device Install
;

[LNLPMT_Device]
CopyFiles = INTCPMT_CopyFiles

[LNLPMT_Device.HW]
Include=pci.inf
Needs=PciIoSpaceNotRequired.HW
AddReg=pcie_addreg,  msi_addreg

[LNLPMT_Device.Services]
AddService=intcpmt,0x00000002,INTCPMT_Service


;
; Common section
;

[pcie_addreg]
HKR,,PmtDeviceType,0x00010001,0x1                          ; 0x1=PCIe, 0x2=OOBMSM PCIe, 0x4=ACPI
HKR,,DeviceFeatures,0x00010001,0xA4                        ; Enable features (Legacy Telemetry, New Telemetry & Sampler) 

[msi_addreg]
HKR,Interrupt Management,,0x00000010
HKR,Interrupt Management\MessageSignaledInterruptProperties,,0x00000010
HKR,Interrupt Management\MessageSignaledInterruptProperties,MessageNumberLimit,0x00010001,1


[INTCPMT_CopyFiles]
intcpmt.sys

[INTCPMT_Service]
DisplayName    = %ServiceDesc%                            
ServiceType    = 1                     ; SERVICE_KERNEL_DRIVER
StartType      = 0                     ; SERVICE_BOOT_START
ErrorControl   = 1                     ; SERVICE_ERROR_NORMAL
ServiceBinary  = %13%\intcpmt.sys                            

[Strings]
ManufacturerString = "Intel(R) Platform Monitoring Technology (PMT) Device"
ServiceDesc        = "Intel(R) Platform Monitoring Technology (PMT) Service"
INTCPMT.DRVDESC    = "Intel(R) Platform Monitoring Technology (PMT) Driver"
DiskId1            = "Intel(R) Platform Monitoring Technology (PMT) Install Disk"


