;
; GlPciSD.inf
;

[Version]
Signature="$WINDOWS NT$"
Class=MTD 
ClassGuid={4d36e970-e325-11ce-bfc1-08002be10318}
Provider=%ManufacturerName%
DriverVer = 05/27/2026,1.2.33.124
PnpLockDown=1
CatalogFile=GlPciSD.cat

[DestinationDirs]
DefaultDestDir = 12
GLPciCardReader.NT.CopyDll = 11

; ================= Class section =====================


[SourceDisksNames]
1 = %DiskName%

[SourceDisksFiles]
GlPciSD.sys = 1
GLCRIcon.dll = 1

;*****************************************
; Install Section
;*****************************************

[Manufacturer]
%ManufacturerName%=Standard,NTamd64

[Standard.NTamd64]
;%DeviceDesc%=GLPciCardReader, PCI\VEN_17A0&DEV_7428
;%DeviceDesc%=GLPciCardReader, PCI\VEN_17A0&DEV_9755
;%DeviceDesc%=GLPciCardReader, PCI\VEN_17A0&DEV_9750
;%DeviceDesc%=GLPciCardReader, PCI\VEN_17A0&DEV_9753
;%DeviceDesc%=GLPciCardReader, PCI\VEN_17A0&DEV_9760
%DeviceDesc%=GLPciCardReader, PCI\VEN_17A0&DEV_9763
%DeviceDesc%=GLPciCardReader, PCI\VEN_17A0&DEV_E763
%DeviceDesc%=GLPciCardReader, PCI\VEN_17A0&DEV_9767
%DeviceDesc%=GLPciCardReader, PCI\VEN_17A0&DEV_9768
%DeviceDesc%=GLPciCardReader, PCI\VEN_17A0&DEV_E767

[GLPciCardReader.NT]
CopyFiles=GLPciCardReader.NT.Copy, GLPciCardReader.NT.CopyDll

[GLPciCardReader.NT.Copy]
GlPciSD.sys

[GLPciCardReader.NT.CopyDll]
GLCRIcon.dll

[GLPciCardReader.NT.HW]
AddReg=GLPciCardReader.NT.AddReg, DMA_Remapping_OptIn_AddReg

[GLPciCardReader.NT.AddReg]
HKR,Interrupt Management,,0x00000010
HKR,Interrupt Management\MessageSignaledInterruptProperties,,0x00000010
HKR,Interrupt Management\MessageSignaledInterruptProperties,MSISupported,0x00010001,1                           
;HKR,,DeviceCharacteristics,0x10001,0x0100         ; Use same security checks on relative opens
;HKR,,Security,,"D:P(A;;GA;;;BA)(A;;GA;;;SY)"      ; Allow generic-all access to Built-in administrators and Local system 

[DMA_Remapping_OptIn_AddReg]
; --- for Windows 11 24H2 and later versions (Per-device) ---
HKR, "DMA Management", "RemappingSupported", 0x00010001, 1


;-------------- Service installation
[GLPciCardReader.NT.Services]
AddService = GlPciSD,%SPSVCINST_ASSOCSERVICE%, GlPciSD_Service_Inst

; -------------- GlPciSD driver install sections
[GlPciSD_Service_Inst]
DisplayName    = %GlPciSD.SVCDESC%
ServiceType    = 1               ; SERVICE_KERNEL_DRIVER
StartType      = 3               ; SERVICE_DEMAND_START
ErrorControl   = 1               ; SERVICE_ERROR_NORMAL
ServiceBinary  = %12%\GlPciSD.sys

AddReg         = DriverAddReg

[DriverAddReg]
; --- for Windows 11 23H2 and earlier (Per-driver) ---
HKR,Parameters,DmaRemappingCompatible,0x00010001,1
;HKR, "Parameters\PnpInterface", "5", 0x00010001, 0x00000001
;HKR, "Parameters", "BusType", 0x00010001, 0x00000000
;HKR, "Parameters\Device", "CreateInitiatorLU", 0x00010001, 0x00000001

[GLPciCardReader.NT.Wdf]
KmdfService =  GlPciSD, GlPciSD_wdfsect
[GlPciSD_wdfsect]
KmdfLibraryVersion = 1.15

[Strings]
SPSVCINST_ASSOCSERVICE= 0x00000002
ManufacturerName="Genesys Logic" 
ClassName="MTD" 
DiskName = "GlPciSD Installation Disk"
DeviceDesc = "Genesys Logic PCIE card reader device"
GlPciSD.SVCDESC = "Genesys Logic PCIE card reader Service"
