; /****************************************************************************
; ** COPYRIGHT (C) 2007, Silicon Integrated Systems Corp.                    **
; **                                                                         **
; ** INF file for Windows Vista NTamd64                                      **
; **                                                                         **
; ****************************************************************************/

[version]
Signature   = "$Windows NT$"
CatalogFile = SiSG664.cat
Class       = Net
ClassGUID   = {4d36e972-e325-11ce-bfc1-08002be10318}
Provider    = %SiS%
Compatible  = 1
DriverVer   = 06/20/2007,2.0.1039.1620

[Manufacturer]
%SiS%       = SiS,NTamd64

[ControlFlags]
ExcludeFromSelect = PCI\VEN_1039&DEV_0191
ExcludeFromSelect = PCI\VEN_1039&DEV_0190

[SiS.NTamd64]
; DisplayName           Section           DeviceID
; -----------           -------           --------
%SiSGbe.DeviceDesc1%   = SiSGbeLH.ndi,     PCI\VEN_1039&DEV_0191                          ; SiS191 1000/100/10 Ethernet Device (SiS191)
%SiSGbe.DeviceDesc1%   = SiSGbe3LH.ndi,    PCI\VEN_1039&DEV_0191&SUBSYS_01911039&REV_00   ; SiS191 1000/100/10 Ethernet Device (965)
%SiSGbe.DeviceDesc1%   = SiSGbe3LH.ndi,    PCI\VEN_1039&DEV_0191&SUBSYS_1B821019&REV_00   ; SiS191 1000/100/10 Ethernet Device (ECS)
%SiSGbe.DeviceDesc2%   = SiSGbe2LH.ndi,    PCI\VEN_1039&DEV_0190                          ; SiS190 100/10 Ethernet Adapter (SiS190)
%SiSGbe.DeviceDesc2%   = SiSGbe2LH.ndi,    PCI\VEN_1039&DEV_0190&SUBSYS_01901039          ; SiS190 100/10 Ethernet Device (SiS190)
%SiSGbe.DeviceDesc3%   = SiSGbe2LH.ndi,    PCI\VEN_1039&DEV_0191&SUBSYS_81391043          ; SiS191 100/10 Ethernet Device (ASUS)
%SiSGbe.DeviceDesc3%   = SiSGbe2LH.ndi,    PCI\VEN_1039&DEV_0191&SUBSYS_1B181019          ; SiS191 100/10 Ethernet Device (ECS)
%SiSGbe.DeviceDesc3%   = SiSGbe2LH.ndi,    PCI\VEN_1039&DEV_0191&SUBSYS_1B9B1019          ; SiS191 100/10 Ethernet Device (ECS)
%SiSGbe.DeviceDesc4%   = SiSGbe2LH.ndi,    PCI\VEN_1039&DEV_0191&SUBSYS_E0001458          ; SiS191 100/10 Ethernet Device (GIGABYTE)
%SiSGbe.DeviceDesc4%   = SiSGbe2LH.ndi,    PCI\VEN_1039&DEV_0191&SUBSYS_50041458          ; SiS191 100/10 Ethernet Device (GIGABYTE)
%SiSGbe.DeviceDesc%    = SiSGbeLH.ndi,     PCI\VEN_1039&DEV_0191&REV_02                   ; SiS191 Ethernet Controller (968)
%SiSGbe.DeviceDesc%    = SiSGbeLH.ndi,     PCI\VEN_1039&DEV_0191&SUBSYS_01911039&REV_02   ; SiS191 Ethernet Controller (968)
%SiSGbe.DeviceDesc%    = SiSGbeLH.ndi,     PCI\VEN_1039&DEV_0191&SUBSYS_73171462&REV_02   ; SiS191 Ethernet Controller (MSI)
%SiSGbe.DeviceDesc%    = SiSGbe5LH.ndi,    PCI\VEN_1039&DEV_0191&SUBSYS_01911849&REV_02   ; SiS191 Ethernet Controller (ASRock)
%SiSGbe.DeviceDesc5%   = SiSGbeLH.ndi,    PCI\VEN_1039&DEV_0191&SUBSYS_11101734&REV_02   ; SiS Ethernet Controller (Inventec)

