; Copyright (c) 2008, Microsoft

[version]
Signature   = "$Windows NT$"
Class       = Net
ClassGUID   = {4d36e972-e325-11ce-bfc1-08002be10318}
Provider    = %Microsoft%
DriverVer=10/21/2008,10.5.1.0

[Manufacturer]
%Intel%     = Intel, NTx86.6.0

[ControlFlags]
ExcludeFromSelect = *

[Intel]


[Intel.NTx86.6.0]

; DisplayName                   Section                DeviceID
; -----------                   -------                --------

%E10DENC.DeviceDesc%            = E10DE,       PCI\VEN_8086&DEV_10DE
%E10DFNC.DeviceDesc%            = E10DF,       PCI\VEN_8086&DEV_10DF




;===============================================================================
;
;                        WINDOWS 7 PLATFORMS
;
;===============================================================================

;-------------------------------------------------------------------------------
; Intel(R) 82567LM-3 Gigabit Network Connection
;
[E10DE]
Characteristics = 0x84 ; NCF_HAS_UI | NCF_PHYSICAL
BusType         = 5    ; PCI
AddReg          = e1k.reg, Copper.reg, Copper1000.reg, 82567.reg
AddReg          = JumboPacket.reg
AddReg          = TcpSeg.reg, RSS.reg
CopyFiles       = winvista.CopyFiles
*IfType         = 6     ; IF_TYPE_ETHERNET_CSMACD
*MediaType      = 0     ; NdisMedium802_3
*PhysicalMediaType = 14     ; NdisPhysicalMedium802_3

[E10DE.Services]
AddService = e1kexpress, 2, winvista.Service, winvista.EventLog


[E10DE.HW]
Include=machine.inf
Needs=PciIoSpaceNotRequired
AddReg=MSIX.reg

;-------------------------------------------------------------------------------
; Intel(R) 82567LF-3 Gigabit Network Connection
;
[E10DF]
Characteristics = 0x84 ; NCF_HAS_UI | NCF_PHYSICAL
BusType         = 5    ; PCI
AddReg          = e1k.reg, Copper.reg, Copper1000.reg, 82567.reg
AddReg          = JumboPacket.reg
AddReg          = TcpSeg.reg, RSS.reg
CopyFiles       = winvista.CopyFiles
*IfType         = 6     ; IF_TYPE_ETHERNET_CSMACD
*MediaType      = 0     ; NdisMedium802_3
*PhysicalMediaType = 14     ; NdisPhysicalMedium802_3

[E10DF.Services]
AddService = e1kexpress, 2, winvista.Service, winvista.EventLog


[E10DF.HW]
Include=machine.inf
Needs=PciIoSpaceNotRequired
AddReg=MSIX.reg

;-------------------------------------------------------------------------------
; Do-nothing section used to avoid "Unknown hardware" installation prompts.
;
[NO_DRV]
Include=machine.inf
Needs=NO_DRV
Characteristics=1

[NO_DRV.Services]
Include=machine.inf
Needs=NO_DRV.Services

;-------------------------------------------------------------------------------
; Registry Settings (decimal)
;
[e1k.reg]

HKR, Ndi\Interfaces,                           UpperRange,         0, "ndis5"
HKR, Ndi\Interfaces,                           LowerRange,         0, "ethernet"
HKR, Ndi,                                      Service,            0, "e1kexpress"

HKR, Ndi\Params\*FlowControl,                  ParamDesc,          0, %FlowControl%
HKR, Ndi\Params\*FlowControl,                  default,            0, "0"
HKR, Ndi\Params\*FlowControl\Enum,             "0",                0, %Disabled%
HKR, Ndi\Params\*FlowControl\Enum,             "1",                0, %FlowControl_RxOnly%
HKR, Ndi\Params\*FlowControl\Enum,             "2",                0, %FlowControl_TxOnly%
HKR, Ndi\Params\*FlowControl\Enum,             "3",                0, %FlowControl_Full%
HKR, Ndi\Params\*FlowControl,                  type,               0, "enum"

; *TCPChecksumOffloadIPv4
HKR, Ndi\Params\*TCPChecksumOffloadIPv4,                ParamDesc,              0, %TCPChksumOffv4%
HKR, Ndi\Params\*TCPChecksumOffloadIPv4,                default,                0, "3"
HKR, Ndi\Params\*TCPChecksumOffloadIPv4\Enum,           "0",                    0, %Disabled%
HKR, Ndi\Params\*TCPChecksumOffloadIPv4\Enum,           "1",                    0, %ChksumOffTx%
HKR, Ndi\Params\*TCPChecksumOffloadIPv4\Enum,           "2",                    0, %ChksumOffRx%
HKR, Ndi\Params\*TCPChecksumOffloadIPv4\Enum,           "3",                    0, %ChksumOffTxRx%
HKR, Ndi\Params\*TCPChecksumOffloadIPv4,                type,                   0, "enum"

