Content-type: text/html
/dev/e1000g
The e1000g Gigabit Ethernet driver is a multi-threaded, loadable, clonable, GLD-based STREAMS driver supporting the Data Link Provider Interface, dlpi(7P), over Intel PRO/1000 family of Gigabit controllers. This driver supports multiple Intel Gigabit controllers installed within the system. The e1000g driver provides basic support including chip initialization, frame transmit and receive, multicast support, and error recovery and reporting.
The cloning, character-special device /dev/e1000g is used to access all Intel Gigabit devices installed within the system.
The e1000g driver is managed by the dladm(1M) command line utility, which allows VLANs to be defined on top of e1000g instances and for e1000g instances to be aggregated. See dladm(1M) for more details.
You must send an explicit DL_ATTACH_REQ message to associate the opened stream with a particular device (PPA). The PPA ID is interpreted as an unsigned integer data type and indicates the corresponding device instance (unit) number. The driver returns an error (DL_ERROR_ACK) if the PPA field value does not correspond to a valid device instance number.
The values returned by the driver in the DL_INFO_ACK primitive in response to the DL_INFO_REQ are as follows:
The e1000g driver does not support the use of shared RAM on the board.
To configure the e1000g driver:
The following e1000g.conf configuration options are supported:
AutoNegAdvertised
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 Setting| N/A | N/A | 1000F | N/A | 100F | 100H | 10F | 10H
The adapter only auto-negotiates to a speed that is advertised. For example: AutoNegAdvertised = 4 causes an adapter to only advertise auto-negotiation at 100 Mbps, full duplex. No other link speeds are accepted or given during auto-negotiation. AutoNegAdvertised=47 advertises all speeds available, This is the same as using the default setting of 0.
0-255
0
ForceSpeedDuplex
If you set ForceSpeedDuplex=7,4, the e1000g0 is set to auto-negotiate and e1000g1 is set to 100 Mbps, full duplex. Note that fiber optic ethernet adapters ignore this setting.
Allowed values are:
1
2
3
4
7
MaxFrameSize
For an Intel PRO/1000 adapter that is later than 82571, (including 82571), the maximum MTU accepted by the MAC is 9216. For others, the maximum MTU accepted by the MAC is 16128. Use ifconfig(1M) to configure jumbo frames. Use ifconfig with the adapter instance and the mtu argument (ifconfig e1000g0 mtu 9216) to configure adapter e1000g0 for the maximum allowable jumbo frame size.
Allowed values are:
0
1
2
3
FlowControl
Allowed values are:
0
1
2
3
4
TbiCompatibilityEnable
Allowed values are:
0
1
SetMasterSlave
Allowed values are:
0
1
2
3
By default, the following configuration options are not displayed in the e1000g.conf file. Although they are configurable, you should not change these options:
NumRxDescriptors
80-4096
1024
NumTxDescriptors
80-4096
1024
NumRxFreeList
60-4096
1024
MaxNumReceivePackets
CPU utilization can be lowered through more efficient interrupt management. If this value is increased, the time needed by the CPU to process the individual interrupts increases, thereby nullifying any performance gains realized by handling less interrupts.
0-1024
32
TxInterruptDelay
0-65535
300
Note: The configuration options in e1000g.conf are limited to one value per interface.
In addition to the e1000g.conf file, you can also use the ndd(1M) command to configure the e1000g driver.
To view supported ndd parameters, do the following step:
# ndd -get /dev/e1000g0 ?
Using ndd(1M), you can set the link speed/duplex using the advertised capability parameters supported by the e1000g device. Each parameter contains a boolean value that determines if the device advertises that mode of operation. The adv_autoneg_cap parameter controls auto-negotiation. When adv_autoneg_cap is set to 1, auto-negotiation is performed and the link speed/duplex is auto-negotiated to the mode determined by the first non-zero parameter in priority order as listed below:
adv_1000fdx_cap 1000Mbps full duplex adv_100fdx_cap 100Mpbs full duplex adv_100hdx_cap 100Mpbs half duplex adv_10fdx_cap 10Mpbs full duplex adv_10hdx_cap 10Mpbs half duplex
When adv_autoneg_cap is set to 0, the link speed/duplex is forced to the mode specified by force_speed_duplex. The valid values of force_speed_duplex and the corresponding modes are:
1 10Mpbs half duplex 2 10Mpbs full duplex 3 100Mpbs half duplex 4 100Mpbs full duplex
Note: Forced 1000Mbps full duplex is not supported.
dev/e1000g
/kernel/drv/e1000g.conf
/kernel/drv/sparcv9/e1000g
/kernel/drv/e1000g
/kernel/drv/amd64/e1000g
See attributes(5) for descriptions of the following attributes:
|
dladm(1M), ifconfig(1M), kstat(1M), ndd(1M), ping(1M), attributes(5), dlpi(7P)
Intel PRO/1000 Gigabit Adapter Driver Installation Notes for Solaris
Writing Device Drivers
STREAMS Programming Guide
Network Interfaces Guide