[SiSGbeLH.ndi]
Characteristics = 0x84
BusType         = 5
AddReg          = SiSGbe.reg, SiSGiga.reg, SiSNT51.reg, SiSPhyDis.reg
CopyFiles       = SiSGbeLH.CopyFiles
*IfType         = 6		; IF_TYPE_ETHERNET_CSMACD 
*MediaType      = 0		; NdisMedium802_3
*PhysicalMediaType = 14		; NdisPhysicalMedium802_3

[SiSGbeLH.ndi.Services]
AddService = SiSGbeLH, 2, SiSGbeLH.Service, common.EventLog

[SiSGbe2LH.ndi]
Characteristics = 0x84
BusType         = 5
AddReg          = SiSGbe.reg, SiSNT51.reg, SiSPhyDis.reg
CopyFiles       = SiSGbeLH.CopyFiles
*IfType         = 6
*MediaType      = 0
*PhysicalMediaType = 14

[SiSGbe2LH.ndi.Services]
AddService = SiSGbeLH, 2, SiSGbeLH.Service, common.EventLog

[SiSGbe3LH.ndi]
Characteristics = 0x84
BusType         = 5
AddReg          = SiSGbe.reg, SiSGiga.reg, SiSNT51.reg, SiSClk.reg, SiSPhyDis.reg
CopyFiles       = SiSGbeLH.CopyFiles
*IfType         = 6
*MediaType      = 0
*PhysicalMediaType = 14

[SiSGbe3LH.ndi.Services]
AddService = SiSGbeLH, 2, SiSGbeLH.Service, common.EventLog

[SiSGbe4LH.ndi]
Characteristics = 0x84
BusType         = 5
AddReg          = SiSGbe.reg, SiSGiga.reg, SiSNT51.reg, SiSPhyEn.reg
CopyFiles       = SiSGbeLH.CopyFiles
*IfType         = 6 
*MediaType      = 0
*PhysicalMediaType = 14

[SiSGbe4LH.ndi.Services]
AddService = SiSGbeLH, 2, SiSGbeLH.Service, common.EventLog

[SiSGbe5LH.ndi]
Characteristics = 0x84
BusType         = 5
AddReg          = SiSGbe.reg, SiSGiga.reg, SiSNT51.reg, SiSPhyDis.reg, SiSAutoForce.reg
CopyFiles       = SiSGbeLH.CopyFiles
*IfType         = 6
*MediaType      = 0
*PhysicalMediaType = 14

[SiSGbe5LH.ndi.Services]
AddService = SiSGbeLH, 2, SiSGbeLH.Service, common.EventLog

;-----------------------------------------------------------------------------
; common base for 10/100/1000Mb Adapters
;
[SiSGbe.reg]
HKR, Ndi\params\*SpeedDuplex,       	ParamDesc,  0, %SpeedDuplex%
HKR, Ndi\params\*SpeedDuplex,       	default,    0, "0"
HKR, Ndi\params\*SpeedDuplex,       	type,       0, "enum"
HKR, Ndi\params\*SpeedDuplex\enum,  	"0",        0, %AutoDetect%
HKR, Ndi\params\*SpeedDuplex\enum,  	"1",        0, %10Mb-Half-Duplex%
HKR, Ndi\params\*SpeedDuplex\enum,  	"2",        0, %10Mb-Full-Duplex%
HKR, Ndi\params\*SpeedDuplex\enum,  	"3",        0, %100Mb-Half-Duplex%
HKR, Ndi\params\*SpeedDuplex\enum,  	"4",        0, %100Mb-Full-Duplex%

;HKR, Ndi\params\bPhyLowPower,           ParamDesc,  0, %bPhyLowPower%
;HKR, Ndi\params\bPhyLowPower,           default,    0, "0"
;HKR, Ndi\params\bPhyLowPower,           type,       0, "enum"
;HKR, Ndi\params\bPhyLowPower\enum,      "0",        0, %Disabled%
;HKR, Ndi\params\bPhyLowPower\enum,      "1",        0, %Enabled%