; *TCPChecksumOffloadIPv6
HKR, Ndi\Params\*TCPChecksumOffloadIPv6,                ParamDesc,              0, %TCPChksumOffv6%
HKR, Ndi\Params\*TCPChecksumOffloadIPv6,                default,                0, "3"
HKR, Ndi\Params\*TCPChecksumOffloadIPv6\Enum,           "0",                    0, %Disabled%
HKR, Ndi\Params\*TCPChecksumOffloadIPv6\Enum,           "1",                    0, %ChksumOffTx%
HKR, Ndi\Params\*TCPChecksumOffloadIPv6\Enum,           "2",                    0, %ChksumOffRx%
HKR, Ndi\Params\*TCPChecksumOffloadIPv6\Enum,           "3",                    0, %ChksumOffTxRx%
HKR, Ndi\Params\*TCPChecksumOffloadIPv6,                type,                   0, "enum"


; *UDPChecksumOffloadIPv4
HKR, Ndi\Params\*UDPChecksumOffloadIPv4,                ParamDesc,              0, %UDPChksumOffv4%
HKR, Ndi\Params\*UDPChecksumOffloadIPv4,                default,                0, "3"
HKR, Ndi\Params\*UDPChecksumOffloadIPv4\Enum,           "0",                    0, %Disabled%
HKR, Ndi\Params\*UDPChecksumOffloadIPv4\Enum,           "1",                    0, %ChksumOffTx%
HKR, Ndi\Params\*UDPChecksumOffloadIPv4\Enum,           "2",                    0, %ChksumOffRx%
HKR, Ndi\Params\*UDPChecksumOffloadIPv4\Enum,           "3",                    0, %ChksumOffTxRx%
HKR, Ndi\Params\*UDPChecksumOffloadIPv4,                type,                   0, "enum"


; *UDPChecksumOffloadIPv6
HKR, Ndi\Params\*UDPChecksumOffloadIPv6,                ParamDesc,              0, %UDPChksumOffv6%
HKR, Ndi\Params\*UDPChecksumOffloadIPv6,                default,                0, "3"
HKR, Ndi\Params\*UDPChecksumOffloadIPv6\Enum,           "0",                    0, %Disabled%
HKR, Ndi\Params\*UDPChecksumOffloadIPv6\Enum,           "1",                    0, %ChksumOffTx%
HKR, Ndi\Params\*UDPChecksumOffloadIPv6\Enum,           "2",                    0, %ChksumOffRx%
HKR, Ndi\Params\*UDPChecksumOffloadIPv6\Enum,           "3",                    0, %ChksumOffTxRx%
HKR, Ndi\Params\*UDPChecksumOffloadIPv6,                type,                   0, "enum"

; *IPChecksumOffloadIPv4
HKR, Ndi\Params\*IPChecksumOffloadIPv4,                 ParamDesc,              0, %IPChksumOffv4%
HKR, Ndi\Params\*IPChecksumOffloadIPv4,                 default,                0, "3"
HKR, Ndi\Params\*IPChecksumOffloadIPv4\Enum,            "0",                    0, %Disabled%
HKR, Ndi\Params\*IPChecksumOffloadIPv4\Enum,            "1",                    0, %ChksumOffTx%
HKR, Ndi\Params\*IPChecksumOffloadIPv4\Enum,            "2",                    0, %ChksumOffRx%
HKR, Ndi\Params\*IPChecksumOffloadIPv4\Enum,            "3",                    0, %ChksumOffTxRx%
HKR, Ndi\Params\*IPChecksumOffloadIPv4,                 type,                   0, "enum"

; Network Address
HKR, Ndi\params\NetworkAddress,                ParamDesc,          0, %LAA%
HKR, Ndi\params\NetworkAddress,                Default,            0, ""
HKR, Ndi\params\NetworkAddress,                type,               0, "edit"
HKR, NDI\params\NetworkAddress,                LimitText,          0, "12"
HKR, NDI\params\NetworkAddress,                UpperCase,          0, "1"
HKR, NDI\params\NetworkAddress,                optional,           0, "1"

