;/*++ ; ;Copyright (c) 2010 Chelsio Communications Inc. All rights Reserved ; ;Module Name: ; ; cht4vx64.inf ; ;Abstract: ; INF file for installing Chelsio T4 bus enumerator driver ; ;--*/ [Version] Signature = "$WINDOWS NT$" Class = System ClassGuid = {4D36E97D-E325-11CE-BFC1-08002BE10318} Provider = %MSFT% DriverVer = 05/14/2013,4.4.13.0 ; ; Chelsio T4 device enumerator Install Section ; [Manufacturer] %chelsio%=Chelsio,NTamd64.6.3 [Chelsio] [Chelsio.NTamd64.6.3] ; ; This is the available Chelsio adapter PnP info. ; %cht4vbd.FPGA%=cht4vbd_2port, PCI\VEN_1425&DEV_A000&SUBSYS_00001425 %cht4vbd.T440DBG%=cht4vbd_4port, PCI\VEN_1425&DEV_4400&SUBSYS_00001425 %cht4vbd.T420CR%=cht4vbd_2port, PCI\VEN_1425&DEV_4401&SUBSYS_00001425 %cht4vbd.T422CR%=cht4vbd_4port1gc, PCI\VEN_1425&DEV_4402&SUBSYS_00001425 %cht4vbd.T440CR%=cht4vbd_4port, PCI\VEN_1425&DEV_4403&SUBSYS_00001425 %cht4vbd.T420BCH%=cht4vbd_2port, PCI\VEN_1425&DEV_4404&SUBSYS_00001425 %cht4vbd.T440BCH%=cht4vbd_4port, PCI\VEN_1425&DEV_4405&SUBSYS_00001425 %cht4vbd.T440CH%=cht4vbd_4port, PCI\VEN_1425&DEV_4406&SUBSYS_00001425 %cht4vbd.T420SO%=cht4vbd_2port, PCI\VEN_1425&DEV_4407&SUBSYS_00001425 %cht4vbd.T420CX%=cht4vbd_2port, PCI\VEN_1425&DEV_4408&SUBSYS_00001425 %cht4vbd.T420BT%=cht4vbd_2port, PCI\VEN_1425&DEV_4409&SUBSYS_00001425 %cht4vbd.T404BT%=cht4vbd_4port1g, PCI\VEN_1425&DEV_440A&SUBSYS_00001425 %cht4vbd.B420%=cht4vbd_2port, PCI\VEN_1425&DEV_440B&SUBSYS_00001425 %cht4vbd.B404%=cht4vbd_4port1g, PCI\VEN_1425&DEV_440C&SUBSYS_00001425 %cht4vbd.T480CR%=cht4vbd_4port, PCI\VEN_1425&DEV_440D&SUBSYS_00001425 %cht4vbd.T440LPCR%=cht4vbd_4port, PCI\VEN_1425&DEV_440E&SUBSYS_00001425 %cht4vbd.T420QM%=cht4vbd_2port, PCI\VEN_1425&DEV_4485&SUBSYS_00001425 [cht4vbd_2port.hw] AddReg=msix.Addreg [cht4vbd_4port.hw] AddReg=msix.Addreg [cht4vbd_4port1g.hw] AddReg=msix.Addreg [cht4vbd_4port1gc.hw] AddReg=msix.Addreg ; ; Registry definitions for a 2 port adapter ; [cht4vbd_2port] CopyFiles=copy_driver_file CopyINF=cht4vx64.inf AddReg=cht4vbd.AddReg AddReg=nic0.reg,nic1.reg,vmcount.reg AddReg=ports2.reg ; ; Registry definitions for a 4 port adapter ; [cht4vbd_4port] CopyFiles=copy_driver_file CopyINF=cht4vx64.inf AddReg=cht4vbd.AddReg AddReg=nic0.reg,nic1.reg,nic2.reg,nic3.reg,vmcount.reg AddReg=ports4.reg ; ; Registry definitions for a 4 port 1G adapter ; [cht4vbd_4port1g] CopyFiles=copy_driver_file CopyINF=cht4vx64.inf AddReg=cht4vbd.AddReg AddReg=nic0.reg,nic1.reg,nic2.reg,nic3.reg,vmcount.reg AddReg=ports4.reg AddReg=ports4speed.reg ; Registry definitions for a 4 port 10G-1G Combo adapter ; [cht4vbd_4port1gc] CopyFiles=copy_driver_file CopyINF=cht4vx64.inf AddReg=cht4vbd.AddReg AddReg=nic0.reg,nic1.reg,nic2.reg,nic3.reg,vmcount.reg AddReg=ports4.reg AddReg=ports2speed.reg [cht4vbd.AddReg] 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 HKR,,EnumPropPages32,,"NetCfgx.dll, NetPropPageProvider" HKR,,ForceHardwareInit, 0, 0 HKR,,UseBuiltInFirmware, 0, 1 ; ; Nic function list ; [nic0.reg] HKR,,nic0, 0, 1 HKR,Ndi\params\nic0, ParamDesc, 0, "Nic Port 0" HKR,Ndi\params\nic0, default, 0, "1" HKR,Ndi\params\nic0, type, 0, "enum" HKR,Ndi\params\nic0\enum, "0", 0, "Disabled" HKR,Ndi\params\nic0\enum, "1", 0, "Enabled" [nic1.reg] HKR,,nic1, 0, 1 HKR,Ndi\params\nic1, ParamDesc, 0, "Nic Port 1" HKR,Ndi\params\nic1, default, 0, "0" HKR,Ndi\params\nic1, type, 0, "enum" HKR,Ndi\params\nic1\enum, "0", 0, "Disabled" HKR,Ndi\params\nic1\enum, "1", 0, "Enabled" [nic2.reg] HKR,,nic2, 0, 1 HKR,Ndi\params\nic2, ParamDesc, 0, "Nic Port 2" HKR,Ndi\params\nic2, default, 0, "0" HKR,Ndi\params\nic2, type, 0, "enum" HKR,Ndi\params\nic2\enum, "0", 0, "Disabled" HKR,Ndi\params\nic2\enum, "1", 0, "Enabled" [nic3.reg] HKR,,nic3, 0, 1 HKR,Ndi\params\nic3, ParamDesc, 0, "Nic Port 3" HKR,Ndi\params\nic3, default, 0, "0" HKR,Ndi\params\nic3, type, 0, "enum" HKR,Ndi\params\nic3\enum, "0", 0, "Disabled" HKR,Ndi\params\nic3\enum, "1", 0, "Enabled" ; ; Max VMs ; [vmcount.reg] HKR,,maxvms, 0, 7 HKR,Ndi\params\maxvms, ParamDesc, 0, "Max VMQueues" HKR,Ndi\params\maxvms, default, 0, "7" HKR,Ndi\params\maxvms, min, 0, "0" HKR,Ndi\params\maxvms, max, 0, "16" HKR,Ndi\params\maxvms, step, 0, "1" HKR,Ndi\params\maxvms, Base, 0, "10" HKR,Ndi\params\maxvms, type, 0, "long" ; ; Number of ports ; [ports2.reg] HKR,,numports,0,2 [ports4.reg] HKR,,numports,0,4 ; ; Speed setting for 2 port 1G adapter ; [ports2speed.reg] HKR,,port2speed, 0, 0 HKR,Ndi\params\port2speed, ParamDesc, 0, "Port 2 Speed & Duplex" HKR,Ndi\params\port2speed, default, 0, "0" HKR,Ndi\params\port2speed, type, 0, "enum" HKR,Ndi\params\port2speed\enum, "0", 0, "Auto Detect" HKR,Ndi\params\port2speed\enum, "100", 0, "100Mbps/Full Duplex" HKR,Ndi\params\port2speed\enum, "1000", 0, "1Gbps/Full Duplex" HKR,,port3speed, 0, 0 HKR,Ndi\params\port3speed, ParamDesc, 0, "Port 3 Speed & Duplex" HKR,Ndi\params\port3speed, default, 0, "0" HKR,Ndi\params\port3speed, type, 0, "enum" HKR,Ndi\params\port3speed\enum, "0", 0, "Auto Detect" HKR,Ndi\params\port3speed\enum, "100", 0, "100Mbps/Full Duplex" HKR,Ndi\params\port3speed\enum, "1000", 0, "1Gbps/Full Duplex" ; ; Speed setting for 4 port 1G adapter ; [ports4speed.reg] HKR,,port0speed, 0, 0 HKR,Ndi\params\port0speed, ParamDesc, 0, "Port 0 Speed & Duplex" HKR,Ndi\params\port0speed, default, 0, "0" HKR,Ndi\params\port0speed, type, 0, "enum" HKR,Ndi\params\port0speed\enum, "0", 0, "Auto Detect" HKR,Ndi\params\port0speed\enum, "100", 0, "100Mbps/Full Duplex" HKR,Ndi\params\port0speed\enum, "1000", 0, "1Gbps/Full Duplex" HKR,,port1speed, 0, 0 HKR,Ndi\params\port1speed, ParamDesc, 0, "Port 1 Speed & Duplex" HKR,Ndi\params\port1speed, default, 0, "0" HKR,Ndi\params\port1speed, type, 0, "enum" HKR,Ndi\params\port1speed\enum, "0", 0, "Auto Detect" HKR,Ndi\params\port1speed\enum, "100", 0, "100Mbps/Full Duplex" HKR,Ndi\params\port1speed\enum, "1000", 0, "1Gbps/Full Duplex" HKR,,port2speed, 0, 0 HKR,Ndi\params\port2speed, ParamDesc, 0, "Port 2 Speed & Duplex" HKR,Ndi\params\port2speed, default, 0, "0" HKR,Ndi\params\port2speed, type, 0, "enum" HKR,Ndi\params\port2speed\enum, "0", 0, "Auto Detect" HKR,Ndi\params\port2speed\enum, "100", 0, "100Mbps/Full Duplex" HKR,Ndi\params\port2speed\enum, "1000", 0, "1Gbps/Full Duplex" HKR,,port3speed, 0, 0 HKR,Ndi\params\port3speed, ParamDesc, 0, "Port 3 Speed & Duplex" HKR,Ndi\params\port3speed, default, 0, "0" HKR,Ndi\params\port3speed, type, 0, "enum" HKR,Ndi\params\port3speed\enum, "0", 0, "Auto Detect" HKR,Ndi\params\port3speed\enum, "100", 0, "100Mbps/Full Duplex" HKR,Ndi\params\port3speed\enum, "1000", 0, "1Gbps/Full Duplex" ; ; MSI-X Support ; [msix.Addreg] HKR, Interrupt Management, 0x00000010 HKR, Interrupt Management\MessageSignaledInterruptProperties, 0x00000010 HKR, Interrupt Management\MessageSignaledInterruptProperties, MSISupported, 0x00010001, 1 HKR, Interrupt Management\MessageSignaledInterruptProperties, MessageNumberLimit, 0x00010001, 64 HKR, Interrupt Management\Affinity Policy, 0x00000010 HKR, Interrupt Management\Affinity Policy, DevicePolicy, 0x00010001, 0x01 [bootflags.reg] HKR, , BootFlags, 0x00010001, 1 [event_log_install] AddReg = event_log_install.reg [event_log_install.reg] HKR,,EventMessageFile,0x00020000,"%%SystemRoot%%\System32\netevent.dll;%%SystemRoot%%\System32\drivers\cht4vx64.sys" HKR,,TypesSupported,0x00010001,7 ;-------------- Service installation [cht4vbd_2port.Services] AddService = cht4vbd, %SPSVCINST_ASSOCSERVICE%, cht4vbd_Service_Inst, event_log_install [cht4vbd_4port.Services] AddService = cht4vbd, %SPSVCINST_ASSOCSERVICE%, cht4vbd_Service_Inst, event_log_install [cht4vbd_4port1g.Services] AddService = cht4vbd, %SPSVCINST_ASSOCSERVICE%, cht4vbd_Service_Inst, event_log_install [cht4vbd_4port1gc.Services] AddService = cht4vbd, %SPSVCINST_ASSOCSERVICE%, cht4vbd_Service_Inst, event_log_install ; -------------- cht4vbd driver install sections [cht4vbd_Service_Inst] DisplayName = %cht4vbd.generic% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 3 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary = %12%\cht4vx64.sys LoadOrderGroup = System Bus Extender addreg = bootflags.reg [copy_driver_file] cht4vx64.sys,,2 [SourceDisksNames] 1 = %disk_label%,,, [DestinationDirs] copy_driver_file = 12 ; Copy into the Drivers direectory. [SourceDisksFiles] ; make sure the number matches with SourceDisksNames cht4vx64.sys = 1 [Strings] ;Localizable strings SPSVCINST_ASSOCSERVICE= 0x00000002 MSFT = "Microsoft" chelsio = "Chelsio" disk_label = "Chelsio T4 Driver Installation Disk" cht4vbd.FPGA= "Chelsio T4 FPGA 1G Ethernet Function Enumerator" cht4vbd.T440DBG= "Chelsio T440-Dbg 10G Ethernet Function Enumerator" cht4vbd.T420CR= "Chelsio T420-CR 10G Ethernet Function Enumerator" cht4vbd.T422CR= "Chelsio T422-CR 10G/1G Ethernet Function Enumerator" cht4vbd.T440CR= "Chelsio T440-CR 10G Ethernet Function Enumerator" cht4vbd.T420BCH= "Chelsio T420-BCH 10G Ethernet Function Enumerator" cht4vbd.T440BCH= "Chelsio T440-BCH 10G Ethernet Function Enumerator" cht4vbd.T440CH= "Chelsio T440-CH 10G Ethernet Function Enumerator" cht4vbd.T420SO= "Chelsio T420-SO 10G Ethernet Function Enumerator" cht4vbd.T420CX= "Chelsio T420-CX4 10G Ethernet Function Enumerator" cht4vbd.T420BT= "Chelsio T420-BT 10G Ethernet Function Enumerator" cht4vbd.T420QM= "Chelsio T420-QM 10G Ethernet Function Enumerator" cht4vbd.T404BT= "Chelsio T404-BT 1G Ethernet Function Enumerator" cht4vbd.B420= "Chelsio B420 10G Ethernet Function Enumerator" cht4vbd.B404= "Chelsio B404 1G Ethernet Function Enumerator" cht4vbd.T480CR= "Chelsio T480-CR 10G Ethernet Function Enumerator" cht4vbd.T440LPCR= "Chelsio T440-LP-CR 10G Ethernet Function Enumerator" cht4vbd.generic="Chelsio T4 Virtual Bus Driver"