;/*++
;
;Copyright 2022 ADVANCED MICRO DEVICES, INC.  All Rights Reserved.
;
;   AMD is granting You permission to use this software and documentation (if
;   any) (collectively, the "Software") pursuant to the terms and conditions of
;   the Software License Agreement included with the Software. If You do not have
;   a copy of the Software License Agreement, contact Your AMD representative for
;   a copy.
;
;Module Name:
;
;    amdusb4cm.INF
;
;Abstract:
;    INF file for the AMD USB4 Controller driver.
;
;--*/

[Version]
Signature="$WINDOWS NT$"
Class       = System
ClassGuid   = {4D36E97D-E325-11CE-BFC1-08002BE10318}
Provider    = %ProviderString%
CatalogFile = amdusb4cm.cat
DriverVer = 03/30/2022,1.0.0.19
PnpLockdown=1

[DestinationDirs]
DefaultDestDir = 12 


; ================= Device Install section =====================

[ControlFlags]
ExcludeFromSelect=*

[Manufacturer]
%ManufacturerString%=amd,NTamd64

[SourceDisksFiles]
amdusb4cm.sys=1

[SourceDisksNames]
1=%DISK_NAME%,

[amd.NTamd64]
; DisplayName           Section           DeviceId
; -----------           -------           --------
%AMDUSB4CM.DRVDESC%=      amdusb4cm_Inst,     PCI\VEN_1022&DEV_162E
%AMDUSB4CM.DRVDESC%=      amdusb4cm_Inst,     PCI\VEN_1022&DEV_162F

[amdusb4cm_Inst.NT]
CopyFiles=amdusb4cm.CopyFiles

[amdusb4cm.CopyFiles]
amdusb4cm.sys

[amdusb4cm_Inst.NT.Services]
AddService=amdusb4cm,0x000001fa,amdusb4cm_Service 

[amdusb4cm_Inst.NT.HW]
AddReg = MSI.reg
AddReg = Security.reg
AddReg = PreOSWorkAround.reg

[amdusb4cm_Service]
DisplayName    = %amdusb4cm.SVCDESC%                            
ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
StartType      = 3                  ; SERVICE_DEMAND_START
ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary  = %12%\amdusb4cm.sys
LoadOrderGroup = Extended Base
AddReg         = Usb4BusDrv_Service_Events_AddReg                            

[amdusb4cm_Inst.NT.Wdf]
KmdfService = amdusb4cm, amdusb4cm_wdfsect

[amdusb4cm_wdfsect]
KmdfLibraryVersion = 1.19

[Usb4BusDrv_Service_Events_AddReg]
HKR, Parameters, DmaRemappingCompatible, 0x00010001, 1
HKR,, Universal, 0x00010001, 0
HKR, Parameters, PowerPolicyIdleTimeoutType, 0x00010001, 2
HKR, Parameters, InterDomainConnectionShortcutEnabled, 0x00010001, 1
HKR,"WDF","WdfDirectedPowerTransitionEnable",0x00010001,0

[PreOSWorkAround.reg]
HKR,PreOSWorkAround,"PreOsCmWorkAroundEnable",0x00010001,0

[MSI.reg]
HKR, "Interrupt Management",                                      0x00000010
HKR, "Interrupt Management\MessageSignaledInterruptProperties",   0x00000010
HKR, "Interrupt Management\MessageSignaledInterruptProperties",   MSISupported,        0x00010001, 1
HKR, "Interrupt Management\MessageSignaledInterruptProperties",   MessageNumberLimit,  0x00010001, 2

[Security.reg]
HKR,,DeviceCharacteristics,0x10001,0x100
HKR,,Security,,"D:P(A;;GA;;;SY)(A;;GA;;;BA)(A;;GA;;;WD)"

[Strings]
ProviderString     = "Advanced Micro Devices Inc."
ManufacturerString = "Advanced Micro Devices Inc."
amdusb4cm.SVCDESC = "Driver Service for AMD USB4 Host Router"
amdusb4cm.DRVDESC = "AMD USB4 Host Router"
DISK_NAME = "AMD USB4 Host Router Install Disk"