;Log Link State Event
HKR,Ndi\Params\LogLinkStateEvent,              ParamDesc,          0, %LogLinkState%
HKR,Ndi\Params\LogLinkStateEvent,              Type,               0, "enum"
HKR,Ndi\Params\LogLinkStateEvent,              Default,            0, "51"
HKR,Ndi\Params\LogLinkStateEvent\Enum,         "51",               0, %Enabled%
HKR,Ndi\Params\LogLinkStateEvent\Enum,         "16",               0, %Disabled%
HKR,,                                          LogLinkStateEvent,  0, "51"

; Wait for Link
HKR, Ndi\Params\WaitAutoNegComplete,                 ParamDesc,          0, %WaitAutoNegComplete%
HKR, Ndi\Params\WaitAutoNegComplete,                 default,            0, "2"
HKR, Ndi\Params\WaitAutoNegComplete\Enum,            "0",                0, %Off%
HKR, Ndi\Params\WaitAutoNegComplete\Enum,            "1",                0, %On%
HKR, Ndi\Params\WaitAutoNegComplete\Enum,            "2",                0, %AutoDetect%
HKR, Ndi\Params\WaitAutoNegComplete,                 type,               0, "enum"

;  Interrupt Throttle Rate
HKR, Ndi\Params\ITR,                  ParamDesc,          0, %InterruptThrottleRate%
HKR, Ndi\Params\ITR,                  default,            0, "65535"
HKR, Ndi\Params\ITR\Enum,             "65535",            0, %Adaptive%
HKR, Ndi\Params\ITR\Enum,             "3600",             0, %Extreme%
HKR, Ndi\Params\ITR\Enum,             "2000",             0, %High%
HKR, Ndi\Params\ITR\Enum,             "950",              0, %Medium%
HKR, Ndi\Params\ITR\Enum,             "400",              0, %Low%
HKR, Ndi\Params\ITR\Enum,             "200",              0, %Minimal%
HKR, Ndi\Params\ITR\Enum,             "0",                0, %Off%
HKR, Ndi\Params\ITR,                  type,               0, "enum"
HKR,,                                 ITR,                0, "65535"

; *PriorityVLANTag
HKR, Ndi\Params\*PriorityVLANTag,                       ParamDesc,              0, %PriorityVLANTag%
HKR, Ndi\Params\*PriorityVLANTag,                       default,                0, "3"
HKR, Ndi\Params\*PriorityVLANTag\Enum,                  "0",                    0, %PriorityVlanDisabled%
HKR, Ndi\Params\*PriorityVLANTag\Enum,                  "1",                    0, %PriorityEnabled%
HKR, Ndi\Params\*PriorityVLANTag\Enum,                  "2",                    0, %VlanEnabled%
HKR, Ndi\Params\*PriorityVLANTag\Enum,                  "3",                    0, %PriorityVlanEnabled%
HKR, Ndi\Params\*PriorityVLANTag,                       type,                   0, "enum"

; EnablePME
HKR,Ndi\Params\EnablePME,                     ParamDesc,          0, %Enable_PME%
HKR,Ndi\Params\EnablePME,                     Type,               0, "enum"
HKR,Ndi\Params\EnablePME,                     Default,            0, "0"
HKR,Ndi\Params\EnablePME\Enum,                "1",                0, %Enabled%
HKR,Ndi\Params\EnablePME\Enum,                "0",                0, %Disabled%

; Hardwired defaults
HKR,,                                          PciScanMethod,      0, "3"
HKR,,                                          TxIntDelay,         0, "28"
HKR,,                                          MulticastFilterType,0, "0"
HKR,,                                          CustomMessages,     0, "1"
HKR,,                                          VlanFiltering,      0, "0"

; Advanced Power Consumption Features
HKR,,                                          ReduceSpeedOnPowerDown,   0, "1"
HKR,,                                          AutoPowerSaveModeEnabled, 0, "0"
HKR,,                                          SavePowerNowEnabled,      0, "1"

[transmitBuffers1024.reg]
HKR, Ndi\params\*TransmitBuffers,                       default,                0, "1024"

[TcpSeg.reg]

[HDSplit.reg]
; Header Split capabilities
HKR, Ndi\Params\*HeaderDataSplit,                       ParamDesc,              0, %HeaderDataSplit%
HKR, Ndi\Params\*HeaderDataSplit,                       default,                0, "1"
HKR, Ndi\Params\*HeaderDataSplit\Enum,                  "0",                    0, %Disabled%
HKR, Ndi\Params\*HeaderDataSplit\Enum,                  "1",                    0, %Enabled%
HKR, Ndi\Params\*HeaderDataSplit,                       type,                   0, "enum"