HKR, Ndi\params\*FlowControl,           ParamDesc,  0, %FlowCtrl%
HKR, Ndi\params\*FlowControl,           default,    0, "1"
HKR, Ndi\params\*FlowControl,           type,       0, "enum"
HKR, Ndi\params\*FlowControl\enum,      "0",        0, %Disabled%
HKR, Ndi\params\*FlowControl\enum,      "1",        0, %Rx Tx Enabled%

HKR, Ndi\params\*LsoV1IPv4,            	ParamDesc,  0, %LargeSend%
HKR, Ndi\params\*LsoV1IPv4,            	default,    0, "1"
HKR, Ndi\params\*LsoV1IPv4,            	type,       0, "enum"
HKR, Ndi\params\*LsoV1IPv4\enum,       	"0",        0, %Disabled%
HKR, Ndi\params\*LsoV1IPv4\enum,       	"1",        0, %Enabled%

HKR, Ndi\params\*IPChecksumOffloadIPv4, 	ParamDesc,  0, %Ipv4ChecksumOffload%
HKR, Ndi\params\*IPChecksumOffloadIPv4,         default,    0, "3"
HKR, Ndi\params\*IPChecksumOffloadIPv4,         type,       0, "enum"
HKR, Ndi\params\*IPChecksumOffloadIPv4\enum,    "0",        0, %Disabled%
HKR, Ndi\params\*IPChecksumOffloadIPv4\enum,    "1",        0, %Tx Enabled%
HKR, Ndi\params\*IPChecksumOffloadIPv4\enum,    "2",        0, %Rx Enabled%
HKR, Ndi\params\*IPChecksumOffloadIPv4\enum,    "3",        0, %Tx Rx Enabled%

HKR, Ndi\params\*TCPChecksumOffloadIPv4, 	ParamDesc,  0, %TcpIpv4Offload%
HKR, Ndi\params\*TCPChecksumOffloadIPv4,         default,    0, "3"
HKR, Ndi\params\*TCPChecksumOffloadIPv4,         type,       0, "enum"
HKR, Ndi\params\*TCPChecksumOffloadIPv4\enum,    "0",        0, %Disabled%
HKR, Ndi\params\*TCPChecksumOffloadIPv4\enum,    "1",        0, %Tx Enabled%
HKR, Ndi\params\*TCPChecksumOffloadIPv4\enum,    "2",        0, %Rx Enabled%
HKR, Ndi\params\*TCPChecksumOffloadIPv4\enum,    "3",        0, %Tx Rx Enabled%

HKR, Ndi\params\*UDPChecksumOffloadIPv4, 	ParamDesc,  0, %UdpIpv4Offload%
HKR, Ndi\params\*UDPChecksumOffloadIPv4,         default,    0, "3"
HKR, Ndi\params\*UDPChecksumOffloadIPv4,         type,       0, "enum"
HKR, Ndi\params\*UDPChecksumOffloadIPv4\enum,    "0",        0, %Disabled%
HKR, Ndi\params\*UDPChecksumOffloadIPv4\enum,    "1",        0, %Tx Enabled%
HKR, Ndi\params\*UDPChecksumOffloadIPv4\enum,    "2",        0, %Rx Enabled%
HKR, Ndi\params\*UDPChecksumOffloadIPv4\enum,    "3",        0, %Tx Rx Enabled%

HKR,Ndi\params\NetworkAddress,        	ParamDesc,  0, %NetworkAddress%
HKR,Ndi\params\NetworkAddress,        	type,       0, "edit"
HKR,Ndi\params\NetworkAddress,        	default,    0, "000000000000"
HKR,Ndi\params\NetworkAddress,        	LimitText,  0, "12"
HKR,Ndi\params\NetworkAddress,        	UpperCase,  0, "1"
HKR,Ndi\params\NetworkAddress,        	Optional,   0, "1"

HKR, Ndi\params\*ReceiveBuffers,        ParamDesc,  0, %NumRfd%
HKR, Ndi\params\*ReceiveBuffers,        default,    0, "256"
HKR, Ndi\params\*ReceiveBuffers,        min,        0, "8"
HKR, Ndi\params\*ReceiveBuffers,        max,        0, "00001024"
HKR, Ndi\params\*ReceiveBuffers,        step,       0, "1"
HKR, Ndi\params\*ReceiveBuffers,        Base,       0, "10"
HKR, Ndi\params\*ReceiveBuffers,        type,       0, "Int"

