;/*++
;
;Copyright (c) 2019-2021 Red Hat Inc.
;
;
;Module Name:
;    viofs.inf
;
;Abstract:
;
;Installation Notes:
;    Using Devcon: Type "devcon install viofs.inf PCI\VEN_1AF4&DEV_105A&SUBSYS_11001AF4&REV_01" to install
;
;--*/

[Version]
Signature       = "$WINDOWS NT$"
Class           = System
ClassGuid       = {4d36e97d-e325-11ce-bfc1-08002be10318}
Provider        = %VENDOR%
CatalogFile     = viofs.cat
PnpLockdown     = 1
DriverVer = 08/18/2022,62.91.104.22500

[DestinationDirs]
DefaultDestDir = 12
VirtioFs_Wdf_CoInstaller_CopyFiles = 11

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

[SourceDisksFiles]
viofs.sys = 1,,
WdfCoInstaller01011.dll = 1 ; make sure the number matches with SourceDisksNames

; ---------------
; Install Section
; ---------------

[Manufacturer]
%VENDOR% = Standard,NTamd64.6.2

[Standard.NTamd64.6.2]
%VirtioFs.DeviceDesc% = VirtioFs_Device, PCI\VEN_1AF4&DEV_105A&SUBSYS_11001AF4&REV_01, PCI\VEN_1AF4&DEV_105A

[VirtioFs_Device.NT]
CopyFiles = VirtioFs_CopyFiles

[VirtioFs_Device.NT.HW]
AddReg = VirtioFs_AddReg

[VirtioFs_CopyFiles]
viofs.sys

[VirtioFs_AddReg]
HKR,Interrupt Management,,0x00000010
HKR,Interrupt Management\MessageSignaledInterruptProperties,,0x00000010
HKR,Interrupt Management\MessageSignaledInterruptProperties,MSISupported,0x00010001,1
HKR,Interrupt Management\MessageSignaledInterruptProperties,MessageNumberLimit,0x00010001,2

; --------------------
; Service Installation
; --------------------

[VirtioFs_Device.NT.Services]
AddService = VirtioFsDrv,0x00000002,VirtioFs_Service_Install

[VirtioFs_Service_Install]
DisplayName    = %VirtioFs.Service%
ServiceType    = 1               ; SERVICE_KERNEL_DRIVER
StartType      = 3               ; SERVICE_DEMAND_START
ErrorControl   = 1               ; SERVICE_ERROR_NORMAL
ServiceBinary  = %12%\viofs.sys
LoadOrderGroup = Extended Base

; -------------------------------------
; WDF & Device CoInstaller Installation
; -------------------------------------

[VirtioFs_Device.NT.CoInstallers]
AddReg=VirtioFs_Wdf_CoInstaller_AddReg
CopyFiles=VirtioFs_Wdf_CoInstaller_CopyFiles

[VirtioFs_Wdf_CoInstaller_AddReg]
HKR,,CoInstallers32,0x00010000, \
    "WdfCoInstaller01011.dll,WdfCoInstaller"

[VirtioFs_Wdf_CoInstaller_CopyFiles]
WdfCoInstaller01011.dll

[VirtioFs_Device.NT.Wdf]
KmdfService = VirtioFsDrv, VirtioFs_wdfsect

[VirtioFs_wdfsect]
KmdfLibraryVersion = 1.11

[Strings]
VENDOR              = "Red Hat, Inc."
DiskName            = "VirtIO FS Installation Disk"
VirtioFs.DeviceDesc = "VirtIO FS Device"
VirtioFs.Service    = "VirtIO FS Driver"