[82567.reg]
HKR,,                                          InterruptsAutoMask, 0, "1"
HKR,,                                          InterruptAsserted, 0, "1"

[Copper.reg]
; Adaptive IFS
HKR, Ndi\Params\AdaptiveIFS,                   ParamDesc,          0, %AdaptiveIFS%
HKR, Ndi\Params\AdaptiveIFS,                   default,            0, "0"
HKR, Ndi\Params\AdaptiveIFS,                   type,               0, "enum"
HKR, Ndi\Params\AdaptiveIFS\Enum,              "0",                0, %Disabled%
HKR, Ndi\Params\AdaptiveIFS\Enum,              "1",                0, %Enabled%

[Copper1000.reg]

; Gigabit Master Slave Mode
HKR,Ndi\Params\MasterSlave,      ParamDesc,  0, %MasterSlaveMode%
HKR,Ndi\Params\MasterSlave,      Type,       0, "enum"
HKR,Ndi\Params\MasterSlave,      Default,    0, "0"
HKR,Ndi\Params\MasterSlave\Enum, "0",        0, %AutoDetect%
HKR,Ndi\Params\MasterSlave\Enum, "1",        0, %GigabitMasterMode%
HKR,Ndi\Params\MasterSlave\Enum, "2",        0, %GigabitSlaveMode%


; *JumboPacket
[JumboPacket.reg]
HKR, Ndi\Params\*JumboPacket,                           ParamDesc,              0, %JumboPacket%
HKR, Ndi\Params\*JumboPacket,                           default,                0, "1514"
HKR, Ndi\Params\*JumboPacket\Enum,                      "1514",                 0, %Disabled%
HKR, Ndi\Params\*JumboPacket\Enum,                      "4088",                 0, %Bytes4088%
HKR, Ndi\Params\*JumboPacket\Enum,                      "9014",                 0, %Bytes9014%
HKR, Ndi\Params\*JumboPacket,                           type,                   0, "enum"

[ResetLink.reg]
HKR,,                         ResetLinkWA,        0, "1"

[RSS.reg]
; NumRssQueues
HKR, Ndi\Params\NumRssQueues,                   ParamDesc,              0, %NumRssQueues%
HKR, Ndi\Params\NumRssQueues,                   default,                0, "1"
HKR, Ndi\Params\NumRssQueues,                   type,                   0, "enum"
HKR, Ndi\Params\NumRssQueues\Enum,              "1",                    0, %1queue%
HKR, Ndi\Params\NumRssQueues\Enum,              "2",                    0, %2queues%

; *RSS
HKR, Ndi\Params\*RSS,                                   ParamDesc,              0, %RSS%
HKR, Ndi\Params\*RSS,                                   default,                0, "1"
HKR, Ndi\Params\*RSS,                                   type,                   0, "enum"
HKR, Ndi\Params\*RSS\Enum,                              "0",                    0, %Disabled%
HKR, Ndi\Params\*RSS\Enum,                              "1",                    0, %Enabled%

;RSSHash
HKR,,                         ReceiveScalingMode,             2, "1"

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

;-------------------------------------------------------------------------------
; WinVista copy files
;
[winvista.CopyFiles]
e1k6032.sys,,,2

[winvista.Service]
DisplayName     = %e1kExpress.Service.DispName%
ServiceType     = 1 ;%SERVICE_KERNEL_DRIVER%
StartType       = 3 ;%SERVICE_DEMAND_START%
ErrorControl    = 1 ;%SERVICE_ERROR_NORMAL%
ServiceBinary   = %12%\e1k6032.sys
LoadOrderGroup  = NDIS

;-------------------------------------------------------------------------------
; Common base for all drivers for Eventlog and TextModeFlags
;

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

[winvista.AddEventLog.reg]
HKR, , TypesSupported,   0x00010001, 7

;-------------------------------------------------------------------------------
; DestinationDirs
;
[DestinationDirs]
DefaultDestDir                = 11
winvista.CopyFiles            = 12

[SourceDisksNames]
1 = %DISKNAME%,,,

[SourceDisksFiles]
e1k6032.sys  = 1,, ; on distribution disk 1

;-----------------------------------------------------------------------------

[Strings]

;Non-Localizable
;-------------------------------------------------------------------------------
EventLogMessageDllPath_6032     = "%SystemRoot%\System32\netevent.dll;%SystemRoot%\System32\drivers\e1k6032.sys"