HKR, Ndi\params\*TransmitBuffers,      	ParamDesc,  0, %NumHwTcb%
HKR, Ndi\params\*TransmitBuffers,      	default,    0, "256"
HKR, Ndi\params\*TransmitBuffers,      	min,        0, "8"
HKR, Ndi\params\*TransmitBuffers,      	max,        0, "00008192"
HKR, Ndi\params\*TransmitBuffers,      	step,       0, "1"
HKR, Ndi\params\*TransmitBuffers,      	Base,       0, "10"
HKR, Ndi\params\*TransmitBuffers,      	type,       0, "Int"

HKR, Ndi\params\Thold,             	ParamDesc,  0, %Thold%
HKR, Ndi\params\Thold,             	default,    0, "3"
HKR, Ndi\params\Thold,             	type,       0, "enum"
HKR, Ndi\params\Thold\enum,        	"0",        0, %1_4%
HKR, Ndi\params\Thold\enum,        	"1",        0, %2_4%
HKR, Ndi\params\Thold\enum,        	"2",        0, %3_4%
HKR, Ndi\params\Thold\enum,        	"3",        0, %4_4%

HKR, Ndi\params\*InterruptModeration,            ParamDesc,  0, %IntAutoTune%
HKR, Ndi\params\*InterruptModeration,            default,    0, "1"
HKR, Ndi\params\*InterruptModeration,            type,       0, "enum"
HKR, Ndi\params\*InterruptModeration\enum,       "0",        0, %Disabled%
HKR, Ndi\params\*InterruptModeration\enum,       "1",        0, %Enabled%

HKR, Ndi\params\*PriorityVLANTag,            ParamDesc,  0, %PriorityVLANTag%
HKR, Ndi\params\*PriorityVLANTag,            default,    0, "3"
HKR, Ndi\params\*PriorityVLANTag,            type,       0, "enum"
HKR, Ndi\params\*PriorityVLANTag\enum,       "0",        0, %PriorityVLANTag0%
HKR, Ndi\params\*PriorityVLANTag\enum,       "1",        0, %PriorityVLANTag1%
HKR, Ndi\params\*PriorityVLANTag\enum,       "2",        0, %PriorityVLANTag2%
HKR, Ndi\params\*PriorityVLANTag\enum,       "3",        0, %PriorityVLANTag3%

HKR, Ndi\params\WakeupLink,       	ParamDesc,  0, %WakeupLink%
HKR, Ndi\params\WakeupLink,       	default,    0, "0"
HKR, Ndi\params\WakeupLink,       	type,       0, "enum"
HKR, Ndi\params\WakeupLink\enum,  	"0",        0, %Disabled%
HKR, Ndi\params\WakeupLink\enum,  	"1",        0, %Enabled%

HKR, Ndi\params\WakeupMagic,       	ParamDesc,  0, %WakeupMagic%
HKR, Ndi\params\WakeupMagic,       	default,    0, "1"
HKR, Ndi\params\WakeupMagic,       	type,       0, "enum"
HKR, Ndi\params\WakeupMagic\enum,  	"0",        0, %Disabled%
HKR, Ndi\params\WakeupMagic\enum,  	"1",        0, %Enabled%

HKR, Ndi\params\WakeupFrame,       	ParamDesc,  0, %WakeupFrame%
HKR, Ndi\params\WakeupFrame,       	default,    0, "0"
HKR, Ndi\params\WakeupFrame,       	type,       0, "enum"
HKR, Ndi\params\WakeupFrame\enum,  	"0",        0, %Disabled%
HKR, Ndi\params\WakeupFrame\enum,  	"1",        0, %Enabled%
;-----------------------------------------------------------------------------
; For SiS 191
;
[SiSGiga.reg]
HKR, Ndi\params\*JumboPacket,         	ParamDesc,  0, %JumboFrame%
HKR, Ndi\params\*JumboPacket,         	default,    0, "1500"
HKR, Ndi\params\*JumboPacket,         	min,        0, "1500"
HKR, Ndi\params\*JumboPacket,         	max,        0, "9500"
HKR, Ndi\params\*JumboPacket,         	step,       0, "500"
HKR, Ndi\params\*JumboPacket,         	Base,       0, "10"
HKR, Ndi\params\*JumboPacket,         	type,       0, "Int"