;-------------------------------------------------------------------------------
; Localizable Strings
AnsLoaded                       = "ANS Loaded"
AutoDetect                      = "Auto Detect"
AutoNegotiation                 = "Auto Negotiation"

SpeedDuplex                     = "Link 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               = "100 Mbps Full Duplex"
1000Mb_Full_Duplex              = "1.0 Gbps Full Duplex"

IPChksumOffv4                   = "IPv4 Checksum Offload"
IPChksumOffv6                   = "IPv6 Checksum Offload"

TCPChksumOffv4                  = "TCP Checksum Offload (IPv4)"
UDPChksumOffv4                  = "UDP Checksum Offload (IPv4)"

TCPChksumOffv6                  = "TCP Checksum Offload (IPv6)"
UDPChksumOffv6                  = "UDP Checksum Offload (IPv6)"

LsoV2IPv4                       = "Large Send Offload (IPv4)"
LsoV2IPv6                       = "Large Send Offload (IPv6)"
ChksumOffTxRx                   = "Rx & Tx Enabled"
ChksumOffTx                     = "Tx Enabled"
ChksumOffRx                     = "Rx Enabled"

FlowControl                     = "Flow Control"
FlowControl_TxOnly              = "Tx Enabled"
FlowControl_RxOnly              = "Rx Enabled"
FlowControl_Full                = "Rx & Tx Enabled"

PriorityVlanDisabled            = "Priority & VLAN Disabled"
PriorityEnabled                 = "Priority Enabled"
VlanEnabled                     = "VLAN Enabled"
PriorityVlanEnabled             = "Priority & VLAN Enabled"

TransmitBuffers                 = "Transmit Buffers"
ReceiveBuffers                  = "Receive Buffers"
NumCoalesceBuffers              = "Coalesce Buffers"
PriorityVLANTag                 = "Priority & VLAN"
RSS                             = "Receive Side Scaling"
NumRssQueues                    = "Receive Side Scaling Queues"
1queue                          = "1 Queue"
2queues                         = "2 Queues"

On                              = "On"
Off                             = "Off"
Enabled                         = "Enabled"
Disabled                        = "Disabled"
Bytes4088                       = "4088 Bytes"
Bytes9014                       = "9014 Bytes"

LAA                             = "Locally Administered Address"
JumboPacket                     = "Jumbo Packet"

AdaptiveIFS                     = "Adaptive Inter-Frame Spacing"

Enable_PME                      = "Enable PME"
No_Action                       = "No Action"
HardwareDefault                 = "Hardware Default"
WakeOnSettings                  = "Wake on Settings"
WakeOnDirectedPacket            = "Wake on Directed Packet"
WakeOnMagicPacket               = "Wake on Magic Packet"
WakeOnMagicAndDirectedPackets   = "Wake on Magic & Directed"
OSControlled                    = "OS Controlled"
WakeOnLinkSettings              = "Wake on Link Settings"
Forced                          = "Forced"
WakeOnLAA                       = "Wake on LAA"
WakeOnArp                       = "Wake on ARP"
WakeOnNBT                       = "Wake on NBT Query"
LogLinkState                    = "Log Link State Event"
SmartPowerDown                  = "Smart Power Down"
InterruptThrottleRate           = "Interrupt Moderation Rate"
Adaptive                        = "Adaptive"
Extreme                         = "Extreme"
Minimal                         = "Minimal"
High                            = "High"
Medium                          = "Medium"
Low                             = "Low"
GigabitMasterMode               = "Force Master Mode"
GigabitSlaveMode                = "Force Slave Mode"
MasterSlaveMode                 = "Gigabit Master Slave Mode"
WaitAutoNegComplete             = "Wait for Link"


Intel                           = "Intel"
Microsoft                       = "Microsoft"
e1kExpress.Service.DispName     = "Intel(R) PRO/1000 PCI Express Network Connection Driver K"
DISKNAME                        = "Intel(R) PRO/1000 Driver Disk"

;; Brandnames.str
;------------------------------------------------------------------------------
E10DENC.DeviceDesc              = "Intel(R) 82567LM-3 Gigabit Network Connection"
E10DFNC.DeviceDesc              = "Intel(R) 82567LF-3 Gigabit Network Connection"

;---------------------------------------------------------------------------------------------------
;---------------------------------------------------------------------------------------------------
;---------------------------------------------------------------------------------------------------
;---------------------------------------------------------------------------------------------------
;---------------------------------------------------------------------------------------------------