HKR, Ndi\params\BurstEn,             	ParamDesc,  0, %BurstEn%
HKR, Ndi\params\BurstEn,             	default,    0, "1"
HKR, Ndi\params\BurstEn,             	type,       0, "enum"
HKR, Ndi\params\BurstEn\enum,        	"0",        0, %Disabled%
HKR, Ndi\params\BurstEn\enum,        	"1",        0, %Enabled%

;-----------------------------------------------------------------------------
; For Phy Power Saving Default Enabled
;
[SiSPhyEn.reg]
HKR, Ndi\params\bPhyLowPower,           ParamDesc,  0, %bPhyLowPower%
HKR, Ndi\params\bPhyLowPower,           default,    0, "0"
HKR, Ndi\params\bPhyLowPower,           type,       0, "enum"
HKR, Ndi\params\bPhyLowPower\enum,      "0",        0, %Disabled%
HKR, Ndi\params\bPhyLowPower\enum,      "1",        0, %Enabled%

;-----------------------------------------------------------------------------
; For Phy Power Saving Default Disabled
;
[SiSPhyDis.reg]
HKR, Ndi\params\bPhyLowPower,           ParamDesc,  0, %bPhyLowPower%
HKR, Ndi\params\bPhyLowPower,           default,    0, "0"
HKR, Ndi\params\bPhyLowPower,           type,       0, "enum"
HKR, Ndi\params\bPhyLowPower\enum,      "0",        0, %Disabled%
HKR, Ndi\params\bPhyLowPower\enum,      "1",        0, %Enabled%

;-----------------------------------------------------------------------------
; For Auto Negotiation to Specific Speed & Duplex Extra Options
;
[SiSAutoForce.reg]
HKR, Ndi\params\*SpeedDuplex\enum,  	"5",        0, %10Mb-Half-Duplex-A%
HKR, Ndi\params\*SpeedDuplex\enum,  	"6",        0, %10Mb-Full-Duplex-A%
HKR, Ndi\params\*SpeedDuplex\enum,  	"7",        0, %100Mb-Half-Duplex-A%
HKR, Ndi\params\*SpeedDuplex\enum,  	"8",        0, %100Mb-Full-Duplex-A%
HKR, Ndi\params\*SpeedDuplex\enum,  	"9",        0, %1000Mb-Full-Duplex-A%

;-----------------------------------------------------------------------------
; For SiS 191 Tx Clock Selection
;
[SiSClk.reg]
HKR, Ndi\params\TxClkSelect,           	ParamDesc,  0, %TxClkSelect%
HKR, Ndi\params\TxClkSelect,           	default,    0, "1"
HKR, Ndi\params\TxClkSelect,           	type,       0, "enum"
HKR, Ndi\params\TxClkSelect\enum,      	"0",        0, %Internal%
HKR, Ndi\params\TxClkSelect\enum,      	"1",        0, %External%

;-----------------------------------------------------------------------------
; SiSGbe NT specific
;
[SiSNT51.reg]
HKR, Ndi,                       Service,    0, "SiSGbeLH"
; use ndis5 as the upper bound because NT supports it
HKR, Ndi\Interfaces,            UpperRange, 0, "ndis5"
HKR, Ndi\Interfaces,            LowerRange, 0, "ethernet"

[SiSGbeLH.Service]
DisplayName     = %SiSGbe.Service.DispName%
ServiceType     = 1 ;%SERVICE_KERNEL_DRIVER%
StartType       = 3 ;%SERVICE_DEMAND_START%
ErrorControl    = 1 ;%SERVICE_ERROR_NORMAL%
ServiceBinary   = %12%\SiSG664.sys
LoadOrderGroup  = NDIS

[common.EventLog]
AddReg = common.AddEventLog.reg

[common.AddEventLog.reg]
HKR, , EventMessageFile, 0x00020000, "%%SystemRoot%%\System32\netevent.dll"
HKR, , TypesSupported,   0x00010001, 7

;-----------------------------------------------------------------------------
; DestinationDirs
;
[SiSGbeLH.CopyFiles]
SiSG664.sys,,,2

[SourceDisksNames]
;
; diskid = description[, [tagfile] [, <unused>, subdir]]
;
1 = %DiskDescription%,SiSG664.sys,,

[SourceDisksFiles]
;
; filename_on_source = diskID[, [subdir][, size]]
;
SiSG664.sys = 1,, ; on distribution disk 1

[DestinationDirs]
SiSGbeLH.CopyFiles     	= 12
DefaultDestDir        	= 11

[Strings]
SiS                     = "Silicon Integrated Systems Corp."

AutoDetect              = "Auto Negotiation"
SpeedDuplex             = "Speed & Duplex"
10Mb-Half-Duplex        = "10 Mbps Half Duplex"
10Mb-Full-Duplex        = "10 Mbps Full Duplex"
100Mb-Half-Duplex       = "100 Mbps Half Duplex"
100Mb-Full-Duplex       = "100M bps Full Duplex"
10Mb-Half-Duplex-A      = "Auto Negotiate for 10HD"
10Mb-Full-Duplex-A      = "Auto Negotiate for 10FD"
100Mb-Half-Duplex-A     = "Auto Negotiate for 100HD"
100Mb-Full-Duplex-A     = "Auto Negotiate for 100FD"
1000Mb-Full-Duplex-A    = "Auto Negotiate for 1000FD"

NumRfd                  = "Receive Buffers"
NumHwTcb                = "Transmit Buffers"

SiSGbe.DeviceDesc       = "SiS191 Ethernet Controller"
SiSGbe.DeviceDesc1      = "SiS191 1000/100/10 Ethernet Device"
SiSGbe.DeviceDesc2      = "SiS190 100/10 Ethernet Device"
SiSGbe.DeviceDesc3      = "SiS191 100/10 Ethernet Device"
SiSGbe.DeviceDesc4      = "SiS191 Ethernet Device"
SiSGbe.DeviceDesc5      = "SiS Ethernet Controller"

SiSGbe.Service.DispName = "SiS191/SiS190 Ethernet Device NDIS 6.0 Driver"
DiskDescription         = "SiS Driver Disk 1"

WakeupLink		= "Wake on Link Changed"
WakeupMagic		= "Wake on Magic Packet Received"
WakeupFrame		= "Wake on Wake Pattern Received"
bPhyLowPower		= "Power Saving"

Enabled			= "Enabled"
Disabled		= "Disabled"
Tx Enabled		= "Tx Enabled"
Rx Enabled		= "Rx Enabled"
Tx Rx Enabled		= "Tx & Rx Enabled"
Rx Tx Enabled		= "Rx & Tx Enabled"
PriorityVLANTag		= "Priority & VLAN"
PriorityVLANTag0        = "Priority & VLAN Disabled"
PriorityVLANTag1        = "Priority Enabled"
PriorityVLANTag2        = "VLAN Enabled"
PriorityVLANTag3        = "Priority & VLAN Enabled"
FlowCtrl		= "Flow Control"
BurstEn			= "Burst Transfer"

LargeSend		= "Large Send Offload (IPv4)"
Ipv4ChecksumOffload	= "IPv4 Checksum Offload"
TcpIpv4Offload		= "TCP Checksum Offload (IPv4)"
UdpIpv4Offload		= "UDP Checksum Offload (IPv4)"

NetworkAddress		= "Network Address"
JumboFrame		= "Jumbo Packet"
Thold			= "Tx Threshold"
1_4			= "1/4"
2_4			= "2/4"
3_4			= "3/4"
4_4			= "4/4"
IntAutoTune		= "Interrupt Moderation"
TxClkSelect		= "Tx Clock Select"
Internal		= "Internal Clock"
External		= "External Clock"